googleapis / googleapis/google-cloud-cpp

bug: Fix build and test failures in unified_credentials_integration_test

Đang mở
#15,546 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
priority: p3 type: cleanup
Ngôn ngữ chính
C++
Star
659
Fork
462
Merge trung bình
1 ngày 2 giờ
Pull request đã merge (30 ngày)
89

Mô tả

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.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu với google/cloud/storage/tests/unified_credentials_integration_test.cc và ci/kokoro/macos/builds/bazel.sh, sau đó điều tra các lỗi linker và runtime đã được báo cáo đối với target unified_credentials_integration_test-grpc-metadata trên macOS. Chỉ bật lại các test đã bị comment và target CI sau khi các lỗi build và test được giải quyết.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
cpp, macos
Lĩnh vực
build-system, ci-cd, testing-qa
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.