Showing build.log
Warning: Permanently added 'localhost' (ED25519) to the list of known hosts.
Warning: Permanently added 'localhost' (ED25519) to the list of known hosts.
[21:30:52 PST] Transferring environment variable script to build VM
[21:30:53 PST] Transferring kokoro_log_reader.py to build VM
[21:30:54 PST] Transferring source code to build VM
[21:30:58 PST] Executing build script on build VM
[ID: 8296260] Executing command via SSH:
export KOKORO_BUILD_NUMBER="1290"
export KOKORO_JOB_NAME="cloud-devrel/client-libraries/python/googleapis/python-pubsub/continuous/prerelease-deps"
source /tmpfs/kokoro-env_vars.sh; cd /tmpfs/src/ ; chmod 755 github/python-pubsub/.kokoro/trampoline.sh ; PYTHON_3_VERSION="$(pyenv which python3 2> /dev/null || which python3)" ; PYTHON_2_VERSION="$(pyenv which python2 2> /dev/null || which python2)" ; if "$PYTHON_3_VERSION" -c "import psutil" ; then KOKORO_PYTHON_COMMAND="$PYTHON_3_VERSION" ; else KOKORO_PYTHON_COMMAND="$PYTHON_2_VERSION" ; fi > /dev/null 2>&1 ; echo "export KOKORO_PYTHON_COMMAND="$KOKORO_PYTHON_COMMAND"" > "$HOME/.kokoro_python_vars" ; nohup bash -c "( rm -f /tmpfs/kokoro_build_exit_code ; github/python-pubsub/.kokoro/trampoline.sh ; echo \${PIPESTATUS[0]} > /tmpfs/kokoro_build_exit_code ) > /tmpfs/kokoro_build.log 2>&1" > /dev/null 2>&1 & echo $! > /tmpfs/kokoro_build.pid ; source "$HOME/.kokoro_python_vars" ; "$KOKORO_PYTHON_COMMAND" /tmpfs/kokoro_log_reader.py /tmpfs/kokoro_build.log /tmpfs/kokoro_build_exit_code /tmpfs/kokoro_build.pid /tmpfs/kokoro_log_reader.pid --start_byte 0
2025-02-11 21:30:59 Creating folder on disk for secrets: /tmpfs/src/gfile/secret_manager
Activated service account credentials for: [kokoro-trampoline@cloud-devrel-kokoro-resources.iam.gserviceaccount.com]
WARNING: Your config file at [/home/kbuilder/.docker/config.json] contains these credential helper entries:
{
"credHelpers": {
"gcr.io": "gcr",
"us.gcr.io": "gcr",
"asia.gcr.io": "gcr",
"staging-k8s.gcr.io": "gcr",
"eu.gcr.io": "gcr"
}
}
These will be overwritten.
Docker configuration file updated.
Using default tag: latest
latest: Pulling from cloud-devrel-kokoro-resources/python-multi
de44b265507a: Already exists
2583c1db7226: Pulling fs layer
d3287719e453: Pulling fs layer
95e6b5c883da: Pulling fs layer
d0ac16568927: Pulling fs layer
f5fc6ed1ebb6: Pulling fs layer
a97f52a0625a: Pulling fs layer
5fbb8220160c: Pulling fs layer
b4d532998a9a: Pulling fs layer
56ee6cc1121a: Pulling fs layer
59319b4305d4: Pulling fs layer
87f17e21f156: Pulling fs layer
1bd49b1e2328: Pulling fs layer
be9f8704c19b: Pulling fs layer
db8a9bac1f0b: Pulling fs layer
8eac4c481059: Pulling fs layer
5f1d73e32389: Pulling fs layer
9d2ae507be89: Pulling fs layer
97fa85794512: Pulling fs layer
e902b562c117: Pulling fs layer
3e82657bedc1: Pulling fs layer
946b68838e6d: Pulling fs layer
6cb5cca0b22f: Pulling fs layer
a80607117034: Pulling fs layer
b39d06b7d363: Pulling fs layer
f5fc6ed1ebb6: Waiting
a97f52a0625a: Waiting
5fbb8220160c: Waiting
b4d532998a9a: Waiting
56ee6cc1121a: Waiting
59319b4305d4: Waiting
87f17e21f156: Waiting
e902b562c117: Waiting
1bd49b1e2328: Waiting
be9f8704c19b: Waiting
3e82657bedc1: Waiting
db8a9bac1f0b: Waiting
946b68838e6d: Waiting
6cb5cca0b22f: Waiting
8eac4c481059: Waiting
5f1d73e32389: Waiting
a80607117034: Waiting
b39d06b7d363: Waiting
9d2ae507be89: Waiting
97fa85794512: Waiting
d0ac16568927: Waiting
95e6b5c883da: Download complete
d3287719e453: Verifying Checksum
d3287719e453: Download complete
d0ac16568927: Verifying Checksum
d0ac16568927: Download complete
f5fc6ed1ebb6: Verifying Checksum
f5fc6ed1ebb6: Download complete
5fbb8220160c: Verifying Checksum
5fbb8220160c: Download complete
a97f52a0625a: Verifying Checksum
a97f52a0625a: Download complete
56ee6cc1121a: Verifying Checksum
56ee6cc1121a: Download complete
2583c1db7226: Verifying Checksum
2583c1db7226: Download complete
59319b4305d4: Verifying Checksum
59319b4305d4: Download complete
87f17e21f156: Download complete
1bd49b1e2328: Verifying Checksum
1bd49b1e2328: Download complete
be9f8704c19b: Verifying Checksum
be9f8704c19b: Download complete
db8a9bac1f0b: Verifying Checksum
db8a9bac1f0b: Download complete
5f1d73e32389: Verifying Checksum
5f1d73e32389: Download complete
8eac4c481059: Verifying Checksum
8eac4c481059: Download complete
9d2ae507be89: Verifying Checksum
9d2ae507be89: Download complete
e902b562c117: Verifying Checksum
e902b562c117: Download complete
97fa85794512: Verifying Checksum
97fa85794512: Download complete
3e82657bedc1: Verifying Checksum
3e82657bedc1: Download complete
946b68838e6d: Verifying Checksum
946b68838e6d: Download complete
6cb5cca0b22f: Verifying Checksum
6cb5cca0b22f: Download complete
a80607117034: Verifying Checksum
a80607117034: Download complete
b39d06b7d363: Verifying Checksum
b39d06b7d363: Download complete
b4d532998a9a: Verifying Checksum
b4d532998a9a: Download complete
2583c1db7226: Pull complete
d3287719e453: Pull complete
95e6b5c883da: Pull complete
d0ac16568927: Pull complete
f5fc6ed1ebb6: Pull complete
a97f52a0625a: Pull complete
5fbb8220160c: Pull complete
b4d532998a9a: Pull complete
56ee6cc1121a: Pull complete
59319b4305d4: Pull complete
87f17e21f156: Pull complete
1bd49b1e2328: Pull complete
be9f8704c19b: Pull complete
db8a9bac1f0b: Pull complete
8eac4c481059: Pull complete
5f1d73e32389: Pull complete
9d2ae507be89: Pull complete
97fa85794512: Pull complete
e902b562c117: Pull complete
3e82657bedc1: Pull complete
946b68838e6d: Pull complete
6cb5cca0b22f: Pull complete
a80607117034: Pull complete
b39d06b7d363: Pull complete
Digest: sha256:2c682ebc5bccdcbb2b7a26363e92a255987f68c78b7e05d779149568b603fb20
Status: Downloaded newer image for gcr.io/cloud-devrel-kokoro-resources/python-multi:latest
gcr.io/cloud-devrel-kokoro-resources/python-multi:latest
Executing: docker run --rm --interactive --network=host --privileged --volume=/var/run/docker.sock:/var/run/docker.sock --workdir=/tmpfs/src --entrypoint=github/python-pubsub/.kokoro/build.sh --env-file=/tmpfs/tmp/tmp4ly57pjk/envfile --volume=/tmpfs:/tmpfs gcr.io/cloud-devrel-kokoro-resources/python-multi
KOKORO_KEYSTORE_DIR=/tmpfs/src/keystore
KOKORO_GITHUB_COMMIT_URL=https://github.com/googleapis/python-pubsub/commit/820f986104ca39fd0c92ba6816319e939be1ed63
KOKORO_JOB_NAME=cloud-devrel/client-libraries/python/googleapis/python-pubsub/continuous/prerelease-deps
KOKORO_GIT_COMMIT=820f986104ca39fd0c92ba6816319e939be1ed63
KOKORO_JOB_CLUSTER=GCP_UBUNTU
KOKORO_BLAZE_DIR=/tmpfs/src/objfs
KOKORO_ROOT=/tmpfs
KOKORO_JOB_TYPE=CONTINUOUS_INTEGRATION
KOKORO_ROOT_DIR=/tmpfs/
KOKORO_BUILD_NUMBER=1290
KOKORO_JOB_POOL=yoshi-ubuntu
KOKORO_GITHUB_COMMIT=820f986104ca39fd0c92ba6816319e939be1ed63
KOKORO_BUILD_INITIATOR=kokoro
KOKORO_ARTIFACTS_DIR=/tmpfs/src
KOKORO_BUILD_ID=8073c499-48ab-4858-b3d5-22cf8cbace24
KOKORO_GFILE_DIR=/tmpfs/src/gfile
KOKORO_BUILD_CONFIG_DIR=
KOKORO_POSIX_ROOT=/tmpfs
KOKORO_BUILD_ARTIFACTS_SUBDIR=prod/cloud-devrel/client-libraries/python/googleapis/python-pubsub/continuous/prerelease-deps/1290/20250211-213013
nox > Running session prerelease_deps(protobuf_implementation='python')
nox > Creating virtual environment (virtualenv) using python3.13 in .nox/prerelease_deps-protobuf_implementation-python
nox > python -m pip install -e '.[all, tests, tracing]'
nox > python -m pip install mock asyncmock pytest pytest-cov pytest-asyncio
nox > python -m pip install mock pytest google-cloud-testutils psutil flaky
nox > python -m pip install google-api-core google-auth proto-plus protobuf grpc-google-iam-v1 grpcio grpcio-status
nox > python -m pip install --pre --no-deps --upgrade protobuf
nox > python -m pip install --pre --no-deps --upgrade six
nox > python -m pip install --pre --no-deps --upgrade grpc-google-iam-v1
nox > python -m pip install --pre --no-deps --upgrade googleapis-common-protos
nox > python -m pip install --pre --no-deps --upgrade grpcio
nox > python -m pip install --pre --no-deps --upgrade grpcio-status
nox > python -m pip install --pre --no-deps --upgrade google-api-core
nox > python -m pip install --pre --no-deps --upgrade google-auth
nox > python -m pip install --pre --no-deps --upgrade proto-plus
nox > python -m pip install --pre --no-deps --upgrade google-cloud-testutils
nox > python -m pip install --pre --no-deps --upgrade click
nox > python -m pip install requests
nox > python -c 'import google.protobuf; print(google.protobuf.__version__)'
6.30.0rc1
nox > python -c 'import grpc; print(grpc.__version__)'
1.70.0
nox > python -c 'import google.auth; print(google.auth.__version__)'
2.38.0
nox > py.test tests/unit
/tmpfs/src/github/python-pubsub/.nox/prerelease_deps-protobuf_implementation-python/lib/python3.13/site-packages/pytest_asyncio/plugin.py:207: PytestDeprecationWarning: The configuration option "asyncio_default_fixture_loop_scope" is unset.
The event loop scope for asynchronous fixtures will default to the fixture caching scope. Future versions of pytest-asyncio will default the loop scope for asynchronous fixtures to function scope. Set the default fixture loop scope explicitly in order to avoid unexpected behavior in the future. Valid fixture loop scopes are: "function", "class", "module", "package", "session"
warnings.warn(PytestDeprecationWarning(_DEFAULT_FIXTURE_LOOP_SCOPE_UNSET))
============================= test session starts ==============================
platform linux -- Python 3.13.0, pytest-8.3.4, pluggy-1.5.0
rootdir: /tmpfs/src/github/python-pubsub
configfile: pytest.ini
plugins: asyncio-0.25.3, flaky-3.8.1, cov-6.0.0
asyncio: mode=Mode.STRICT, asyncio_default_fixture_loop_scope=None
collected 1726 items
tests/unit/gapic/pubsub_v1/test_publisher.py ........................... [ 1%]
........................................................................ [ 5%]
........................................................................ [ 9%]
........................................................................ [ 14%]
........................................................................ [ 18%]
........................................................ [ 21%]
tests/unit/gapic/pubsub_v1/test_schema_service.py ...................... [ 22%]
........................................................................ [ 26%]
........................................................................ [ 31%]
........................................................................ [ 35%]
........................................................................ [ 39%]
........................................................................ [ 43%]
...... [ 43%]
tests/unit/gapic/pubsub_v1/test_subscriber.py .......................... [ 45%]
........................................................................ [ 49%]
........................................................................ [ 53%]
........................................................................ [ 57%]
........................................................................ [ 62%]
........................................................................ [ 66%]
........................................................................ [ 70%]
........................................................................ [ 74%]
[ 74%]
tests/unit/pubsub_v1/publisher/batch/test_base.py . [ 74%]
tests/unit/pubsub_v1/publisher/batch/test_thread.py .................... [ 75%]
............. [ 76%]
tests/unit/pubsub_v1/publisher/sequencer/test_ordered_sequencer.py ..... [ 76%]
............ [ 77%]
tests/unit/pubsub_v1/publisher/sequencer/test_unordered_sequencer.py ... [ 77%]
...... [ 78%]
tests/unit/pubsub_v1/publisher/test_flow_controller.py ............ [ 78%]
tests/unit/pubsub_v1/publisher/test_futures_publisher.py .... [ 79%]
tests/unit/pubsub_v1/publisher/test_publish_message_wrapper.py ..... [ 79%]
tests/unit/pubsub_v1/publisher/test_publisher_client.py ................ [ 80%]
............................ [ 81%]
tests/unit/pubsub_v1/subscriber/test_dispatcher.py ..................... [ 83%]
................................... [ 85%]
tests/unit/pubsub_v1/subscriber/test_futures_subscriber.py ......... [ 85%]
tests/unit/pubsub_v1/subscriber/test_heartbeater.py ........ [ 86%]
tests/unit/pubsub_v1/subscriber/test_helper_threads.py ..... [ 86%]
tests/unit/pubsub_v1/subscriber/test_histogram.py ........ [ 86%]
tests/unit/pubsub_v1/subscriber/test_leaser.py .................. [ 87%]
tests/unit/pubsub_v1/subscriber/test_message.py ........................ [ 89%]
. [ 89%]
tests/unit/pubsub_v1/subscriber/test_messages_on_hold.py .......... [ 89%]
tests/unit/pubsub_v1/subscriber/test_scheduler.py ........ [ 90%]
tests/unit/pubsub_v1/subscriber/test_streaming_pull_manager.py ......... [ 90%]
........................................................................ [ 95%]
................................... [ 97%]
tests/unit/pubsub_v1/subscriber/test_subscribe_opentelemetry.py ........ [ 97%]
... [ 97%]
tests/unit/pubsub_v1/subscriber/test_subscriber_client.py .............. [ 98%]
........ [ 99%]
tests/unit/pubsub_v1/test_futures.py .............. [ 99%]
tests/unit/test_packaging.py . [ 99%]
tests/unit/test_pubsub.py . [100%]
===Flaky Test Report===
test_open_telemetry_publisher_options[True] passed 1 out of the required 1 times. Success!
test_open_telemetry_publisher_options[False] passed 1 out of the required 1 times. Success!
===End Flaky Test Report===
============================ 1726 passed in 24.50s =============================
E0000 00:00:1739338368.113303 364 init.cc:232] grpc_wait_for_shutdown_with_timeout() timed out.
nox > py.test --verbose --junitxml=system_3.13_sponge_log.xml tests/system.py
/tmpfs/src/github/python-pubsub/.nox/prerelease_deps-protobuf_implementation-python/lib/python3.13/site-packages/pytest_asyncio/plugin.py:207: PytestDeprecationWarning: The configuration option "asyncio_default_fixture_loop_scope" is unset.
The event loop scope for asynchronous fixtures will default to the fixture caching scope. Future versions of pytest-asyncio will default the loop scope for asynchronous fixtures to function scope. Set the default fixture loop scope explicitly in order to avoid unexpected behavior in the future. Valid fixture loop scopes are: "function", "class", "module", "package", "session"
warnings.warn(PytestDeprecationWarning(_DEFAULT_FIXTURE_LOOP_SCOPE_UNSET))
============================= test session starts ==============================
platform linux -- Python 3.13.0, pytest-8.3.4, pluggy-1.5.0 -- /tmpfs/src/github/python-pubsub/.nox/prerelease_deps-protobuf_implementation-python/bin/python
cachedir: .pytest_cache
rootdir: /tmpfs/src/github/python-pubsub
configfile: pytest.ini
plugins: asyncio-0.25.3, flaky-3.8.1, cov-6.0.0
asyncio: mode=Mode.STRICT, asyncio_default_fixture_loop_scope=None
collecting ... collected 80 items
tests/system.py::test_publish_messages[grpc] PASSED [ 1%]
tests/system.py::test_publish_messages[rest] PASSED [ 2%]
tests/system.py::test_publish_large_messages[grpc] PASSED [ 3%]
tests/system.py::test_publish_large_messages[rest] PASSED [ 5%]
tests/system.py::test_subscribe_to_messages[grpc-grpc] PASSED [ 6%]
tests/system.py::test_subscribe_to_messages[grpc-rest] PASSED [ 7%]
tests/system.py::test_subscribe_to_messages[rest-grpc] PASSED [ 8%]
tests/system.py::test_subscribe_to_messages[rest-rest] PASSED [ 10%]
tests/system.py::test_subscribe_to_messages_async_callbacks[grpc-grpc] PASSED [ 11%]
tests/system.py::test_subscribe_to_messages_async_callbacks[grpc-rest] PASSED [ 12%]
tests/system.py::test_subscribe_to_messages_async_callbacks[rest-grpc] PASSED [ 13%]
tests/system.py::test_subscribe_to_messages_async_callbacks[rest-rest] PASSED [ 15%]
tests/system.py::test_creating_subscriptions_with_non_default_settings[grpc-grpc] PASSED [ 16%]
tests/system.py::test_creating_subscriptions_with_non_default_settings[grpc-rest] PASSED [ 17%]
tests/system.py::test_creating_subscriptions_with_non_default_settings[rest-grpc] PASSED [ 18%]
tests/system.py::test_creating_subscriptions_with_non_default_settings[rest-rest] PASSED [ 20%]
tests/system.py::test_listing_project_topics[grpc] PASSED [ 21%]
tests/system.py::test_listing_project_topics[rest] PASSED [ 22%]
tests/system.py::test_listing_project_subscriptions[grpc-grpc] PASSED [ 23%]
tests/system.py::test_listing_project_subscriptions[grpc-rest] PASSED [ 25%]
tests/system.py::test_listing_project_subscriptions[rest-grpc] PASSED [ 26%]
tests/system.py::test_listing_project_subscriptions[rest-rest] PASSED [ 27%]
tests/system.py::test_listing_topic_subscriptions[grpc-grpc] PASSED [ 28%]
tests/system.py::test_listing_topic_subscriptions[grpc-rest] PASSED [ 30%]
tests/system.py::test_listing_topic_subscriptions[rest-grpc] PASSED [ 31%]
tests/system.py::test_listing_topic_subscriptions[rest-rest] PASSED [ 32%]
tests/system.py::test_managing_topic_iam_policy[grpc] PASSED [ 33%]
tests/system.py::test_managing_topic_iam_policy[rest] PASSED [ 35%]
tests/system.py::test_managing_subscription_iam_policy[grpc-grpc] PASSED [ 36%]
tests/system.py::test_managing_subscription_iam_policy[grpc-rest] PASSED [ 37%]
tests/system.py::test_managing_subscription_iam_policy[rest-grpc] PASSED [ 38%]
tests/system.py::test_managing_subscription_iam_policy[rest-rest] PASSED [ 40%]
tests/system.py::test_subscriber_not_leaking_open_sockets[grpc-grpc-grpc] PASSED [ 41%]
tests/system.py::test_subscriber_not_leaking_open_sockets[grpc-grpc-rest] PASSED [ 42%]
tests/system.py::test_subscriber_not_leaking_open_sockets[grpc-rest-grpc] PASSED [ 43%]
tests/system.py::test_subscriber_not_leaking_open_sockets[grpc-rest-rest] PASSED [ 45%]
tests/system.py::test_subscriber_not_leaking_open_sockets[rest-grpc-grpc] PASSED [ 46%]
tests/system.py::test_subscriber_not_leaking_open_sockets[rest-grpc-rest] PASSED [ 47%]
tests/system.py::test_subscriber_not_leaking_open_sockets[rest-rest-grpc] PASSED [ 48%]
tests/system.py::test_subscriber_not_leaking_open_sockets[rest-rest-rest] PASSED [ 50%]
tests/system.py::test_synchronous_pull_no_deadline_error_if_no_messages[grpc-grpc] PASSED [ 51%]
tests/system.py::test_synchronous_pull_no_deadline_error_if_no_messages[grpc-rest] PASSED [ 52%]
tests/system.py::test_synchronous_pull_no_deadline_error_if_no_messages[rest-grpc] PASSED [ 53%]
tests/system.py::test_synchronous_pull_no_deadline_error_if_no_messages[rest-rest] PASSED [ 55%]
tests/system.py::TestStreamingPull::test_streaming_pull_callback_error_propagation[grpc-grpc] PASSED [ 56%]
tests/system.py::TestStreamingPull::test_streaming_pull_callback_error_propagation[grpc-rest] PASSED [ 57%]
tests/system.py::TestStreamingPull::test_streaming_pull_callback_error_propagation[rest-grpc] PASSED [ 58%]
tests/system.py::TestStreamingPull::test_streaming_pull_callback_error_propagation[rest-rest] PASSED [ 60%]
tests/system.py::TestStreamingPull::test_streaming_pull_ack_deadline[grpc-grpc] PASSED [ 61%]
tests/system.py::TestStreamingPull::test_streaming_pull_ack_deadline[grpc-rest] PASSED [ 62%]
tests/system.py::TestStreamingPull::test_streaming_pull_ack_deadline[rest-grpc] PASSED [ 63%]
tests/system.py::TestStreamingPull::test_streaming_pull_ack_deadline[rest-rest] PASSED [ 65%]
tests/system.py::TestStreamingPull::test_streaming_pull_max_messages[grpc-grpc] PASSED [ 66%]
tests/system.py::TestStreamingPull::test_streaming_pull_max_messages[grpc-rest] PASSED [ 67%]
tests/system.py::TestStreamingPull::test_streaming_pull_max_messages[rest-grpc] PASSED [ 68%]
tests/system.py::TestStreamingPull::test_streaming_pull_max_messages[rest-rest] PASSED [ 70%]
tests/system.py::TestStreamingPull::test_streaming_pull_blocking_shutdown[grpc-grpc] PASSED [ 71%]
tests/system.py::TestStreamingPull::test_streaming_pull_blocking_shutdown[grpc-rest] PASSED [ 72%]
tests/system.py::TestStreamingPull::test_streaming_pull_blocking_shutdown[rest-grpc] PASSED [ 73%]
tests/system.py::TestStreamingPull::test_streaming_pull_blocking_shutdown[rest-rest] PASSED [ 75%]
tests/system.py::TestBasicRBAC::test_streaming_pull_subscriber_permissions_sufficient[grpc-grpc] PASSED [ 76%]
tests/system.py::TestBasicRBAC::test_streaming_pull_subscriber_permissions_sufficient[grpc-rest] PASSED [ 77%]
tests/system.py::TestBasicRBAC::test_streaming_pull_subscriber_permissions_sufficient[rest-grpc] PASSED [ 78%]
tests/system.py::TestBasicRBAC::test_streaming_pull_subscriber_permissions_sufficient[rest-rest] PASSED [ 80%]
tests/system.py::TestBasicRBAC::test_publisher_role_can_publish_messages[grpc-grpc] PASSED [ 81%]
tests/system.py::TestBasicRBAC::test_publisher_role_can_publish_messages[grpc-rest] PASSED [ 82%]
tests/system.py::TestBasicRBAC::test_publisher_role_can_publish_messages[rest-grpc] PASSED [ 83%]
tests/system.py::TestBasicRBAC::test_publisher_role_can_publish_messages[rest-rest] PASSED [ 85%]
tests/system.py::TestBasicRBAC::test_snapshot_seek_subscriber_permissions_sufficient[grpc-grpc] SKIPPED [ 86%]
tests/system.py::TestBasicRBAC::test_snapshot_seek_subscriber_permissions_sufficient[grpc-rest] SKIPPED [ 87%]
tests/system.py::TestBasicRBAC::test_snapshot_seek_subscriber_permissions_sufficient[rest-grpc] SKIPPED [ 88%]
tests/system.py::TestBasicRBAC::test_snapshot_seek_subscriber_permissions_sufficient[rest-rest] SKIPPED [ 90%]
tests/system.py::TestBasicRBAC::test_viewer_role_can_list_resources[grpc-grpc] PASSED [ 91%]
tests/system.py::TestBasicRBAC::test_viewer_role_can_list_resources[grpc-rest] PASSED [ 92%]
tests/system.py::TestBasicRBAC::test_viewer_role_can_list_resources[rest-grpc] PASSED [ 93%]
tests/system.py::TestBasicRBAC::test_viewer_role_can_list_resources[rest-rest] PASSED [ 95%]
tests/system.py::TestBasicRBAC::test_editor_role_can_create_resources[grpc-grpc] PASSED [ 96%]
tests/system.py::TestBasicRBAC::test_editor_role_can_create_resources[grpc-rest] PASSED [ 97%]
tests/system.py::TestBasicRBAC::test_editor_role_can_create_resources[rest-grpc] PASSED [ 98%]
tests/system.py::TestBasicRBAC::test_editor_role_can_create_resources[rest-rest] PASSED [100%]
- generated xml file: /tmpfs/src/github/python-pubsub/system_3.13_sponge_log.xml -
===Flaky Test Report===
test_streaming_pull_ack_deadline[grpc-grpc] passed 1 out of the required 1 times. Success!
test_streaming_pull_ack_deadline[grpc-rest] passed 1 out of the required 1 times. Success!
test_streaming_pull_ack_deadline[rest-grpc] passed 1 out of the required 1 times. Success!
test_streaming_pull_ack_deadline[rest-rest] passed 1 out of the required 1 times. Success!
test_streaming_pull_max_messages[grpc-grpc] passed 1 out of the required 1 times. Success!
test_streaming_pull_max_messages[grpc-rest] passed 1 out of the required 1 times. Success!
test_streaming_pull_max_messages[rest-grpc] passed 1 out of the required 1 times. Success!
test_streaming_pull_max_messages[rest-rest] passed 1 out of the required 1 times. Success!
test_streaming_pull_blocking_shutdown[grpc-grpc] passed 1 out of the required 1 times. Success!
test_streaming_pull_blocking_shutdown[grpc-rest] passed 1 out of the required 1 times. Success!
test_streaming_pull_blocking_shutdown[rest-grpc] passed 1 out of the required 1 times. Success!
test_streaming_pull_blocking_shutdown[rest-rest] failed (4 runs remaining out of 5).
502 PUT https://pubsub.googleapis.com/v1/projects/precise-truck-742/topics/t-1739339476161-streaming-pull-blocking-shutdown?%24alt=json%3Benum-encoding%3Dint:
Error 502 (Server Error)!!1
502. That’s an error.
The server encountered a temporary error and could not complete your request.
Please try again in 30 seconds. That’s all we know.
[, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ]
test_streaming_pull_blocking_shutdown[rest-rest] passed 1 out of the required 1 times. Success!
===End Flaky Test Report===
================== 76 passed, 4 skipped in 1286.61s (0:21:26) ==================
WARNING: All log messages before absl::InitializeLog() is called are written to STDERR
E0000 00:00:1739339657.289830 6777 init.cc:232] grpc_wait_for_shutdown_with_timeout() timed out.
nox > Session prerelease_deps(protobuf_implementation='python') was successful.
nox > Running session prerelease_deps(protobuf_implementation='upb')
nox > Creating virtual environment (virtualenv) using python3.13 in .nox/prerelease_deps-protobuf_implementation-upb
nox > python -m pip install -e '.[all, tests, tracing]'
nox > python -m pip install mock asyncmock pytest pytest-cov pytest-asyncio
nox > python -m pip install mock pytest google-cloud-testutils psutil flaky
nox > python -m pip install google-api-core google-auth proto-plus protobuf grpc-google-iam-v1 grpcio grpcio-status
nox > python -m pip install --pre --no-deps --upgrade protobuf
nox > python -m pip install --pre --no-deps --upgrade six
nox > python -m pip install --pre --no-deps --upgrade grpc-google-iam-v1
nox > python -m pip install --pre --no-deps --upgrade googleapis-common-protos
nox > python -m pip install --pre --no-deps --upgrade grpcio
nox > python -m pip install --pre --no-deps --upgrade grpcio-status
nox > python -m pip install --pre --no-deps --upgrade google-api-core
nox > python -m pip install --pre --no-deps --upgrade google-auth
nox > python -m pip install --pre --no-deps --upgrade proto-plus
nox > python -m pip install --pre --no-deps --upgrade google-cloud-testutils
nox > python -m pip install --pre --no-deps --upgrade click
nox > python -m pip install requests
nox > python -c 'import google.protobuf; print(google.protobuf.__version__)'
6.30.0rc1
nox > python -c 'import grpc; print(grpc.__version__)'
1.70.0
nox > python -c 'import google.auth; print(google.auth.__version__)'
2.38.0
nox > py.test tests/unit
/tmpfs/src/github/python-pubsub/.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/pytest_asyncio/plugin.py:207: PytestDeprecationWarning: The configuration option "asyncio_default_fixture_loop_scope" is unset.
The event loop scope for asynchronous fixtures will default to the fixture caching scope. Future versions of pytest-asyncio will default the loop scope for asynchronous fixtures to function scope. Set the default fixture loop scope explicitly in order to avoid unexpected behavior in the future. Valid fixture loop scopes are: "function", "class", "module", "package", "session"
warnings.warn(PytestDeprecationWarning(_DEFAULT_FIXTURE_LOOP_SCOPE_UNSET))
============================= test session starts ==============================
platform linux -- Python 3.13.0, pytest-8.3.4, pluggy-1.5.0
rootdir: /tmpfs/src/github/python-pubsub
configfile: pytest.ini
plugins: asyncio-0.25.3, flaky-3.8.1, cov-6.0.0
asyncio: mode=Mode.STRICT, asyncio_default_fixture_loop_scope=None
collected 1726 items
tests/unit/gapic/pubsub_v1/test_publisher.py ........................... [ 1%]
........................................................................ [ 5%]
........................................................................ [ 9%]
........................................................................ [ 14%]
........................................................................ [ 18%]
........................................................ [ 21%]
tests/unit/gapic/pubsub_v1/test_schema_service.py ...................... [ 22%]
........................................................................ [ 26%]
........................................................................ [ 31%]
........................................................................ [ 35%]
........................................................................ [ 39%]
........................................................................ [ 43%]
...... [ 43%]
tests/unit/gapic/pubsub_v1/test_subscriber.py .......................... [ 45%]
........................................................................ [ 49%]
........................................................................ [ 53%]
........................................................................ [ 57%]
........................................................................ [ 62%]
........................................................................ [ 66%]
........................................................................ [ 70%]
........................................................................ [ 74%]
[ 74%]
tests/unit/pubsub_v1/publisher/batch/test_base.py . [ 74%]
tests/unit/pubsub_v1/publisher/batch/test_thread.py .................... [ 75%]
............. [ 76%]
tests/unit/pubsub_v1/publisher/sequencer/test_ordered_sequencer.py ..... [ 76%]
............ [ 77%]
tests/unit/pubsub_v1/publisher/sequencer/test_unordered_sequencer.py ... [ 77%]
...... [ 78%]
tests/unit/pubsub_v1/publisher/test_flow_controller.py ............ [ 78%]
tests/unit/pubsub_v1/publisher/test_futures_publisher.py .... [ 79%]
tests/unit/pubsub_v1/publisher/test_publish_message_wrapper.py ..... [ 79%]
tests/unit/pubsub_v1/publisher/test_publisher_client.py ................ [ 80%]
............................ [ 81%]
tests/unit/pubsub_v1/subscriber/test_dispatcher.py ..................... [ 83%]
................................... [ 85%]
tests/unit/pubsub_v1/subscriber/test_futures_subscriber.py ......... [ 85%]
tests/unit/pubsub_v1/subscriber/test_heartbeater.py ........ [ 86%]
tests/unit/pubsub_v1/subscriber/test_helper_threads.py ..... [ 86%]
tests/unit/pubsub_v1/subscriber/test_histogram.py ........ [ 86%]
tests/unit/pubsub_v1/subscriber/test_leaser.py .................. [ 87%]
tests/unit/pubsub_v1/subscriber/test_message.py ........................ [ 89%]
. [ 89%]
tests/unit/pubsub_v1/subscriber/test_messages_on_hold.py .......... [ 89%]
tests/unit/pubsub_v1/subscriber/test_scheduler.py ........ [ 90%]
tests/unit/pubsub_v1/subscriber/test_streaming_pull_manager.py ......... [ 90%]
........................................................................ [ 95%]
................................... [ 97%]
tests/unit/pubsub_v1/subscriber/test_subscribe_opentelemetry.py ........ [ 97%]
... [ 97%]
tests/unit/pubsub_v1/subscriber/test_subscriber_client.py .............. [ 98%]
........ [ 99%]
tests/unit/pubsub_v1/test_futures.py .............. [ 99%]
tests/unit/test_packaging.py . [ 99%]
tests/unit/test_pubsub.py . [100%]
===Flaky Test Report===
test_open_telemetry_publisher_options[True] passed 1 out of the required 1 times. Success!
test_open_telemetry_publisher_options[False] passed 1 out of the required 1 times. Success!
===End Flaky Test Report===
============================ 1726 passed in 20.00s =============================
E0000 00:00:1739339705.780342 8682 init.cc:232] grpc_wait_for_shutdown_with_timeout() timed out.
nox > py.test --verbose --junitxml=system_3.13_sponge_log.xml tests/system.py
/tmpfs/src/github/python-pubsub/.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/pytest_asyncio/plugin.py:207: PytestDeprecationWarning: The configuration option "asyncio_default_fixture_loop_scope" is unset.
The event loop scope for asynchronous fixtures will default to the fixture caching scope. Future versions of pytest-asyncio will default the loop scope for asynchronous fixtures to function scope. Set the default fixture loop scope explicitly in order to avoid unexpected behavior in the future. Valid fixture loop scopes are: "function", "class", "module", "package", "session"
warnings.warn(PytestDeprecationWarning(_DEFAULT_FIXTURE_LOOP_SCOPE_UNSET))
============================= test session starts ==============================
platform linux -- Python 3.13.0, pytest-8.3.4, pluggy-1.5.0 -- /tmpfs/src/github/python-pubsub/.nox/prerelease_deps-protobuf_implementation-upb/bin/python
cachedir: .pytest_cache
rootdir: /tmpfs/src/github/python-pubsub
configfile: pytest.ini
plugins: asyncio-0.25.3, flaky-3.8.1, cov-6.0.0
asyncio: mode=Mode.STRICT, asyncio_default_fixture_loop_scope=None
collecting ... collected 80 items
tests/system.py::test_publish_messages[grpc] PASSED [ 1%]
tests/system.py::test_publish_messages[rest] PASSED [ 2%]
tests/system.py::test_publish_large_messages[grpc] PASSED [ 3%]
tests/system.py::test_publish_large_messages[rest] PASSED [ 5%]
tests/system.py::test_subscribe_to_messages[grpc-grpc] PASSED [ 6%]
tests/system.py::test_subscribe_to_messages[grpc-rest] PASSED [ 7%]
tests/system.py::test_subscribe_to_messages[rest-grpc] PASSED [ 8%]
tests/system.py::test_subscribe_to_messages[rest-rest] PASSED [ 10%]
tests/system.py::test_subscribe_to_messages_async_callbacks[grpc-grpc] PASSED [ 11%]
tests/system.py::test_subscribe_to_messages_async_callbacks[grpc-rest] PASSED [ 12%]
tests/system.py::test_subscribe_to_messages_async_callbacks[rest-grpc] PASSED [ 13%]
tests/system.py::test_subscribe_to_messages_async_callbacks[rest-rest] PASSED [ 15%]
tests/system.py::test_creating_subscriptions_with_non_default_settings[grpc-grpc] PASSED [ 16%]
tests/system.py::test_creating_subscriptions_with_non_default_settings[grpc-rest] PASSED [ 17%]
tests/system.py::test_creating_subscriptions_with_non_default_settings[rest-grpc] PASSED [ 18%]
tests/system.py::test_creating_subscriptions_with_non_default_settings[rest-rest] PASSED [ 20%]
tests/system.py::test_listing_project_topics[grpc] PASSED [ 21%]
tests/system.py::test_listing_project_topics[rest] PASSED [ 22%]
tests/system.py::test_listing_project_subscriptions[grpc-grpc] PASSED [ 23%]
tests/system.py::test_listing_project_subscriptions[grpc-rest] PASSED [ 25%]
tests/system.py::test_listing_project_subscriptions[rest-grpc] PASSED [ 26%]
tests/system.py::test_listing_project_subscriptions[rest-rest] PASSED [ 27%]
tests/system.py::test_listing_topic_subscriptions[grpc-grpc] PASSED [ 28%]
tests/system.py::test_listing_topic_subscriptions[grpc-rest] PASSED [ 30%]
tests/system.py::test_listing_topic_subscriptions[rest-grpc] PASSED [ 31%]
tests/system.py::test_listing_topic_subscriptions[rest-rest] PASSED [ 32%]
tests/system.py::test_managing_topic_iam_policy[grpc] FAILED [ 33%]
tests/system.py::test_managing_topic_iam_policy[rest] PASSED [ 35%]
tests/system.py::test_managing_subscription_iam_policy[grpc-grpc] PASSED [ 36%]
tests/system.py::test_managing_subscription_iam_policy[grpc-rest] FAILED [ 37%]
tests/system.py::test_managing_subscription_iam_policy[rest-grpc] PASSED [ 38%]
tests/system.py::test_managing_subscription_iam_policy[rest-rest] PASSED [ 40%]
tests/system.py::test_subscriber_not_leaking_open_sockets[grpc-grpc-grpc] PASSED [ 41%]
tests/system.py::test_subscriber_not_leaking_open_sockets[grpc-grpc-rest] PASSED [ 42%]
tests/system.py::test_subscriber_not_leaking_open_sockets[grpc-rest-grpc] PASSED [ 43%]
tests/system.py::test_subscriber_not_leaking_open_sockets[grpc-rest-rest] PASSED [ 45%]
tests/system.py::test_subscriber_not_leaking_open_sockets[rest-grpc-grpc] PASSED [ 46%]
tests/system.py::test_subscriber_not_leaking_open_sockets[rest-grpc-rest] PASSED [ 47%]
tests/system.py::test_subscriber_not_leaking_open_sockets[rest-rest-grpc] PASSED [ 48%]
tests/system.py::test_subscriber_not_leaking_open_sockets[rest-rest-rest] PASSED [ 50%]
tests/system.py::test_synchronous_pull_no_deadline_error_if_no_messages[grpc-grpc] PASSED [ 51%]
tests/system.py::test_synchronous_pull_no_deadline_error_if_no_messages[grpc-rest] PASSED [ 52%]
tests/system.py::test_synchronous_pull_no_deadline_error_if_no_messages[rest-grpc] PASSED [ 53%]
tests/system.py::test_synchronous_pull_no_deadline_error_if_no_messages[rest-rest] PASSED [ 55%]
tests/system.py::TestStreamingPull::test_streaming_pull_callback_error_propagation[grpc-grpc] PASSED [ 56%]
tests/system.py::TestStreamingPull::test_streaming_pull_callback_error_propagation[grpc-rest] PASSED [ 57%]
tests/system.py::TestStreamingPull::test_streaming_pull_callback_error_propagation[rest-grpc] PASSED [ 58%]
tests/system.py::TestStreamingPull::test_streaming_pull_callback_error_propagation[rest-rest] PASSED [ 60%]
tests/system.py::TestStreamingPull::test_streaming_pull_ack_deadline[grpc-grpc] PASSED [ 61%]
tests/system.py::TestStreamingPull::test_streaming_pull_ack_deadline[grpc-rest] PASSED [ 62%]
tests/system.py::TestStreamingPull::test_streaming_pull_ack_deadline[rest-grpc] PASSED [ 63%]
tests/system.py::TestStreamingPull::test_streaming_pull_ack_deadline[rest-rest] PASSED [ 65%]
tests/system.py::TestStreamingPull::test_streaming_pull_max_messages[grpc-grpc] PASSED [ 66%]
tests/system.py::TestStreamingPull::test_streaming_pull_max_messages[grpc-rest] PASSED [ 67%]
tests/system.py::TestStreamingPull::test_streaming_pull_max_messages[rest-grpc] PASSED [ 68%]
tests/system.py::TestStreamingPull::test_streaming_pull_max_messages[rest-rest] PASSED [ 70%]
tests/system.py::TestStreamingPull::test_streaming_pull_blocking_shutdown[grpc-grpc] PASSED [ 71%]
tests/system.py::TestStreamingPull::test_streaming_pull_blocking_shutdown[grpc-rest] PASSED [ 72%]
tests/system.py::TestStreamingPull::test_streaming_pull_blocking_shutdown[rest-grpc] PASSED [ 73%]
tests/system.py::TestStreamingPull::test_streaming_pull_blocking_shutdown[rest-rest] PASSED [ 75%]
tests/system.py::TestBasicRBAC::test_streaming_pull_subscriber_permissions_sufficient[grpc-grpc] PASSED [ 76%]
tests/system.py::TestBasicRBAC::test_streaming_pull_subscriber_permissions_sufficient[grpc-rest] PASSED [ 77%]
tests/system.py::TestBasicRBAC::test_streaming_pull_subscriber_permissions_sufficient[rest-grpc] PASSED [ 78%]
tests/system.py::TestBasicRBAC::test_streaming_pull_subscriber_permissions_sufficient[rest-rest] PASSED [ 80%]
tests/system.py::TestBasicRBAC::test_publisher_role_can_publish_messages[grpc-grpc] PASSED [ 81%]
tests/system.py::TestBasicRBAC::test_publisher_role_can_publish_messages[grpc-rest] PASSED [ 82%]
tests/system.py::TestBasicRBAC::test_publisher_role_can_publish_messages[rest-grpc] PASSED [ 83%]
tests/system.py::TestBasicRBAC::test_publisher_role_can_publish_messages[rest-rest] FAILED [ 85%]
tests/system.py::TestBasicRBAC::test_snapshot_seek_subscriber_permissions_sufficient[grpc-grpc] SKIPPED [ 86%]
tests/system.py::TestBasicRBAC::test_snapshot_seek_subscriber_permissions_sufficient[grpc-rest] SKIPPED [ 87%]
tests/system.py::TestBasicRBAC::test_snapshot_seek_subscriber_permissions_sufficient[rest-grpc] SKIPPED [ 88%]
tests/system.py::TestBasicRBAC::test_snapshot_seek_subscriber_permissions_sufficient[rest-rest] SKIPPED [ 90%]
tests/system.py::TestBasicRBAC::test_viewer_role_can_list_resources[grpc-grpc] PASSED [ 91%]
tests/system.py::TestBasicRBAC::test_viewer_role_can_list_resources[grpc-rest] PASSED [ 92%]
tests/system.py::TestBasicRBAC::test_viewer_role_can_list_resources[rest-grpc] PASSED [ 93%]
tests/system.py::TestBasicRBAC::test_viewer_role_can_list_resources[rest-rest] PASSED [ 95%]
tests/system.py::TestBasicRBAC::test_editor_role_can_create_resources[grpc-grpc] PASSED [ 96%]
tests/system.py::TestBasicRBAC::test_editor_role_can_create_resources[grpc-rest] PASSED [ 97%]
tests/system.py::TestBasicRBAC::test_editor_role_can_create_resources[rest-grpc] PASSED [ 98%]
tests/system.py::TestBasicRBAC::test_editor_role_can_create_resources[rest-rest] PASSED [100%]
=================================== FAILURES ===================================
_____________________ test_managing_topic_iam_policy[grpc] _____________________
args = (resource: "projects/precise-truck-742/topics/t-1739340127201-managing-topic-iam-policy"
,)
kwargs = {'metadata': [('x-goog-request-params', 'resource=projects/precise-truck-742/topics/t-1739340127201-managing-topic-iam-policy'), ('x-goog-api-client', 'gl-python/3.13.0 grpc/1.70.0 gax/2.24.1 gccl/2.28.0')]}
@functools.wraps(callable_)
def error_remapped_callable(*args, **kwargs):
try:
> return callable_(*args, **kwargs)
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/google/api_core/grpc_helpers.py:76:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/grpc/_channel.py:1181: in __call__
return _end_unary_response_blocking(state, call, False, None)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
state =
call =
with_call = False, deadline = None
def _end_unary_response_blocking(
state: _RPCState,
call: cygrpc.SegregatedCall,
with_call: bool,
deadline: Optional[float],
) -> Union[ResponseType, Tuple[ResponseType, grpc.Call]]:
if state.code is grpc.StatusCode.OK:
if with_call:
rendezvous = _MultiThreadedRendezvous(state, call, None, deadline)
return state.response, rendezvous
else:
return state.response
else:
> raise _InactiveRpcError(state) # pytype: disable=not-instantiable
E grpc._channel._InactiveRpcError: <_InactiveRpcError of RPC that terminated with:
E status = StatusCode.UNAVAILABLE
E details = "Visibility check was unavailable. Please retry the request and contact support if the problem persists"
E debug_error_string = "UNKNOWN:Error received from peer ipv4:142.250.107.95:443 {grpc_message:"Visibility check was unavailable. Please retry the request and contact support if the problem persists", grpc_status:14, created_time:"2025-02-12T06:02:15.053436411+00:00"}"
E >
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/grpc/_channel.py:1006: _InactiveRpcError
The above exception was the direct cause of the following exception:
topic_path_base = 'projects/precise-truck-742/topics/t-1739340127201'
cleanup = [(>, (), {'topic': 'projects/precise-truck-742/topics/t-1739340127201-managing-topic-iam-policy'})]
def test_managing_topic_iam_policy(topic_path_base, cleanup):
publisher = pubsub_v1.PublisherClient(transport="grpc")
topic_path = topic_path_base + "-managing-topic-iam-policy"
cleanup.append((publisher.delete_topic, (), {"topic": topic_path}))
# create a topic and customize its policy
publisher.create_topic(name=topic_path)
> topic_policy = publisher.get_iam_policy(request={"resource": topic_path})
tests/system.py:381:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
google/pubsub_v1/services/publisher/client.py:1940: in get_iam_policy
response = rpc(
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/google/api_core/gapic_v1/method.py:131: in __call__
return wrapped_func(*args, **kwargs)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
args = (resource: "projects/precise-truck-742/topics/t-1739340127201-managing-topic-iam-policy"
,)
kwargs = {'metadata': [('x-goog-request-params', 'resource=projects/precise-truck-742/topics/t-1739340127201-managing-topic-iam-policy'), ('x-goog-api-client', 'gl-python/3.13.0 grpc/1.70.0 gax/2.24.1 gccl/2.28.0')]}
@functools.wraps(callable_)
def error_remapped_callable(*args, **kwargs):
try:
return callable_(*args, **kwargs)
except grpc.RpcError as exc:
> raise exceptions.from_grpc_error(exc) from exc
E google.api_core.exceptions.ServiceUnavailable: 503 Visibility check was unavailable. Please retry the request and contact support if the problem persists
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/google/api_core/grpc_helpers.py:78: ServiceUnavailable
_______________ test_managing_subscription_iam_policy[grpc-rest] _______________
args = (resource: "projects/precise-truck-742/subscriptions/s-1739340150169-managing-subscription-iam-policy"
policy {
etag...domain:google.com"
}
bindings {
role: "roles/pubsub.viewer"
members: "group:cloud-logs@google.com"
}
}
,)
kwargs = {'metadata': [('x-goog-request-params', 'resource=projects/precise-truck-742/subscriptions/s-1739340150169-managing-subscription-iam-policy'), ('x-goog-api-client', 'gl-python/3.13.0 grpc/1.70.0 gax/2.24.1 gccl/2.28.0')]}
@functools.wraps(callable_)
def error_remapped_callable(*args, **kwargs):
try:
> return callable_(*args, **kwargs)
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/google/api_core/grpc_helpers.py:76:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/grpc/_channel.py:1181: in __call__
return _end_unary_response_blocking(state, call, False, None)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
state =
call =
with_call = False, deadline = None
def _end_unary_response_blocking(
state: _RPCState,
call: cygrpc.SegregatedCall,
with_call: bool,
deadline: Optional[float],
) -> Union[ResponseType, Tuple[ResponseType, grpc.Call]]:
if state.code is grpc.StatusCode.OK:
if with_call:
rendezvous = _MultiThreadedRendezvous(state, call, None, deadline)
return state.response, rendezvous
else:
return state.response
else:
> raise _InactiveRpcError(state) # pytype: disable=not-instantiable
E grpc._channel._InactiveRpcError: <_InactiveRpcError of RPC that terminated with:
E status = StatusCode.UNAVAILABLE
E details = "Visibility check was unavailable. Please retry the request and contact support if the problem persists"
E debug_error_string = "UNKNOWN:Error received from peer ipv4:142.250.99.95:443 {created_time:"2025-02-12T06:02:40.864750714+00:00", grpc_status:14, grpc_message:"Visibility check was unavailable. Please retry the request and contact support if the problem persists"}"
E >
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/grpc/_channel.py:1006: _InactiveRpcError
The above exception was the direct cause of the following exception:
publisher =
topic_path_base = 'projects/precise-truck-742/topics/t-1739340150167'
subscription_path_base = 'projects/precise-truck-742/subscriptions/s-1739340150169'
cleanup = [(>, ()...>>, (), {'subscription': 'projects/precise-truck-742/subscriptions/s-1739340150169-managing-subscription-iam-policy'})]
def test_managing_subscription_iam_policy(
publisher, topic_path_base, subscription_path_base, cleanup
):
subscriber = pubsub_v1.SubscriberClient(transport="grpc")
custom_str = "-managing-subscription-iam-policy"
topic_path = topic_path_base + custom_str
subscription_path = subscription_path_base + custom_str
# Make sure the topic and subscription get deleted.
cleanup.append((publisher.delete_topic, (), {"topic": topic_path}))
cleanup.append(
(subscriber.delete_subscription, (), {"subscription": subscription_path})
)
# create a topic and a subscription, customize the latter's policy
publisher.create_topic(name=topic_path)
subscriber.create_subscription(name=subscription_path, topic=topic_path)
sub_policy = subscriber.get_iam_policy(request={"resource": subscription_path})
sub_policy.bindings.add(role="roles/pubsub.editor", members=["domain:google.com"])
sub_policy.bindings.add(
role="roles/pubsub.viewer", members=["group:cloud-logs@google.com"]
)
> new_policy = subscriber.set_iam_policy(
request={"resource": subscription_path, "policy": sub_policy}
)
tests/system.py:426:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
google/pubsub_v1/services/subscriber/client.py:2743: in set_iam_policy
response = rpc(
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/google/api_core/gapic_v1/method.py:131: in __call__
return wrapped_func(*args, **kwargs)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
args = (resource: "projects/precise-truck-742/subscriptions/s-1739340150169-managing-subscription-iam-policy"
policy {
etag...domain:google.com"
}
bindings {
role: "roles/pubsub.viewer"
members: "group:cloud-logs@google.com"
}
}
,)
kwargs = {'metadata': [('x-goog-request-params', 'resource=projects/precise-truck-742/subscriptions/s-1739340150169-managing-subscription-iam-policy'), ('x-goog-api-client', 'gl-python/3.13.0 grpc/1.70.0 gax/2.24.1 gccl/2.28.0')]}
@functools.wraps(callable_)
def error_remapped_callable(*args, **kwargs):
try:
return callable_(*args, **kwargs)
except grpc.RpcError as exc:
> raise exceptions.from_grpc_error(exc) from exc
E google.api_core.exceptions.ServiceUnavailable: 503 Visibility check was unavailable. Please retry the request and contact support if the problem persists
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/google/api_core/grpc_helpers.py:78: ServiceUnavailable
______ TestBasicRBAC.test_publisher_role_can_publish_messages[rest-rest] _______
self =
publisher =
topic_path_base = 'projects/precise-truck-742/topics/t-1739340968754'
subscriber =
subscription_path_base = 'projects/precise-truck-742/subscriptions/s-1739340968756'
cleanup = [(>, ()... (), {'subscription': 'projects/precise-truck-742/subscriptions/s-1739340968756-publisher-role-can-publish-messages'})]
def test_publisher_role_can_publish_messages(
self, publisher, topic_path_base, subscriber, subscription_path_base, cleanup
):
custom_str = "-publisher-role-can-publish-messages"
topic_path = topic_path_base + custom_str
subscription_path = subscription_path_base + custom_str
# Make sure the topic and subscription get deleted.
cleanup.append((publisher.delete_topic, (), {"topic": topic_path}))
cleanup.append(
(subscriber.delete_subscription, (), {"subscription": subscription_path})
)
# Create a topic and subscribe to it.
> publisher.create_topic(name=topic_path)
tests/system.py:820:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
google/pubsub_v1/services/publisher/client.py:801: in create_topic
response = rpc(
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/google/api_core/gapic_v1/method.py:131: in __call__
return wrapped_func(*args, **kwargs)
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/google/api_core/retry/retry_unary.py:293: in retry_wrapped_func
return retry_target(
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/google/api_core/retry/retry_unary.py:153: in retry_target
_retry_error_helper(
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/google/api_core/retry/retry_base.py:212: in _retry_error_helper
raise final_exc from source_exc
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/google/api_core/retry/retry_unary.py:144: in retry_target
result = target()
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/google/api_core/timeout.py:130: in func_with_timeout
return func(*args, **kwargs)
.nox/prerelease_deps-protobuf_implementation-upb/lib/python3.13/site-packages/google/api_core/grpc_helpers.py:76: in error_remapped_callable
return callable_(*args, **kwargs)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = PublisherRestTransport._CreateTopic(_session=)
request = name: "projects/precise-truck-742/topics/t-1739340968754-publisher-role-can-publish-messages"
def __call__(
self,
request: pubsub.Topic,
*,
retry: OptionalRetry = gapic_v1.method.DEFAULT,
timeout: Optional[float] = None,
metadata: Sequence[Tuple[str, str]] = (),
) -> pubsub.Topic:
r"""Call the create topic method over HTTP.
Args:
request (~.pubsub.Topic):
The request object. A topic resource.
retry (google.api_core.retry.Retry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
sent along with the request as metadata.
Returns:
~.pubsub.Topic:
A topic resource.
"""
http_options = (
_BasePublisherRestTransport._BaseCreateTopic._get_http_options()
)
request, metadata = self._interceptor.pre_create_topic(request, metadata)
transcoded_request = (
_BasePublisherRestTransport._BaseCreateTopic._get_transcoded_request(
http_options, request
)
)
body = _BasePublisherRestTransport._BaseCreateTopic._get_request_body_json(
transcoded_request
)
# Jsonify the query params
query_params = (
_BasePublisherRestTransport._BaseCreateTopic._get_query_params_json(
transcoded_request
)
)
# Send the request
response = PublisherRestTransport._CreateTopic._get_response(
self._host,
metadata,
query_params,
self._session,
timeout,
transcoded_request,
body,
)
# In case of error, raise the appropriate core_exceptions.GoogleAPICallError exception
# subclass.
if response.status_code >= 400:
> raise core_exceptions.from_http_response(response)
E google.api_core.exceptions.BadGateway: 502 PUT https://pubsub.googleapis.com/v1/projects/precise-truck-742/topics/t-1739340968754-publisher-role-can-publish-messages?%24alt=json%3Benum-encoding%3Dint:
E
E
E
E Error 502 (Server Error)!!1
E
E
E
502. That’s an error.
E
The server encountered a temporary error and could not complete your request.
Please try again in 30 seconds. That’s all we know.
google/pubsub_v1/services/publisher/transports/rest.py:562: BadGateway
- generated xml file: /tmpfs/src/github/python-pubsub/system_3.13_sponge_log.xml -
===Flaky Test Report===
test_streaming_pull_ack_deadline[grpc-grpc] passed 1 out of the required 1 times. Success!
test_streaming_pull_ack_deadline[grpc-rest] passed 1 out of the required 1 times. Success!
test_streaming_pull_ack_deadline[rest-grpc] passed 1 out of the required 1 times. Success!
test_streaming_pull_ack_deadline[rest-rest] passed 1 out of the required 1 times. Success!
test_streaming_pull_max_messages[grpc-grpc] passed 1 out of the required 1 times. Success!
test_streaming_pull_max_messages[grpc-rest] passed 1 out of the required 1 times. Success!
test_streaming_pull_max_messages[rest-grpc] passed 1 out of the required 1 times. Success!
test_streaming_pull_max_messages[rest-rest] passed 1 out of the required 1 times. Success!
test_streaming_pull_blocking_shutdown[grpc-grpc] passed 1 out of the required 1 times. Success!
test_streaming_pull_blocking_shutdown[grpc-rest] passed 1 out of the required 1 times. Success!
test_streaming_pull_blocking_shutdown[rest-grpc] passed 1 out of the required 1 times. Success!
test_streaming_pull_blocking_shutdown[rest-rest] passed 1 out of the required 1 times. Success!
===End Flaky Test Report===
=========================== short test summary info ============================
FAILED tests/system.py::test_managing_topic_iam_policy[grpc] - google.api_cor...
FAILED tests/system.py::test_managing_subscription_iam_policy[grpc-rest] - go...
FAILED tests/system.py::TestBasicRBAC::test_publisher_role_can_publish_messages[rest-rest]
============= 3 failed, 73 passed, 4 skipped in 1344.39s (0:22:24) =============
WARNING: All log messages before absl::InitializeLog() is called are written to STDERR
E0000 00:00:1739341052.665548 15071 init.cc:232] grpc_wait_for_shutdown_with_timeout() timed out.
nox > Command py.test --verbose --junitxml=system_3.13_sponge_log.xml tests/system.py failed with exit code 1
nox > Session prerelease_deps(protobuf_implementation='upb') failed.
nox > Running session prerelease_deps(protobuf_implementation='cpp')
nox > Creating virtual environment (virtualenv) using python3.13 in .nox/prerelease_deps-protobuf_implementation-cpp
nox > Session prerelease_deps(protobuf_implementation='cpp') skipped: cpp implementation is not supported in python 3.11+.
nox > Ran multiple sessions:
nox > * prerelease_deps(protobuf_implementation='python'): success
nox > * prerelease_deps(protobuf_implementation='upb'): failed
nox > * prerelease_deps(protobuf_implementation='cpp'): skipped
[FlakyBot] Sending logs to Flaky Bot...
[FlakyBot] See https://github.com/googleapis/repo-automation-bots/tree/main/packages/flakybot.
[FlakyBot] Published system_3.13_sponge_log.xml (13688106246749467)!
[FlakyBot] Done!
cleanup
[ID: 8296260] Command finished after 2800 secs, exit value: 1
Warning: Permanently added 'localhost' (ED25519) to the list of known hosts.
[22:17:39 PST] Collecting build artifacts from build VM
Build script failed with exit code: 1