From 204c5a4023e68872c5eeeb6b9ebb505f75b1cb3e Mon Sep 17 00:00:00 2001 From: Bu Sun Kim Date: Thu, 21 Jan 2021 23:28:12 +0000 Subject: [PATCH 1/2] test: re-enable system tests --- .gitignore | 1 + .kokoro/build.sh | 16 +++++++++++++++- .kokoro/continuous/common.cfg | 2 +- .kokoro/presubmit/common.cfg | 2 +- synth.py | 6 +++--- system_tests/__init__.py | 0 system_tests/noxfile.py | 10 +++++----- system_tests/secrets.tar.enc | Bin 0 -> 10323 bytes system_tests/system_tests_async/__init__.py | 0 system_tests/system_tests_async/conftest.py | 3 ++- system_tests/system_tests_async/test_default.py | 5 ++--- .../app_engine_test_app/requirements.txt | 2 +- system_tests/system_tests_sync/secrets.tar.enc | Bin 10323 -> 0 bytes system_tests/system_tests_sync/test_grpc.py | 9 +-------- .../system_tests_sync/test_mtls_http.py | 5 ++++- 15 files changed, 36 insertions(+), 25 deletions(-) create mode 100644 system_tests/__init__.py create mode 100644 system_tests/secrets.tar.enc create mode 100644 system_tests/system_tests_async/__init__.py delete mode 100644 system_tests/system_tests_sync/secrets.tar.enc diff --git a/.gitignore b/.gitignore index f01e60ec0..1f0b7e3c7 100644 --- a/.gitignore +++ b/.gitignore @@ -30,6 +30,7 @@ scripts/local_test_setup tests/data/key.json tests/data/key.p12 tests/data/user-key.json +system_tests/data/ # PyCharm configuration: .idea diff --git a/.kokoro/build.sh b/.kokoro/build.sh index 8739d4072..1f96e21d7 100755 --- a/.kokoro/build.sh +++ b/.kokoro/build.sh @@ -31,7 +31,14 @@ env | grep KOKORO export GOOGLE_APPLICATION_CREDENTIALS=${KOKORO_GFILE_DIR}/service-account.json # Setup project id. -export PROJECT_ID=$(cat "${KOKORO_GFILE_DIR}/project-id.json") +export PROJECT_ID=$(cat "${KOKORO_GFILE_DIR}/project-id.txt") + +# Activate gcloud with service account credentials +gcloud auth activate-service-account --key-file=$GOOGLE_APPLICATION_CREDENTIALS +gcloud config set project ${PROJECT_ID} + +# Decrypt system test secrets +./scripts/decrypt-secrets.sh # Remove old nox python3 -m pip uninstall --yes --quiet nox-automation @@ -47,3 +54,10 @@ if [[ -n "${NOX_SESSION:-}" ]]; then else python3 -m nox fi + + +# Decrypt system test secrets +./scripts/decrypt-secrets.sh + +# Run system tests which use a different noxfile +python3 -m nox -f system_tests/noxfile.py \ No newline at end of file diff --git a/.kokoro/continuous/common.cfg b/.kokoro/continuous/common.cfg index c587b4104..10910e357 100644 --- a/.kokoro/continuous/common.cfg +++ b/.kokoro/continuous/common.cfg @@ -11,7 +11,7 @@ action { gfile_resources: "/bigstore/cloud-devrel-kokoro-resources/trampoline" # Download resources for system tests (service account key, etc.) -gfile_resources: "/bigstore/cloud-devrel-kokoro-resources/google-cloud-python" +gfile_resources: "/bigstore/cloud-devrel-kokoro-resources/google-auth-library-python" # Use the trampoline script to run in docker. build_file: "google-auth-library-python/.kokoro/trampoline.sh" diff --git a/.kokoro/presubmit/common.cfg b/.kokoro/presubmit/common.cfg index c587b4104..10910e357 100644 --- a/.kokoro/presubmit/common.cfg +++ b/.kokoro/presubmit/common.cfg @@ -11,7 +11,7 @@ action { gfile_resources: "/bigstore/cloud-devrel-kokoro-resources/trampoline" # Download resources for system tests (service account key, etc.) -gfile_resources: "/bigstore/cloud-devrel-kokoro-resources/google-cloud-python" +gfile_resources: "/bigstore/cloud-devrel-kokoro-resources/google-auth-library-python" # Use the trampoline script to run in docker. build_file: "google-auth-library-python/.kokoro/trampoline.sh" diff --git a/synth.py b/synth.py index 49bf2dda6..f692f7010 100644 --- a/synth.py +++ b/synth.py @@ -10,8 +10,8 @@ s.move( templated_files / ".kokoro", excludes=[ - ".kokoro/continuous/common.cfg", - ".kokoro/presubmit/common.cfg", - ".kokoro/build.sh", + "continuous/common.cfg", + "presubmit/common.cfg", + "build.sh", ], ) # just move kokoro configs diff --git a/system_tests/__init__.py b/system_tests/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/system_tests/noxfile.py b/system_tests/noxfile.py index dcfe8ee81..5d0014bc8 100644 --- a/system_tests/noxfile.py +++ b/system_tests/noxfile.py @@ -30,7 +30,7 @@ import py.path HERE = os.path.abspath(os.path.dirname(__file__)) -LIBRARY_DIR = os.path.join(HERE, "..") +LIBRARY_DIR = os.path.abspath(os.path.dirname(HERE)) DATA_DIR = os.path.join(HERE, "data") SERVICE_ACCOUNT_FILE = os.path.join(DATA_DIR, "service_account.json") AUTHORIZED_USER_FILE = os.path.join(DATA_DIR, "authorized_user.json") @@ -169,7 +169,7 @@ def configure_cloud_sdk(session, application_default_credentials, project=False) # Test sesssions TEST_DEPENDENCIES_ASYNC = ["aiohttp", "pytest-asyncio", "nest-asyncio"] -TEST_DEPENDENCIES_SYNC = ["pytest", "requests"] +TEST_DEPENDENCIES_SYNC = ["pytest", "requests", "mock"] PYTHON_VERSIONS_ASYNC = ["3.7"] PYTHON_VERSIONS_SYNC = ["2.7", "3.7"] @@ -249,6 +249,7 @@ def app_engine(session): session.log("Skipping App Engine tests.") return + session.install(LIBRARY_DIR) # Unlike the default tests above, the App Engine system test require a # 'real' gcloud sdk installation that is configured to deploy to an # app engine project. @@ -269,9 +270,8 @@ def app_engine(session): application_url = GAE_APP_URL_TMPL.format(GAE_TEST_APP_SERVICE, project_id) # Vendor in the test application's dependencies - session.chdir(os.path.join(HERE, "../app_engine_test_app")) + session.chdir(os.path.join(HERE, "system_tests_sync/app_engine_test_app")) session.install(*TEST_DEPENDENCIES_SYNC) - session.install(LIBRARY_DIR) session.run( "pip", "install", "--target", "lib", "-r", "requirements.txt", silent=True ) @@ -288,7 +288,7 @@ def app_engine(session): @nox.session(python=PYTHON_VERSIONS_SYNC) def grpc(session): session.install(LIBRARY_DIR) - session.install(*TEST_DEPENDENCIES_SYNC, "google-cloud-pubsub==1.0.0") + session.install(*TEST_DEPENDENCIES_SYNC, "google-cloud-pubsub==1.7.0") session.env[EXPLICIT_CREDENTIALS_ENV] = SERVICE_ACCOUNT_FILE session.run("pytest", "system_tests_sync/test_grpc.py") diff --git a/system_tests/secrets.tar.enc b/system_tests/secrets.tar.enc new file mode 100644 index 0000000000000000000000000000000000000000..29e06923f0f028b54d1b571dc218cdd92f751bd8 GIT binary patch literal 10323 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 diff --git a/system_tests/system_tests_sync/test_grpc.py b/system_tests/system_tests_sync/test_grpc.py index 650fa96a4..97897b8bf 100644 --- a/system_tests/system_tests_sync/test_grpc.py +++ b/system_tests/system_tests_sync/test_grpc.py @@ -17,8 +17,6 @@ import google.auth.jwt import google.auth.transport.grpc from google.cloud import pubsub_v1 -from google.cloud.pubsub_v1.gapic import publisher_client -from google.cloud.pubsub_v1.gapic.transports import publisher_grpc_transport def test_grpc_request_with_regular_credentials(http_request): @@ -27,13 +25,8 @@ def test_grpc_request_with_regular_credentials(http_request): credentials, ["https://www.googleapis.com/auth/pubsub"] ) - transport = publisher_grpc_transport.PublisherGrpcTransport( - address=publisher_client.PublisherClient.SERVICE_ADDRESS, - credentials=credentials, - ) - # Create a pub/sub client. - client = pubsub_v1.PublisherClient(transport=transport) + client = pubsub_v1.PublisherClient(credentials=credentials) # list the topics and drain the iterator to test that an authorized API # call works. diff --git a/system_tests/system_tests_sync/test_mtls_http.py b/system_tests/system_tests_sync/test_mtls_http.py index 7c5649685..bcf2a59da 100644 --- a/system_tests/system_tests_sync/test_mtls_http.py +++ b/system_tests/system_tests_sync/test_mtls_http.py @@ -13,8 +13,11 @@ # limitations under the License. import json -from os import path +import mock +import os import time +from os import path + import google.auth import google.auth.credentials From a092734e4b742599467b9d130c2838a2940ec864 Mon Sep 17 00:00:00 2001 From: Bu Sun Kim Date: Fri, 22 Jan 2021 18:09:29 +0000 Subject: [PATCH 2/2] test: fix grpc tests --- system_tests/system_tests_sync/test_grpc.py | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/system_tests/system_tests_sync/test_grpc.py b/system_tests/system_tests_sync/test_grpc.py index 97897b8bf..7dcbd4c43 100644 --- a/system_tests/system_tests_sync/test_grpc.py +++ b/system_tests/system_tests_sync/test_grpc.py @@ -41,13 +41,8 @@ def test_grpc_request_with_jwt_credentials(): credentials, audience=audience ) - transport = publisher_grpc_transport.PublisherGrpcTransport( - address=publisher_client.PublisherClient.SERVICE_ADDRESS, - credentials=credentials, - ) - # Create a pub/sub client. - client = pubsub_v1.PublisherClient(transport=transport) + client = pubsub_v1.PublisherClient(credentials=credentials) # list the topics and drain the iterator to test that an authorized API # call works. @@ -61,13 +56,8 @@ def test_grpc_request_with_on_demand_jwt_credentials(): credentials ) - transport = publisher_grpc_transport.PublisherGrpcTransport( - address=publisher_client.PublisherClient.SERVICE_ADDRESS, - credentials=credentials, - ) - # Create a pub/sub client. - client = pubsub_v1.PublisherClient(transport=transport) + client = pubsub_v1.PublisherClient(credentials=credentials) # list the topics and drain the iterator to test that an authorized API # call works.