Skip to content

hypershift/gcp: enable ImageRegistry capability for GCP hosted clusters#78873

Open
cblecker wants to merge 1 commit intoopenshift:mainfrom
cblecker:hypershift-gcp-enable-imageregistry
Open

hypershift/gcp: enable ImageRegistry capability for GCP hosted clusters#78873
cblecker wants to merge 1 commit intoopenshift:mainfrom
cblecker:hypershift-gcp-enable-imageregistry

Conversation

@cblecker
Copy link
Copy Markdown
Member

@cblecker cblecker commented May 5, 2026

Summary

  • Remove --disable-cluster-capabilities ImageRegistry from hypershift-gcp-create chain so GCP hosted clusters get a functional image registry (Console and Ingress remain disabled)
  • Enable storage.googleapis.com in the HC project API list so the image registry operator can create its GCS bucket on startup

Test plan

  • Verify e2e-v2-gke job completes with image registry operator in Available state
  • Confirm GCS bucket is created in the HC project during cluster setup
  • Confirm HC project deletion in deprovision cleans up the bucket automatically

Summary by CodeRabbit

  • Bug Fixes
    • ImageRegistry cluster capability is now enabled by default in HyperShift on GCP
    • Added Google Cloud Storage API to automatic enablement during GCP cluster provisioning

Remove ImageRegistry from disabled capabilities so GCP hosted clusters
get a functional image registry. Also enable storage.googleapis.com in
the HC project so the image registry operator can create its GCS bucket.

Assisted-by: Claude:claude-sonnet-4-6[1m]
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 5, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: f22fa219-9ef0-4d3b-9dda-608ca53deb8c

📥 Commits

Reviewing files that changed from the base of the PR and between c50edf3 and 8ae653b.

📒 Files selected for processing (2)
  • ci-operator/step-registry/hypershift/gcp/create/hypershift-gcp-create-chain.yaml
  • ci-operator/step-registry/hypershift/gcp/gke/provision/hypershift-gcp-gke-provision-commands.sh
💤 Files with no reviewable changes (1)
  • ci-operator/step-registry/hypershift/gcp/create/hypershift-gcp-create-chain.yaml

Walkthrough

HyperShift GCP provisioning infrastructure is updated to enable ImageRegistry functionality: the cluster creation command no longer disables the ImageRegistry capability, and the hosted cluster project API enablement adds storage.googleapis.com to its services list.

Changes

ImageRegistry Enablement for HyperShift GCP

Layer / File(s) Summary
Infrastructure API Setup
ci-operator/step-registry/hypershift/gcp/gke/provision/hypershift-gcp-gke-provision-commands.sh
storage.googleapis.com is added to the gcloud services enable list for the hosted cluster project.
Cluster Capability Configuration
ci-operator/step-registry/hypershift/gcp/create/hypershift-gcp-create-chain.yaml
The --disable-cluster-capabilities ImageRegistry flag is removed from the HyperShift CLI invocation, allowing ImageRegistry to remain enabled while Console and Ingress continue to be disabled.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

🚥 Pre-merge checks | ✅ 12
✅ Passed checks (12 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: enabling the ImageRegistry capability for GCP hosted clusters by removing the disable flag.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed The check applies only to Ginkgo test definitions in Go files. The PR modifies only YAML and shell scripts (CI infrastructure/provisioning), which cannot contain Ginkgo tests. Check not applicable.
Test Structure And Quality ✅ Passed PR modifies CI Operator configuration files (YAML/bash), not Ginkgo test code. The test quality check is not applicable here.
Microshift Test Compatibility ✅ Passed No new Ginkgo e2e tests added. PR contains only CI infrastructure configuration files (YAML chains, workflows, shell scripts). MicroShift compatibility check not applicable.
Single Node Openshift (Sno) Test Compatibility ✅ Passed This PR modifies CI/CD configuration files (YAML and shell script) to enable ImageRegistry for GCP clusters. No Ginkgo e2e tests are added, so SNO compatibility check does not apply.
Topology-Aware Scheduling Compatibility ✅ Passed PR modifies CI/CD infrastructure automation scripts only, not deployment manifests or operator code. No scheduling constraints introduced.
Ote Binary Stdout Contract ✅ Passed The OTE Binary Stdout Contract check applies to Go test/OTE binaries. This PR modifies only YAML and shell script files, not Go code.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed No Ginkgo e2e tests were added in this PR. Changes are limited to YAML configuration and bash shell scripts for GCP cluster provisioning infrastructure. Custom check is not applicable.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

@cristianoveiga
Copy link
Copy Markdown
Contributor

/lgtm

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@cblecker: 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-hypershift-main-e2e-gke openshift/hypershift presubmit Registry content changed
pull-ci-openshift-hypershift-release-5.1-e2e-gke openshift/hypershift presubmit Registry content changed
pull-ci-openshift-hypershift-release-5.0-e2e-gke openshift/hypershift presubmit Registry content changed
pull-ci-openshift-hypershift-release-4.23-e2e-gke openshift/hypershift presubmit Registry content changed
pull-ci-openshift-hypershift-release-4.22-e2e-gke openshift/hypershift presubmit Registry content changed
pull-ci-openshift-hypershift-main-e2e-v2-gke openshift/hypershift presubmit Registry content changed
pull-ci-openshift-hypershift-release-5.1-e2e-v2-gke openshift/hypershift presubmit Registry content changed
pull-ci-openshift-hypershift-release-5.0-e2e-v2-gke openshift/hypershift presubmit Registry content changed
pull-ci-openshift-hypershift-release-4.23-e2e-v2-gke openshift/hypershift presubmit Registry content changed
pull-ci-openshift-hypershift-release-4.22-e2e-v2-gke openshift/hypershift presubmit Registry content changed

Prior to this PR being merged, you will need to either run and acknowledge or opt to skip these rehearsals.

Interacting with pj-rehearse

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.

@cristianoveiga
Copy link
Copy Markdown
Contributor

/pj-rehearse pull-ci-openshift-hypershift-main-e2e-v2-gke

@openshift-ci openshift-ci Bot requested review from jimdaga and patjlm May 5, 2026 20:23
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 5, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: cblecker, cristianoveiga

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label May 5, 2026
@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@cristianoveiga: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label May 5, 2026
@cblecker
Copy link
Copy Markdown
Member Author

cblecker commented May 5, 2026

/pj-rehearse pull-ci-openshift-hypershift-main-e2e-v2-gke

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@cblecker: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 5, 2026

@cblecker: 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/openshift/hypershift/main/e2e-v2-gke 8ae653b link unknown /pj-rehearse pull-ci-openshift-hypershift-main-e2e-v2-gke

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. lgtm Indicates that a PR is ready to be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants