googleapis / googleapis/google-cloud-cpp

bug: Fix build and test failures in unified_credentials_integration_test

未关闭
#15,546 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
priority: p3 type: cleanup
主要语言
C++
星标
659
派生
462
平均合并
1 天 2 小时
30 天内合并 PR
89

描述

The `unified_credentials_integration_test` is currently experiencing multiple failures on the kokoro macOS CI build.

- Some tests within `google/cloud/storage/tests/unified_credentials_integration_test.cc` have been commented out as they were causing build failures.
```
[24,691 / 25,359] Linking google/cloud/storage/tests/unified_credentials_integration_test-grpc-metadata; 5s remote-cache, darwin-sandbox ... (4 actions, 1 running)
ERROR: /Volumes/BuildData/tmpfs/src/github/google-cloud-cpp/google/cloud/storage/tests/BUILD.bazel:29:9: Linking google/cloud/storage/tests/unified_credentials_integration_test-grpc-metadata failed: (Exit 1): cc_wrapper.sh failed: error executing CppLink command (from target //google/cloud/storage/tests:unified_credentials_integration_test-grpc-metadata)
(cd /private/var/tmp/_bazel_kbuilder/958e32d54e02d3b435828e68d1d5184e/sandbox/darwin-sandbox/13859/execroot/_main && \
exec env - \
GOOGLE_APPLICATION_CREDENTIALS=/tmpfs/src/gfile/kokoro-run-key.json \
PATH=/Users/kbuilder/Library/Caches/bazelisk/downloads/sha256/3b007e7ce2281408b99dbba11b35d2ae0191de1330fae49dc632077e93edf78e/bin:/Volumes/BuildData/tmpfs/src/github/google-cloud-cpp/ci/lib:/Users/kbuilder/.rvm/gems/ruby-2.7.8/bin:/Users/kbuilder/.rvm/gems/ruby-2.7.8@global/bin:/Users/kbuilder/.rvm/rubies/ruby-2.7.8/bin:/Users/kbuilder/.rvm/gems/ruby-2.7.8/bin:/Users/kbuilder/.rvm/gems/ruby-2.7.8@global/bin:/Users/kbuilder/.rvm/rubies/ruby-2.7.8/bin:/Users/kbuilder/.pyenv/shims:/Users/kbuilder/.pyenv/bin:/Users/kbuilder/.pyenv/bin:/Users/kbuilder/google-cloud-sdk/bin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Library/Apple/usr/bin:/usr/local/share/dotnet:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/usr/local/Cellar/php/8.3.11/bin:/Users/kbuilder/.rvm/bin:/Users/kbuilder/.rvm/bin:/Users/kbuilder/.rvm/bin:/Users/kbuilder/.rvm/bin \
PWD=/proc/self/cwd \
ZERO_AR_DATE=1 \
external/rules_cc~~cc_configure_extension~local_config_cc/cc_wrapper.sh @bazel-out/darwin_x86_64-fastbuild/bin/google/cloud/storage/tests/unified_credentials_integration_test-grpc-metadata-2.params)
# Configuration: 748c615facb29e47b965c37b19ec6619f0e52db2dd7eb8c6263f4829aca48340
# Execution platform: @@platforms//host:host

Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging
ld: warning: ignoring duplicate libraries: '-lm', '-lpthread'
Undefined symbols for architecture x86_64:
"_OPENSSL_sk_pop_free", referenced from:
google::cloud::storage::v2_42::(anonymous namespace)::UnifiedCredentialsIntegrationTest::ValidCAStoreFromSslCtxCallbackOptions()::'lambda'(void*, void*, void*)::operator()(void*, void*, void*) const::X509InfoPtrCleanup::operator()(stack_st_X509_INFO*) const in unified_credentials_integration_test.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
```

I suspect that the boringssl version is incompatible to run this test.

- When the test above has been disabled by commenting out, the other tests run, but they fail the tests.
- Due to these issues, the entire `//google/cloud/storage/tests:unified_credentials_integration_test-grpc-metadata` test target has been disabled in the `ci/kokoro/macos/builds/bazel.sh` script to stabilize the CI.

This issue tracks the work to:
1. Investigate the root cause of the build and runtime failures.
2. Fix the underlying issues.
3. Re-enable the commented-out tests within the source file.
4. Re-enable the test target in the kokoro CI build script.

贡献指南

打开贡献指南

调研方向

从 google/cloud/storage/tests/unified_credentials_integration_test.cc 和 ci/kokoro/macos/builds/bazel.sh 开始,然后调查 macOS 上 unified_credentials_integration_test-grpc-metadata 目标报告的链接器和运行时失败。只有在解决构建和测试失败后,才能重新启用被注释掉的测试和 CI 目标。

由索引模型根据 Issue 内容生成。

评估

技术栈
cpp, macos
领域
build-system, ci-cd, testing-qa
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。