googleapis / googleapis/google-cloud-cpp
bug: Fix build and test failures in unified_credentials_integration_test
- 主要语言
- 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