-
Notifications
You must be signed in to change notification settings - Fork 2.3k
CORS-4508: Add e2e-gcd installer CI job for Google Cloud Dedicated #81238
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
5ebd08b
502a13e
f55dbe9
484d340
f5b5480
1aa9968
03d65cd
85548dd
3cf97be
cb78111
ab921e6
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -530,6 +530,21 @@ tests: | |||||||||||||||||||||||||||||||||||||||
| FEATURE_SET: TechPreviewNoUpgrade | ||||||||||||||||||||||||||||||||||||||||
| OS_IMAGE_STREAM: rhel-10 | ||||||||||||||||||||||||||||||||||||||||
| workflow: openshift-e2e-aws | ||||||||||||||||||||||||||||||||||||||||
| - always_run: false | ||||||||||||||||||||||||||||||||||||||||
| as: e2e-gcd-techpreview | ||||||||||||||||||||||||||||||||||||||||
| cluster: build07 | ||||||||||||||||||||||||||||||||||||||||
| optional: true | ||||||||||||||||||||||||||||||||||||||||
| steps: | ||||||||||||||||||||||||||||||||||||||||
| cluster_profile: gcd | ||||||||||||||||||||||||||||||||||||||||
| env: | ||||||||||||||||||||||||||||||||||||||||
| AWS_PROFILE: hub | ||||||||||||||||||||||||||||||||||||||||
| BASE_DOMAIN: ci.gcd.devcluster.openshift.com | ||||||||||||||||||||||||||||||||||||||||
| COMPUTE_NODE_REPLICAS: "2" | ||||||||||||||||||||||||||||||||||||||||
| DEFAULT_MACHINE_OSIMAGE: rhcos10 | ||||||||||||||||||||||||||||||||||||||||
| FEATURE_SET: TechPreviewNoUpgrade | ||||||||||||||||||||||||||||||||||||||||
| GOOGLE_CLOUD_UNIVERSE_DOMAIN: apis-berlin-build0.goog | ||||||||||||||||||||||||||||||||||||||||
|
rochacbruno marked this conversation as resolved.
rochacbruno marked this conversation as resolved.
|
||||||||||||||||||||||||||||||||||||||||
| PUBLISH: Internal | ||||||||||||||||||||||||||||||||||||||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. For private cluster, we also need to setup an existing network, bastion VM and proxy because CI pods can't reach internal API endpoint. We can reference the It may look something like commit tthvo@da9ed32, allowing overrding OS image and instance type. WDYT? release/ci-operator/config/openshift/installer/openshift-installer-main.yaml Lines 1444 to 1462 in 58781bc
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thanks. I am making changes based on your reference commit
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Ohh yes, it should be available in my fork https://github.com/tthvo/release at branch
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Applied your reference commit - added VPC/bastion/proxy to ipi-gcd-pre chain, teardown in post, WIF auth in all provision/deprovision scripts, and configurable bastion image/machine type. Also restored AWS_PROFILE=hub. |
||||||||||||||||||||||||||||||||||||||||
| workflow: openshift-e2e-gcd | ||||||||||||||||||||||||||||||||||||||||
| - as: e2e-gcp-ovn | ||||||||||||||||||||||||||||||||||||||||
| run_if_changed: (gcp|google) | ||||||||||||||||||||||||||||||||||||||||
| steps: | ||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -14,11 +14,17 @@ fi | |
| GOOGLE_PROJECT_ID="$(< ${CLUSTER_PROFILE_DIR}/openshift_gcp_project)" | ||
|
|
||
| export GCP_SHARED_CREDENTIALS_FILE="${CLUSTER_PROFILE_DIR}/gce.json" | ||
| sa_email=$(jq -r .client_email ${GCP_SHARED_CREDENTIALS_FILE}) | ||
| if ! gcloud auth list | grep -E "\*\s+${sa_email}" | ||
| then | ||
| gcloud auth activate-service-account --key-file="${GCP_SHARED_CREDENTIALS_FILE}" | ||
| CRED_TYPE=$(jq -r .type "${GCP_SHARED_CREDENTIALS_FILE}" 2>/dev/null) | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think there is some common gcloud auth logic. Can we make a common file ?
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Agreed - the WIF external_account detection pattern is repeated across several scripts now. We'll extract it into a shared helper as a follow-up once we confirm the current implementation works end-to-end. |
||
| if [[ "${CRED_TYPE}" == "external_account" ]]; then | ||
| gcloud auth login --cred-file="${GCP_SHARED_CREDENTIALS_FILE}" --quiet | ||
| gcloud config set project "${GOOGLE_PROJECT_ID}" | ||
| else | ||
| sa_email=$(jq -r .client_email ${GCP_SHARED_CREDENTIALS_FILE}) | ||
| if ! gcloud auth list | grep -E "\*\s+${sa_email}" | ||
| then | ||
| gcloud auth activate-service-account --key-file="${GCP_SHARED_CREDENTIALS_FILE}" | ||
| gcloud config set project "${GOOGLE_PROJECT_ID}" | ||
| fi | ||
| fi | ||
|
|
||
| ## Destroy the VPC | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| approvers: | ||
| - barbacbd | ||
| - patrickdillon | ||
| - rochacbruno | ||
| - tthvo |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IIRC, once we finalize the job config, we need to copy it to
5.0,5.1and4.23release branch too, rite? For example,gcp-privatehas a 5.0 variant:release/ci-operator/config/openshift/installer/openshift-installer-release-5.0.yaml
Line 1445 in f5300d0
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TBH, it's never clear to me which branches we need to copy to. In general I think config on an existing branch will be carried over to the next branch on branching day. But again, not sure, so it might be good to lock this down.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
☝️ Right, I notice the config on
-main.yamlis the one that will be copied over to next branch.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Right, the config on main will be copied to the next branch on branching day. We can add it to existing release branches once the job is validated.