From 6918deef71d66cd2fb9b6541c7726e99792b3fbc Mon Sep 17 00:00:00 2001 From: Ryan Richard Date: Thu, 20 Feb 2025 14:51:04 -0800 Subject: [PATCH] move Chrome Beta integration tests to separate CI job --- pipelines/main/pipeline.yml | 67 +++++++++++++++++++++++++++++++++++-- 1 file changed, 64 insertions(+), 3 deletions(-) diff --git a/pipelines/main/pipeline.yml b/pipelines/main/pipeline.yml index 786319f94..1224380f7 100644 --- a/pipelines/main/pipeline.yml +++ b/pipelines/main/pipeline.yml @@ -30,6 +30,7 @@ groups: - deploy-and-test-acceptance-gke - integration-test-eks-latest - integration-test-aks-latest + - integration-test-chrome-beta - ready-to-release - name: int-k8s-versions jobs: @@ -2374,7 +2375,7 @@ jobs: serial: true plan: - in_parallel: - # Run weekdays to get constant feedback as test dependencies (e.g. Chrome) release new versions. + # Run weekdays to get constant feedback as test dependencies release new versions. - get: weekdays trigger: true - get: ci-build-image @@ -2386,7 +2387,6 @@ jobs: trigger: true - get: pinniped-ci - get: integration-test-runner-image - - get: integration-test-runner-beta-image - get: k8s-app-deployer-image - task: deploy-to-acceptance-gke file: pinniped-ci/pipelines/shared-tasks/deploy-to-acceptance-gke/task.yml @@ -2429,14 +2429,75 @@ jobs: timeout: 75m file: pinniped-ci/pipelines/shared-tasks/run-integration-tests/task.yml image: integration-test-runner-image - - task: run-integration-tests-beta + <<: *notify_on_failure + <<: *notify_on_success + + - name: integration-test-chrome-beta + public: false # logs are private due to bug in Chrome Beta that can show unwanted data in browser text fields in failure screenshots + plan: + - in_parallel: + # Run weekdays to get constant feedback as Chrome releases new Beta versions. + - get: weekdays + trigger: true + - get: pinniped + passed: [ ready-for-acceptance ] + trigger: true + - get: pinniped-ci + - get: kind-release + - get: gcloud-image + - get: k8s-app-deployer-image + - get: ci-build-image + passed: [ ready-for-int ] + params: + skip_download: true + - get: ci-test-image + passed: [ ready-for-int ] + - get: integration-test-runner-image + - get: integration-test-runner-beta-image + - task: deploy-kind-instance + attempts: 5 + timeout: 30m + file: pinniped-ci/pipelines/shared-tasks/deploy-kind-cluster-vm/task.yml + image: gcloud-image + params: + <<: *latest_kind_kube_version + <<: *gcp_account_params + - task: deploy + input_mapping: + cluster-pool: deploy-kind-cluster-vm-output + params: + CLUSTER_CAPABILITIES_PATH: pinniped/test/cluster_capabilities/kind.yaml + # The following Okta params will cause the integration tests to use Okta instead of Dex. + # We don't need to run these on every version of Kubernetes for Kind in this pipeline, so we choose to run + # them on one version to get some coverage. + <<: *okta_integration_env_vars + file: pinniped-ci/pipelines/shared-tasks/deploy-to-integration/task.yml + image: integration-test-runner-image + - task: run-integration-tests-with-chrome-beta timeout: 75m file: pinniped-ci/pipelines/shared-tasks/run-integration-tests/task.yml image: integration-test-runner-beta-image params: TEST_RUN_REGEX: "/_Browser" + START_GCLOUD_PROXY: "yes" + <<: *gcp_account_params <<: *notify_on_failure <<: *notify_on_success + ensure: + task: export-cluster-diagnostics + <<: *cluster_diagnostics_task + input_mapping: + cluster-pool: deploy-kind-cluster-vm-output + ensure: + task: remove-kind-instance + attempts: 2 + timeout: 20m + file: pinniped-ci/pipelines/shared-tasks/remove-kind-cluster-vm/task.yml + image: gcloud-image + input_mapping: + kind-cluster-pool: deploy-kind-cluster-vm-output + params: + <<: *gcp_account_params # Fan-in just to make it easy to see in the UI which versions are ready to go. - name: ready-to-release