diff --git a/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main.yaml b/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main.yaml index 6b3bf3bb06846..e376683152644 100644 --- a/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main.yaml +++ b/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main.yaml @@ -236,15 +236,8 @@ tests: ARO_HCP_DEPLOY_ENV: int ARO_HCP_SUITE_NAME: integration/parallel LOCATION: uksouth - VAULT_SECRET_PROFILE: int - leases: - - count: 1 - env: ENV_QUOTA_LEASED_RESOURCE - resource_type: aro-hcp-int-quota-slice - - count: 20 - env: LEASED_MSI_CONTAINERS - resource_type: aro-hcp-test-msi-containers-int - workflow: aro-hcp-e2e + VAULT_SECRET_PROFILE: int-rh + workflow: aro-hcp-persistent-e2e - always_run: false as: integration-e2e-parallel-ocp-stable optional: true @@ -256,15 +249,8 @@ tests: ARO_HCP_OPENSHIFT_NODEPOOL_CHANNEL_GROUP: stable ARO_HCP_SUITE_NAME: integration/parallel LOCATION: uksouth - VAULT_SECRET_PROFILE: int - leases: - - count: 1 - env: ENV_QUOTA_LEASED_RESOURCE - resource_type: aro-hcp-int-quota-slice - - count: 20 - env: LEASED_MSI_CONTAINERS - resource_type: aro-hcp-test-msi-containers-int - workflow: aro-hcp-e2e + VAULT_SECRET_PROFILE: int-rh + workflow: aro-hcp-persistent-e2e - always_run: false as: integration-e2e-parallel-ocp-fast optional: true @@ -276,15 +262,8 @@ tests: ARO_HCP_OPENSHIFT_NODEPOOL_CHANNEL_GROUP: fast ARO_HCP_SUITE_NAME: integration/parallel LOCATION: uksouth - VAULT_SECRET_PROFILE: int - leases: - - count: 1 - env: ENV_QUOTA_LEASED_RESOURCE - resource_type: aro-hcp-int-quota-slice - - count: 20 - env: LEASED_MSI_CONTAINERS - resource_type: aro-hcp-test-msi-containers-int - workflow: aro-hcp-e2e + VAULT_SECRET_PROFILE: int-rh + workflow: aro-hcp-persistent-e2e - always_run: false as: integration-e2e-parallel-ocp-nightly optional: true @@ -296,15 +275,8 @@ tests: ARO_HCP_OPENSHIFT_NODEPOOL_CHANNEL_GROUP: nightly ARO_HCP_SUITE_NAME: integration/parallel LOCATION: uksouth - VAULT_SECRET_PROFILE: int - leases: - - count: 1 - env: ENV_QUOTA_LEASED_RESOURCE - resource_type: aro-hcp-int-quota-slice - - count: 20 - env: LEASED_MSI_CONTAINERS - resource_type: aro-hcp-test-msi-containers-int - workflow: aro-hcp-e2e + VAULT_SECRET_PROFILE: int-rh + workflow: aro-hcp-persistent-e2e - always_run: false as: stage-e2e-parallel optional: true @@ -321,15 +293,8 @@ tests: ARO_HCP_DEPLOY_ENV: stg ARO_HCP_SUITE_NAME: stage/parallel LOCATION: uksouth - VAULT_SECRET_PROFILE: stg - leases: - - count: 1 - env: ENV_QUOTA_LEASED_RESOURCE - resource_type: aro-hcp-stg-quota-slice - - count: 30 - env: LEASED_MSI_CONTAINERS - resource_type: aro-hcp-test-msi-containers-stg - workflow: aro-hcp-e2e + VAULT_SECRET_PROFILE: stg-rh + workflow: aro-hcp-persistent-e2e - always_run: false as: stage-e2e-parallel-ocp-stable optional: true @@ -341,15 +306,8 @@ tests: ARO_HCP_OPENSHIFT_NODEPOOL_CHANNEL_GROUP: stable ARO_HCP_SUITE_NAME: stage/parallel LOCATION: uksouth - VAULT_SECRET_PROFILE: stg - leases: - - count: 1 - env: ENV_QUOTA_LEASED_RESOURCE - resource_type: aro-hcp-stg-quota-slice - - count: 30 - env: LEASED_MSI_CONTAINERS - resource_type: aro-hcp-test-msi-containers-stg - workflow: aro-hcp-e2e + VAULT_SECRET_PROFILE: stg-rh + workflow: aro-hcp-persistent-e2e - always_run: false as: stage-e2e-parallel-ocp-fast optional: true @@ -361,15 +319,8 @@ tests: ARO_HCP_OPENSHIFT_NODEPOOL_CHANNEL_GROUP: fast ARO_HCP_SUITE_NAME: stage/parallel LOCATION: uksouth - VAULT_SECRET_PROFILE: stg - leases: - - count: 1 - env: ENV_QUOTA_LEASED_RESOURCE - resource_type: aro-hcp-stg-quota-slice - - count: 30 - env: LEASED_MSI_CONTAINERS - resource_type: aro-hcp-test-msi-containers-stg - workflow: aro-hcp-e2e + VAULT_SECRET_PROFILE: stg-rh + workflow: aro-hcp-persistent-e2e - always_run: false as: stage-e2e-parallel-ocp-nightly optional: true @@ -388,15 +339,8 @@ tests: ARO_HCP_OPENSHIFT_NODEPOOL_CHANNEL_GROUP: nightly ARO_HCP_SUITE_NAME: stage/parallel LOCATION: uksouth - VAULT_SECRET_PROFILE: stg - leases: - - count: 1 - env: ENV_QUOTA_LEASED_RESOURCE - resource_type: aro-hcp-stg-quota-slice - - count: 30 - env: LEASED_MSI_CONTAINERS - resource_type: aro-hcp-test-msi-containers-stg - workflow: aro-hcp-e2e + VAULT_SECRET_PROFILE: stg-rh + workflow: aro-hcp-persistent-e2e - always_run: false as: prod-e2e-parallel optional: true diff --git a/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main__e2e.yaml b/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main__e2e.yaml index 7fdc36476bd01..1fc42b3f893a7 100644 --- a/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main__e2e.yaml +++ b/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main__e2e.yaml @@ -38,15 +38,8 @@ tests: ARO_HCP_DEPLOY_ENV: int ARO_HCP_SUITE_NAME: integration/parallel LOCATION: uksouth - VAULT_SECRET_PROFILE: int - leases: - - count: 1 - env: ENV_QUOTA_LEASED_RESOURCE - resource_type: aro-hcp-int-quota-slice - - count: 20 - env: LEASED_MSI_CONTAINERS - resource_type: aro-hcp-test-msi-containers-int - workflow: aro-hcp-e2e + VAULT_SECRET_PROFILE: int-rh + workflow: aro-hcp-persistent-e2e - as: stage-e2e-parallel max_concurrency: 4 postsubmit: true @@ -64,15 +57,8 @@ tests: ARO_HCP_DEPLOY_ENV: stg ARO_HCP_SUITE_NAME: stage/parallel LOCATION: uksouth - VAULT_SECRET_PROFILE: stg - leases: - - count: 1 - env: ENV_QUOTA_LEASED_RESOURCE - resource_type: aro-hcp-stg-quota-slice - - count: 30 - env: LEASED_MSI_CONTAINERS - resource_type: aro-hcp-test-msi-containers-stg - workflow: aro-hcp-e2e + VAULT_SECRET_PROFILE: stg-rh + workflow: aro-hcp-persistent-e2e - as: prod-e2e-parallel max_concurrency: 4 postsubmit: true diff --git a/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main__periodic-cleanup.yaml b/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main__periodic-cleanup.yaml index 08448a28608d2..48915c07d0928 100644 --- a/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main__periodic-cleanup.yaml +++ b/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main__periodic-cleanup.yaml @@ -139,7 +139,8 @@ tests: <{{.Status.URL}}|View logs>' steps: env: - VAULT_SECRET_PROFILE: int + CUSTOMER_SUBSCRIPTION: ARO SRE Team - INT (EA Subscription 3) + VAULT_SECRET_PROFILE: int-rh test: - ref: aro-hcp-deprovision-expired-resource-groups - as: delete-expired-stage-resource-groups @@ -153,7 +154,8 @@ tests: <{{.Status.URL}}|View logs>' steps: env: - VAULT_SECRET_PROFILE: stg + CUSTOMER_SUBSCRIPTION: ARO HCP E2E Hosted Clusters - Stage - 00 + VAULT_SECRET_PROFILE: stg-rh test: - ref: aro-hcp-deprovision-expired-resource-groups - as: delete-expired-prod-resource-groups diff --git a/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main__periodic.yaml b/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main__periodic.yaml index 50bc1b600ccb7..88a792dcacd5a 100644 --- a/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main__periodic.yaml +++ b/ci-operator/config/Azure/ARO-HCP/Azure-ARO-HCP-main__periodic.yaml @@ -28,15 +28,8 @@ tests: ARO_HCP_DEPLOY_ENV: int ARO_HCP_SUITE_NAME: integration/parallel LOCATION: uksouth - VAULT_SECRET_PROFILE: int - leases: - - count: 1 - env: ENV_QUOTA_LEASED_RESOURCE - resource_type: aro-hcp-int-quota-slice - - count: 20 - env: LEASED_MSI_CONTAINERS - resource_type: aro-hcp-test-msi-containers-int - workflow: aro-hcp-e2e + VAULT_SECRET_PROFILE: int-rh + workflow: aro-hcp-persistent-e2e timeout: 4h0m0s - as: stage-e2e-parallel cron: 0 2 * * * @@ -53,15 +46,8 @@ tests: ARO_HCP_DEPLOY_ENV: stg ARO_HCP_SUITE_NAME: stage/parallel LOCATION: uksouth - VAULT_SECRET_PROFILE: stg - leases: - - count: 1 - env: ENV_QUOTA_LEASED_RESOURCE - resource_type: aro-hcp-stg-quota-slice - - count: 30 - env: LEASED_MSI_CONTAINERS - resource_type: aro-hcp-test-msi-containers-stg - workflow: aro-hcp-e2e + VAULT_SECRET_PROFILE: stg-rh + workflow: aro-hcp-persistent-e2e timeout: 4h0m0s - as: stage-e2e-parallel-ocp-nightly cron: 0 23 * * * @@ -80,15 +66,8 @@ tests: ARO_HCP_OPENSHIFT_NODEPOOL_CHANNEL_GROUP: nightly ARO_HCP_SUITE_NAME: stage/parallel LOCATION: uksouth - VAULT_SECRET_PROFILE: stg - leases: - - count: 1 - env: ENV_QUOTA_LEASED_RESOURCE - resource_type: aro-hcp-stg-quota-slice - - count: 30 - env: LEASED_MSI_CONTAINERS - resource_type: aro-hcp-test-msi-containers-stg - workflow: aro-hcp-e2e + VAULT_SECRET_PROFILE: stg-rh + workflow: aro-hcp-persistent-e2e - as: prod-e2e-parallel cron: 0 2 * * * reporter_config: diff --git a/ci-operator/step-registry/aro-hcp/persistent-e2e/OWNERS b/ci-operator/step-registry/aro-hcp/persistent-e2e/OWNERS new file mode 100644 index 0000000000000..8b5c8784266a3 --- /dev/null +++ b/ci-operator/step-registry/aro-hcp/persistent-e2e/OWNERS @@ -0,0 +1,8 @@ +approvers: +- aro-hcp-sl-approvers +- geoberle +- deads2k +reviewers: +- aro-hcp-sl-reviewers +- geoberle +- deads2k diff --git a/ci-operator/step-registry/aro-hcp/persistent-e2e/aro-hcp-persistent-e2e-workflow.metadata.json b/ci-operator/step-registry/aro-hcp/persistent-e2e/aro-hcp-persistent-e2e-workflow.metadata.json new file mode 100644 index 0000000000000..685f2078e49ce --- /dev/null +++ b/ci-operator/step-registry/aro-hcp/persistent-e2e/aro-hcp-persistent-e2e-workflow.metadata.json @@ -0,0 +1,15 @@ +{ + "path": "aro-hcp/persistent-e2e/aro-hcp-persistent-e2e-workflow.yaml", + "owners": { + "approvers": [ + "aro-hcp-sl-approvers", + "geoberle", + "deads2k" + ], + "reviewers": [ + "aro-hcp-sl-reviewers", + "geoberle", + "deads2k" + ] + } +} \ No newline at end of file diff --git a/ci-operator/step-registry/aro-hcp/persistent-e2e/aro-hcp-persistent-e2e-workflow.yaml b/ci-operator/step-registry/aro-hcp/persistent-e2e/aro-hcp-persistent-e2e-workflow.yaml new file mode 100644 index 0000000000000..1172adae6dec3 --- /dev/null +++ b/ci-operator/step-registry/aro-hcp/persistent-e2e/aro-hcp-persistent-e2e-workflow.yaml @@ -0,0 +1,16 @@ +workflow: + as: aro-hcp-persistent-e2e + steps: + allow_best_effort_post_steps: true + pre: + - ref: aro-hcp-lease-acquire + - ref: aro-hcp-write-config + test: + - ref: aro-hcp-test-persistent + post: + - ref: aro-hcp-gather-test-visualization + - ref: aro-hcp-gather-custom-link-tools + - ref: aro-hcp-lease-release + documentation: |- + Runs the E2E suite against a persistent (pre-deployed) environment using slot-manager + for subscription and identity-container selection. No provisioning or deprovisioning. diff --git a/ci-operator/step-registry/aro-hcp/test/persistent/aro-hcp-test-persistent-commands.sh b/ci-operator/step-registry/aro-hcp/test/persistent/aro-hcp-test-persistent-commands.sh index e8a2a9d03f07b..e9d73a3291aac 100644 --- a/ci-operator/step-registry/aro-hcp/test/persistent/aro-hcp-test-persistent-commands.sh +++ b/ci-operator/step-registry/aro-hcp/test/persistent/aro-hcp-test-persistent-commands.sh @@ -9,12 +9,19 @@ export CLUSTER_PROFILE_DIR="/var/run/aro-hcp-${VAULT_SECRET_PROFILE}" export AZURE_CLIENT_ID; AZURE_CLIENT_ID=$(cat "${CLUSTER_PROFILE_DIR}/client-id") export AZURE_TENANT_ID; AZURE_TENANT_ID=$(cat "${CLUSTER_PROFILE_DIR}/tenant") export AZURE_CLIENT_SECRET; AZURE_CLIENT_SECRET=$(cat "${CLUSTER_PROFILE_DIR}/client-secret") -export CUSTOMER_SUBSCRIPTION; CUSTOMER_SUBSCRIPTION=$(cat "${CLUSTER_PROFILE_DIR}/subscription-name") -export SUBSCRIPTION_ID; SUBSCRIPTION_ID=$(cat "${CLUSTER_PROFILE_DIR}/subscription-id") export AZURE_TOKEN_CREDENTIALS=prod +env_file="${SHARED_DIR}/aro-hcp-slot.env" +if [[ -f "${env_file}" ]]; then + # shellcheck disable=SC1090 + source "${env_file}" + export LOCATION="${SELECTED_LOCATION:-${LOCATION:-}}" +else + export CUSTOMER_SUBSCRIPTION; CUSTOMER_SUBSCRIPTION=$(cat "${CLUSTER_PROFILE_DIR}/subscription-name") +fi + az login --service-principal -u "${AZURE_CLIENT_ID}" -p "${AZURE_CLIENT_SECRET}" --tenant "${AZURE_TENANT_ID}" --output none -az account set --subscription "${SUBSCRIPTION_ID}" +az account set --subscription "${CUSTOMER_SUBSCRIPTION}" if [[ -n "${MULTISTAGE_PARAM_OVERRIDE_LOCATION:-}" ]]; then export LOCATION="${MULTISTAGE_PARAM_OVERRIDE_LOCATION}" diff --git a/core-services/prow/02_config/_boskos.yaml b/core-services/prow/02_config/_boskos.yaml index 203fd365e57f3..b8c425818eda4 100644 --- a/core-services/prow/02_config/_boskos.yaml +++ b/core-services/prow/02_config/_boskos.yaml @@ -111,6 +111,10 @@ resources: min-count: 1 state: free type: aro-hcp-int-quota-slice +- names: + - aro-hcp-int-shard0-slot-00 + state: free + type: aro-hcp-int-shard0-slot - names: - aro-hcp-msi-mock-cs-sp-dev-0 - aro-hcp-msi-mock-cs-sp-dev-1 @@ -142,6 +146,10 @@ resources: min-count: 1 state: free type: aro-hcp-stg-quota-slice +- names: + - aro-hcp-stg-shard0-slot-00 + state: free + type: aro-hcp-stg-shard0-slot - names: - aro-hcp-test-msi-containers-dev-0 - aro-hcp-test-msi-containers-dev-1 diff --git a/core-services/prow/02_config/generate-boskos.py b/core-services/prow/02_config/generate-boskos.py index 8ba98f8553e1d..11eea22fa7a15 100755 --- a/core-services/prow/02_config/generate-boskos.py +++ b/core-services/prow/02_config/generate-boskos.py @@ -314,6 +314,8 @@ 'aro-hcp-dev-shard0-slot': {}, 'aro-hcp-dev-shard2-slot': {}, 'aro-hcp-dev-shard3-slot': {}, + 'aro-hcp-int-shard0-slot': {}, + 'aro-hcp-stg-shard0-slot': {}, # END ARO-HCP E2E SLOT TYPES 'aro-hcp-msi-mock-cs-sp-dev': {}, 'equinix-ocp-metal-quota-slice': { @@ -783,6 +785,10 @@ CONFIG['aro-hcp-dev-shard2-slot']['aro-hcp-dev-shard2-slot-{i:0>2}'.format(i=i)] = 1 for i in range(1): CONFIG['aro-hcp-dev-shard3-slot']['aro-hcp-dev-shard3-slot-{i:0>2}'.format(i=i)] = 1 +for i in range(1): + CONFIG['aro-hcp-int-shard0-slot']['aro-hcp-int-shard0-slot-{i:0>2}'.format(i=i)] = 1 +for i in range(1): + CONFIG['aro-hcp-stg-shard0-slot']['aro-hcp-stg-shard0-slot-{i:0>2}'.format(i=i)] = 1 # END ARO-HCP E2E SLOT RESOURCES for i in range(20): CONFIG['aro-hcp-msi-mock-cs-sp-dev']['aro-hcp-msi-mock-cs-sp-dev-{}'.format(i)] = 1