Repository: openshift/release
Pull request #63203: Update the wif filestore-csi
Author: login: chao007
Labels: name: lgtm
description: Indicates that a PR is ready to be merged.
name: approved
description: Indicates a PR has been approved by an approver from all required OWNERS files.
name: rehearsals-ack
description: Signifies that rehearsal jobs have been acknowledged
Created: 2025-03-26T10:29:35Z | Merged: 2025-05-12T10:54:27Z

https://issues.redhat.com/browse/STOR-1991
Add filestore csi operator testing in the wif mode


Diff:
diff --git a/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.19__multi-nightly.yaml b/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.19__multi-nightly.yaml
index 29265ce2a64c9..c994f86b6ed96 100644
--- a/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.19__multi-nightly.yaml
+++ b/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.19__multi-nightly.yaml
@@ -2046,10 +2046,12 @@ tests:
     test:
     - chain: openshift-e2e-test-qe-destructive
     workflow: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity
-- as: gcp-ipi-proxy-oidc-mini-perm-arm-f28
-  cron: 49 14 22 * *
+- as: gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28
+  cron: 24 19 5 * *
   steps:
     cluster_profile: gcp-qe
+    dependency_overrides:
+      OO_INDEX: quay.io/openshift-qe-optional-operators/aosqe-index:v4.19
     env:
       COMPUTE_NODE_TYPE: t2a-standard-4
       ENABLE_MIN_PERMISSION_FOR_STS: "true"
@@ -2058,7 +2060,7 @@ tests:
       OCP_ARCH: arm64
     test:
     - chain: openshift-e2e-test-qe
-    workflow: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity
+    workflow: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi
 - as: gcp-ipi-proxy-private-mini-perm-amd-f28-destructive
   cron: 51 2 29 * *
   steps:
diff --git a/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.20__multi-nightly.yaml b/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.20__multi-nightly.yaml
index 86d4631ca877f..50fb7a771fff7 100644
--- a/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.20__multi-nightly.yaml
+++ b/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.20__multi-nightly.yaml
@@ -2045,10 +2045,12 @@ tests:
     test:
     - chain: openshift-e2e-test-qe-destructive
     workflow: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity
-- as: gcp-ipi-proxy-oidc-mini-perm-arm-f28
+- as: gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28
   cron: 1 1 18 * *
   steps:
     cluster_profile: gcp-qe
+    dependency_overrides:
+      OO_INDEX: quay.io/openshift-qe-optional-operators/aosqe-index:v4.20
     env:
       COMPUTE_NODE_TYPE: t2a-standard-4
       ENABLE_MIN_PERMISSION_FOR_STS: "true"
@@ -2057,7 +2059,7 @@ tests:
       OCP_ARCH: arm64
     test:
     - chain: openshift-e2e-test-qe
-    workflow: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity
+    workflow: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi
 - as: gcp-ipi-proxy-private-mini-perm-amd-f28-destructive
   cron: 16 19 23 * *
   steps:
diff --git a/ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.19-periodics.yaml b/ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.19-periodics.yaml
index 3b4d4ceef7a1a..f32d340c7fd0e 100644
--- a/ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.19-periodics.yaml
+++ b/ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.19-periodics.yaml
@@ -82142,7 +82142,7 @@ periodics:
         secretName: result-aggregator
 - agent: kubernetes
   cluster: build02
-  cron: 49 14 22 * *
+  cron: 24 19 5 * *
   decorate: true
   decoration_config:
     skip_cloning: true
@@ -82157,7 +82157,7 @@ periodics:
     ci.openshift.io/generator: prowgen
     job-release: "4.19"
     pj-rehearse.openshift.io/can-be-rehearsed: "true"
-  name: periodic-ci-openshift-openshift-tests-private-release-4.19-multi-nightly-gcp-ipi-proxy-oidc-mini-perm-arm-f28
+  name: periodic-ci-openshift-openshift-tests-private-release-4.19-multi-nightly-gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28
   spec:
     containers:
     - args:
@@ -82167,7 +82167,7 @@ periodics:
       - --oauth-token-path=/usr/local/github-credentials/oauth
       - --report-credentials-file=/etc/report/credentials
       - --secret-dir=/secrets/ci-pull-credentials
-      - --target=gcp-ipi-proxy-oidc-mini-perm-arm-f28
+      - --target=gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28
       - --variant=multi-nightly
       command:
       - ci-operator
diff --git a/ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.20-periodics.yaml b/ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.20-periodics.yaml
index ae0ab6e1324e5..6cde1c0e27738 100644
--- a/ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.20-periodics.yaml
+++ b/ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.20-periodics.yaml
@@ -44649,7 +44649,7 @@ periodics:
     ci.openshift.io/generator: prowgen
     job-release: "4.20"
     pj-rehearse.openshift.io/can-be-rehearsed: "true"
-  name: periodic-ci-openshift-openshift-tests-private-release-4.20-multi-nightly-gcp-ipi-proxy-oidc-mini-perm-arm-f28
+  name: periodic-ci-openshift-openshift-tests-private-release-4.20-multi-nightly-gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28
   spec:
     containers:
     - args:
@@ -44659,7 +44659,7 @@ periodics:
       - --oauth-token-path=/usr/local/github-credentials/oauth
       - --report-credentials-file=/etc/report/credentials
       - --secret-dir=/secrets/ci-pull-credentials
-      - --target=gcp-ipi-proxy-oidc-mini-perm-arm-f28
+      - --target=gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28
       - --variant=multi-nightly
       command:
       - ci-operator
diff --git a/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/OWNERS b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/OWNERS
new file mode 100644
index 0000000000000..e676c2f5c9442
--- /dev/null
+++ b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/OWNERS
@@ -0,0 +1,6 @@
+approvers:
+- duanwei33
+- chao007
+reviewers:
+- duanwei33
+- chao007
diff --git a/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-workflow.metadata.json b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-workflow.metadata.json
new file mode 100644
index 0000000000000..a1ea246d46f55
--- /dev/null
+++ b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-workflow.metadata.json
@@ -0,0 +1,13 @@
+{
+	"path": "cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-workflow.yaml",
+	"owners": {
+		"approvers": [
+			"duanwei33",
+			"chao007"
+		],
+		"reviewers": [
+			"duanwei33",
+			"chao007"
+		]
+	}
+}
\ No newline at end of file
diff --git a/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-workflow.yaml b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-workflow.yaml
new file mode 100644
index 0000000000000..c943d5e8e518b
--- /dev/null
+++ b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-workflow.yaml
@@ -0,0 +1,16 @@
+workflow:
+  as: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi
+  steps:
+    pre:
+    - chain: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision
+    post:
+    - chain: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-deprovision
+  documentation: |-
+    The IPI workflow provides provision- and deprovision- steps that provision and
+    deprovision an OpenShift disconnected cluster (behind proxy) with a default
+    configurationon GCP, allowing job authors to inject their own end-to-end test logic.
+
+    All modifications to this workflow should be done by modifying the
+    `cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-{provision,deprovision}`
+    chains to allow other workflows to mimic and extend this base workflow without
+    a need to backport changes.
diff --git a/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/deprovision/OWNERS b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/deprovision/OWNERS
new file mode 100644
index 0000000000000..e676c2f5c9442
--- /dev/null
+++ b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/deprovision/OWNERS
@@ -0,0 +1,6 @@
+approvers:
+- duanwei33
+- chao007
+reviewers:
+- duanwei33
+- chao007
diff --git a/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/deprovision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-deprovision-chain.metadata.json b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/deprovision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-deprovision-chain.metadata.json
new file mode 100644
index 0000000000000..c84d29c940092
--- /dev/null
+++ b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/deprovision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-deprovision-chain.metadata.json
@@ -0,0 +1,13 @@
+{
+	"path": "cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/deprovision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-deprovision-chain.yaml",
+	"owners": {
+		"approvers": [
+			"duanwei33",
+			"chao007"
+		],
+		"reviewers": [
+			"duanwei33",
+			"chao007"
+		]
+	}
+}
\ No newline at end of file
diff --git a/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/deprovision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-deprovision-chain.yaml b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/deprovision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-deprovision-chain.yaml
new file mode 100644
index 0000000000000..3d52ec8f484da
--- /dev/null
+++ b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/deprovision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-deprovision-chain.yaml
@@ -0,0 +1,8 @@
+chain:
+  as: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-deprovision
+  steps:
+  - chain: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-deprovision
+  - ref: ipi-conf-gcp-filestore-workload-identity-federation-cleanup
+  documentation: |-
+    This chain deprovisions all the components created by the
+    cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-provision chain.
diff --git a/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/provision/OWNERS b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/provision/OWNERS
new file mode 100644
index 0000000000000..e8b5c0636725f
--- /dev/null
+++ b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/provision/OWNERS
@@ -0,0 +1,6 @@
+approvers:
+- chao007
+- duanwei33
+reviewers:
+- chao007
+- duanwei33
diff --git a/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/provision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision-chain.metadata.json b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/provision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision-chain.metadata.json
new file mode 100644
index 0000000000000..11f278ee1497a
--- /dev/null
+++ b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/provision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision-chain.metadata.json
@@ -0,0 +1,13 @@
+{
+	"path": "cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/provision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision-chain.yaml",
+	"owners": {
+		"approvers": [
+			"chao007",
+			"duanwei33"
+		],
+		"reviewers": [
+			"chao007",
+			"duanwei33"
+		]
+	}
+}
\ No newline at end of file
diff --git a/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/provision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision-chain.yaml b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/provision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision-chain.yaml
new file mode 100644
index 0000000000000..b17e11b58a0f1
--- /dev/null
+++ b/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/provision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision-chain.yaml
@@ -0,0 +1,10 @@
+chain:
+  as: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision
+  steps:
+  - chain: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-provision
+  - chain: ipi-gcp-pre-manual-oidc-workload-identity-filestore
+  env:
+  - name: RESTRICTED_NETWORK
+    default:  "yes"
+  documentation: |-
+    Launch an IPI disconnected cluster (behind proxy) using Workload Identity on GCP for QE e2e tests.
diff --git a/ci-operator/step-registry/ipi/conf/gcp/filestore-workload-identity-federation-cleanup/ipi-conf-gcp-filestore-workload-identity-federation-cleanup-commands.sh b/ci-operator/step-registry/ipi/conf/gcp/filestore-workload-identity-federation-cleanup/ipi-conf-gcp-filestore-workload-identity-federation-cleanup-commands.sh
index 0f3ae3e471693..3e16129430ba3 100644
--- a/ci-operator/step-registry/ipi/conf/gcp/filestore-workload-identity-federation-cleanup/ipi-conf-gcp-filestore-workload-identity-federation-cleanup-commands.sh
+++ b/ci-operator/step-registry/ipi/conf/gcp/filestore-workload-identity-federation-cleanup/ipi-conf-gcp-filestore-workload-identity-federation-cleanup-commands.sh
@@ -36,12 +36,14 @@ fi
 # configuration file should export HTTP_PROXY, HTTPS_PROXY, and NO_PROXY
 # environment variables, as well as their lowercase equivalents (note
 # that libcurl doesn't recognize the uppercase variables).
-if test -f "${SHARED_DIR}/proxy-conf.sh"
-then
-	# shellcheck disable=SC1091
-	source "${SHARED_DIR}/proxy-conf.sh"
-	logger "INFO" "Loaded proxy configuration from ${SHARED_DIR}/proxy-conf.sh"
-fi
+
+# The proxy is used to access cluster api, while there is no access to cluster, remove thispart
+#if test -f "${SHARED_DIR}/proxy-conf.sh"
+#then
+#	# shellcheck disable=SC1091
+#	source "${SHARED_DIR}/proxy-conf.sh"
+#	logger "INFO" "Loaded proxy configuration from ${SHARED_DIR}/proxy-conf.sh"
+#fi
 
 GOOGLE_PROJECT_ID="$(<${CLUSTER_PROFILE_DIR}/openshift_gcp_project)"
 export GCP_SHARED_CREDENTIALS_FILE="${CLUSTER_PROFILE_DIR}/gce.json"


Reviews:
user: login: jianli-wei
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T03:19:17Z
user: login: chao007
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-17T07:11:23Z
user: login: jianlinliu
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-30T02:42:51Z
user: login: jianlinliu
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-30T02:45:21Z
user: login: jianlinliu
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-30T02:47:57Z
user: login: jianlinliu
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-30T02:48:46Z
user: login: jianlinliu
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-08T02:03:50Z
user: login: jianlinliu
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-08T02:05:18Z
user: login: jianlinliu
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-08T02:05:24Z
user: login: jianlinliu
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-08T02:05:49Z
user: login: liangxia
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-09T07:26:28Z
user: login: liangxia
state: APPROVED
author_association: CONTRIBUTOR
submitted_at: 2025-05-12T07:12:26Z

Review comments:
diff_hunk: @@ -0,0 +1,22 @@
+chain:
+  as: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision
+  steps:
+  - ref: gcp-provision-minimal-permission
+  - ref: gcp-provision-vpc
+  - ref: ignition-bastionhost
+  - ref: gcp-provision-bastionhost
+  - chain: ipi-conf-gcp
+  - ref: ipi-conf-proxy
+  - ref: ipi-conf-manual-creds
+  - ref: ipi-conf-gcp-oidc-creds-provision
+  - ref: ipi-conf-manual-creds-remove-unnecessary-creds
+  - chain: ipi-install
+  - ref: enable-qe-catalogsource
+  - chain: cucushift-installer-check
+  - ref: cucushift-installer-check-gcp-credentials-mode
+  - chain: ipi-gcp-pre-manual-oidc-workload-identity-filestore
path: ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/provision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision-chain.yaml
user: login: jianli-wei
body: @chao007 Could you tell how this chain is like? Thanks! 
created_at: 2025-04-15T03:19:05Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,22 @@
+chain:
+  as: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision
+  steps:
+  - ref: gcp-provision-minimal-permission
+  - ref: gcp-provision-vpc
+  - ref: ignition-bastionhost
+  - ref: gcp-provision-bastionhost
+  - chain: ipi-conf-gcp
+  - ref: ipi-conf-proxy
+  - ref: ipi-conf-manual-creds
+  - ref: ipi-conf-gcp-oidc-creds-provision
+  - ref: ipi-conf-manual-creds-remove-unnecessary-creds
+  - chain: ipi-install
+  - ref: enable-qe-catalogsource
+  - chain: cucushift-installer-check
+  - ref: cucushift-installer-check-gcp-credentials-mode
+  - chain: ipi-gcp-pre-manual-oidc-workload-identity-filestore
path: ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/provision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision-chain.yaml
user: login: chao007
body: @jianli-wei  This chain is to [install filestore csi operator](https://github.com/openshift/release/blob/7d103fcbc84648be4f55e7f61b03bb7c1210386d/ci-operator/step-registry/ipi/gcp/pre/manual-oidc-workload-identity-filestore/ipi-gcp-pre-manual-oidc-workload-identity-filestore-chain.yaml#L2C1-L3C1) 
created_at: 2025-04-17T07:11:23Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,22 @@
+chain:
+  as: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision
+  steps:
+  - ref: gcp-provision-minimal-permission
+  - ref: gcp-provision-vpc
+  - ref: ignition-bastionhost
+  - ref: gcp-provision-bastionhost
+  - chain: ipi-conf-gcp
+  - ref: ipi-conf-proxy
+  - ref: ipi-conf-manual-creds
+  - ref: ipi-conf-gcp-oidc-creds-provision
+  - ref: ipi-conf-manual-creds-remove-unnecessary-creds
+  - chain: ipi-install
+  - ref: enable-qe-catalogsource
+  - chain: cucushift-installer-check
+  - ref: cucushift-installer-check-gcp-credentials-mode
path: ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/provision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-provision-chain.yaml
user: login: jianlinliu
body: I think we can directly replace the above steps with `chain: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-provision`
created_at: 2025-04-30T02:42:51Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,9 @@
+chain:
+  as: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-deprovision
+  steps:
+  - chain: cucushift-installer-rehearse-gcp-ipi-proxy-deprovision
+  - ref: ipi-conf-gcp-filestore-workload-identity-federation-cleanup
+  - ref: ipi-conf-gcp-oidc-creds-deprovision
path: ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/deprovision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-deprovision-chain.yaml
user: login: jianlinliu
body: ```suggestion
  - chain: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-deprovision
  - ref: ipi-conf-gcp-filestore-workload-identity-federation-cleanup
```
created_at: 2025-04-30T02:45:21Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,9 @@
+chain:
+  as: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-deprovision
+  steps:
+  - chain: cucushift-installer-rehearse-gcp-ipi-proxy-deprovision
+  - ref: ipi-conf-gcp-filestore-workload-identity-federation-cleanup
path: ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/deprovision/cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity-filestore-csi-deprovision-chain.yaml
user: login: jianlinliu
body: In the step, I saw:
```
if test -f "${SHARED_DIR}/proxy-conf.sh"
then
        # shellcheck disable=SC1091
        source "${SHARED_DIR}/proxy-conf.sh"
        logger "INFO" "Loaded proxy configuration from ${SHARED_DIR}/proxy-conf.sh"
fi
```

The proxy is used to access cluster api, while there is no access to cluster, so I do not think we need the block.
created_at: 2025-04-30T02:47:57Z
author_association: CONTRIBUTOR
diff_hunk: @@ -1836,6 +1836,21 @@ tests:
     test:
     - chain: openshift-e2e-test-qe
     workflow: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity
+- as: gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28
path: ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.19__multi-nightly.yaml
user: login: jianlinliu
body: We can directly replace `gcp-ipi-proxy-oidc-mini-perm-arm-f28` with this new one.
created_at: 2025-04-30T02:48:45Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,8 @@
+approvers:
+- jianlinliu
+- gpei
+- jianli-wei
path: ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/provision/OWNERS
user: login: jianlinliu
body: @chao007 I guess you need to be the owner of this step, right ?
created_at: 2025-05-08T02:03:50Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,8 @@
+approvers:
+- jianlinliu
+- gpei
+- jianli-wei
path: ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/deprovision/OWNERS
user: login: jianlinliu
body: @chao007 I guess you need to be the owner of this step, right ?
created_at: 2025-05-08T02:05:18Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,8 @@
+approvers:
path: ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/filestore-csi/OWNERS
user: login: jianlinliu
body: @chao007 I guess you need to be the owner of this step, right ?
created_at: 2025-05-08T02:05:24Z
author_association: CONTRIBUTOR
diff_hunk: @@ -36,12 +36,14 @@ fi
 # configuration file should export HTTP_PROXY, HTTPS_PROXY, and NO_PROXY
 # environment variables, as well as their lowercase equivalents (note
 # that libcurl doesn't recognize the uppercase variables).
-if test -f "${SHARED_DIR}/proxy-conf.sh"
-then
+
+# The proxy is used to access cluster api, while there is no access to cluster, remove thispart
+#if test -f "${SHARED_DIR}/proxy-conf.sh"
+#then
 	# shellcheck disable=SC1091
path: ci-operator/step-registry/ipi/conf/gcp/filestore-workload-identity-federation-cleanup/ipi-conf-gcp-filestore-workload-identity-federation-cleanup-commands.sh
user: login: jianlinliu
body: ```suggestion
#	# shellcheck disable=SC1091
```
created_at: 2025-05-08T02:05:49Z
author_association: CONTRIBUTOR
diff_hunk: @@ -2047,10 +2047,12 @@ tests:
     test:
     - chain: openshift-e2e-test-qe-destructive
     workflow: cucushift-installer-rehearse-gcp-ipi-proxy-cco-manual-workload-identity
-- as: gcp-ipi-proxy-oidc-mini-perm-arm-f28
-  cron: 49 14 22 * *
+- as: gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28
path: ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.19__multi-nightly.yaml
user: login: liangxia
body: Do we need this change for 4.20 ?
created_at: 2025-05-09T07:26:27Z
author_association: CONTRIBUTOR

PR comments:
user: login: chao007
created_at: 2025-03-26T11:40:27Z
body: /pj-rehearse periodic-ci-openshift-openshift-tests-private-release-4.19-multi-nightly-gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28
author_association: CONTRIBUTOR
user: login: openshift-ci-robot
created_at: 2025-03-26T11:40:30Z
body: @chao007: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.
author_association: CONTRIBUTOR
user: login: chao007
created_at: 2025-04-09T02:16:57Z
body: /pj-rehearse periodic-ci-openshift-openshift-tests-private-release-4.19-multi-nightly-gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28


author_association: CONTRIBUTOR
user: login: openshift-ci-robot
created_at: 2025-04-09T02:17:00Z
body: @chao007: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.
author_association: CONTRIBUTOR
user: login: chao007
created_at: 2025-04-11T02:57:44Z
body: /pj-rehearse periodic-ci-openshift-openshift-tests-private-release-4.19-multi-nightly-gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28
author_association: CONTRIBUTOR
user: login: openshift-ci-robot
created_at: 2025-04-11T02:57:47Z
body: @chao007: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.
author_association: CONTRIBUTOR
user: login: chao007
created_at: 2025-04-11T06:02:16Z
body: /pj-rehearse periodic-ci-openshift-openshift-tests-private-release-4.19-multi-nightly-gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28

author_association: CONTRIBUTOR
user: login: openshift-ci-robot
created_at: 2025-04-11T06:02:18Z
body: @chao007: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.
author_association: CONTRIBUTOR
user: login: jianli-wei
created_at: 2025-04-29T06:10:41Z
body: LGTM
author_association: CONTRIBUTOR
user: login: chao007
created_at: 2025-04-30T02:31:43Z
body: /pj-rehearse ack
author_association: CONTRIBUTOR
user: login: openshift-ci-robot
created_at: 2025-04-30T02:31:45Z
body: @chao007: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.
author_association: CONTRIBUTOR
user: login: openshift-ci[bot]
created_at: 2025-04-30T08:50:11Z
body: @chao007: The following test **failed**, say `/retest` to rerun all failed tests or `/retest-required` to rerun all mandatory failed tests:

Test name | Commit | Details | Required | Rerun command
--- | --- | --- | --- | ---
ci/rehearse/periodic-ci-openshift-openshift-tests-private-release-4.19-multi-nightly-gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28 | 65225ae2b9cfd0a9c9ad529890894201501435ad | [link](https://qe-private-deck-ci.apps.ci.l2s4.p1.openshiftapps.com/view/gs/qe-private-deck/pr-logs/pull/openshift_release/63203/rehearse-63203-periodic-ci-openshift-openshift-tests-private-release-4.19-multi-nightly-gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28/1910574924670439424) | unknown | `/pj-rehearse periodic-ci-openshift-openshift-tests-private-release-4.19-multi-nightly-gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28`

[Full PR test history](https://prow.ci.openshift.org/pr-history?org=openshift&repo=release&pr=63203). [Your PR dashboard](https://prow.ci.openshift.org/pr?query=is:pr+state:open+author:chao007).

<details>

Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md).  If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes-sigs/prow](https://github.com/kubernetes-sigs/prow/issues/new?title=Prow%20issue:) repository. I understand the commands that are listed [here](https://go.k8s.io/bot-commands).
</details>
<!-- test report -->
author_association: CONTRIBUTOR
user: login: jianlinliu
created_at: 2025-05-06T03:43:54Z
body: @chao007 Most looks good to me, only left one [comment.](https://github.com/openshift/release/pull/63203#discussion_r2067773664).
author_association: CONTRIBUTOR
user: login: jianlinliu
created_at: 2025-05-08T11:41:55Z
body: /lgtm
author_association: CONTRIBUTOR
user: login: jianlinliu
created_at: 2025-05-09T07:09:49Z
body: cc @liangxia to review.
author_association: CONTRIBUTOR
user: login: openshift-ci-robot
created_at: 2025-05-09T12:03:53Z
body: [REHEARSALNOTIFIER] 
@chao007: the `pj-rehearse` plugin accommodates running rehearsal tests for the changes in this PR. Expand **'Interacting with pj-rehearse'** for usage details. The following rehearsable tests have been affected by this change:

Test name | Repo | Type | Reason
--- | --- | --- | ---
pull-ci-openshift-gcp-filestore-csi-driver-operator-main-e2e-gcp-manual-oidc-filestore | openshift/gcp-filestore-csi-driver-operator | presubmit | Registry content changed
pull-ci-openshift-gcp-filestore-csi-driver-operator-release-4.20-e2e-gcp-manual-oidc-filestore | openshift/gcp-filestore-csi-driver-operator | presubmit | Registry content changed
pull-ci-openshift-gcp-filestore-csi-driver-operator-release-4.19-e2e-gcp-manual-oidc-filestore | openshift/gcp-filestore-csi-driver-operator | presubmit | Registry content changed
pull-ci-openshift-gcp-filestore-csi-driver-operator-release-4.18-e2e-gcp-manual-oidc-filestore | openshift/gcp-filestore-csi-driver-operator | presubmit | Registry content changed
pull-ci-openshift-gcp-filestore-csi-driver-operator-release-4.17-e2e-gcp-manual-oidc-filestore | openshift/gcp-filestore-csi-driver-operator | presubmit | Registry content changed
periodic-ci-openshift-openshift-tests-private-release-4.19-multi-nightly-gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28 | N/A | periodic | Periodic changed
periodic-ci-openshift-openshift-tests-private-release-4.20-multi-nightly-gcp-ipi-proxy-oidc-mini-perm-filestore-csi-arm-f28 | N/A | periodic | Periodic changed

<details>
<summary>Interacting with pj-rehearse</summary>

Comment: `/pj-rehearse` to run up to 5 rehearsals
Comment: `/pj-rehearse skip` to opt-out of rehearsals
Comment: `/pj-rehearse {test-name}`, with each test separated by a space, to run one or more specific rehearsals
Comment: `/pj-rehearse more` to run up to 10 rehearsals
Comment: `/pj-rehearse max` to run up to 25 rehearsals
Comment: `/pj-rehearse auto-ack` to run up to 5 rehearsals, and add the `rehearsals-ack` label on success
Comment: `/pj-rehearse list` to get an up-to-date list of affected jobs
Comment: `/pj-rehearse abort` to abort all active rehearsals
Comment: `/pj-rehearse network-access-allowed` to allow rehearsals of tests that have the `restrict_network_access` field set to `false`. This must be executed by an `openshift` org member who is **not** the PR author

Once you are satisfied with the results of the rehearsals, comment: `/pj-rehearse ack` to unblock merge. When the `rehearsals-ack` label is present on your PR, merge will no longer be blocked by rehearsals.
If you would like the `rehearsals-ack` label removed, comment: `/pj-rehearse reject` to re-block merging.
</details>
author_association: CONTRIBUTOR
user: login: jianlinliu
created_at: 2025-05-12T06:55:04Z
body: /lgtm
author_association: CONTRIBUTOR
user: login: openshift-ci[bot]
created_at: 2025-05-12T07:12:51Z
body: [APPROVALNOTIFIER] This PR is **APPROVED**

This pull-request has been approved by: *<a href="https://github.com/openshift/release/pull/63203#" title="Author self-approved">chao007</a>*, *<a href="https://github.com/openshift/release/pull/63203#issuecomment-2871101304" title="LGTM">jianlinliu</a>*, *<a href="https://github.com/openshift/release/pull/63203#pullrequestreview-2832073093" title="Approved">liangxia</a>*

The full list of commands accepted by this bot can be found [here](https://go.k8s.io/bot-commands?repo=openshift%2Frelease).

The pull request process is described [here](https://git.k8s.io/community/contributors/guide/owners.md#the-code-review-process)

<details >
Needs approval from an approver in each of these files:

- ~~[ci-operator/config/openshift/openshift-tests-private/OWNERS](https://github.com/openshift/release/blob/master/ci-operator/config/openshift/openshift-tests-private/OWNERS)~~ [liangxia]
- ~~[ci-operator/jobs/openshift/openshift-tests-private/OWNERS](https://github.com/openshift/release/blob/master/ci-operator/jobs/openshift/openshift-tests-private/OWNERS)~~ [liangxia]
- ~~[ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/OWNERS](https://github.com/openshift/release/blob/master/ci-operator/step-registry/cucushift/installer/rehearse/gcp/ipi/proxy/cco-manual-workload-identity/OWNERS)~~ [jianlinliu,liangxia]
- ~~[ci-operator/step-registry/ipi/conf/gcp/filestore-workload-identity-federation-cleanup/OWNERS](https://github.com/openshift/release/blob/master/ci-operator/step-registry/ipi/conf/gcp/filestore-workload-identity-federation-cleanup/OWNERS)~~ [jianlinliu,liangxia]

Approvers can indicate their approval by writing `/approve` in a comment
Approvers can cancel approval by writing `/approve cancel` in a comment
</details>
<!-- META={"approvers":[]} -->
author_association: CONTRIBUTOR
user: login: jianlinliu
created_at: 2025-05-12T10:25:09Z
body: /pj-rehearse ack
author_association: CONTRIBUTOR
user: login: openshift-ci-robot
created_at: 2025-05-12T10:25:12Z
body: @jianlinliu: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.
author_association: CONTRIBUTOR