Skip to content

Job for Hypershift with KubeVirt in disconnected env#78382

Merged
openshift-merge-bot[bot] merged 2 commits into
openshift:mainfrom
mgencur:kubevirt_disconnected
Jun 4, 2026
Merged

Job for Hypershift with KubeVirt in disconnected env#78382
openshift-merge-bot[bot] merged 2 commits into
openshift:mainfrom
mgencur:kubevirt_disconnected

Conversation

@mgencur
Copy link
Copy Markdown
Contributor

@mgencur mgencur commented Apr 27, 2026

Related to https://redhat.atlassian.net/browse/OCPBUGS-84113

  • Add e2e-kubevirt-metal-ovn-disconnected to the release-4.22 periodics-mce config using the existing MCE disconnected workflow. The workflow is updated to include deploy-konflux-operator for Konflux-based operator deployment in disconnected environments.
  • Mirror CAPI-specific OCP release for disconnected KubeVirt environments
  • This PR re-uses some fixes from Fix the oc-mirror issue #75258 which was an attempt to fix the older job.

Summary by CodeRabbit

  • Tests

    • Added a new periodic disconnected conformance test (e2e-kubevirt-metal-ovn-disconnected) with node count = 2 and pinned component versions.
  • Bug Fixes

    • Improved image mirroring reliability and auth: mirror runs use explicit auth, retry discovery, and include v1 mode; mirroring tolerates signature issues and supports TLS/HTTP overrides; added a version-specific release-mirroring workaround.
  • Chores

    • Disconnected workflows deploy Konflux earlier, adjust operator catalog targets/sources/channels, enable a Konflux registry-proxy, and add a pre/post execution pause.

@openshift-ci openshift-ci Bot requested review from cblecker and csrwng April 27, 2026 06:56
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 27, 2026

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

Walkthrough

Adds a new intranet periodic disconnected conformance job and updates CI step scripts and a workflow to change registry discovery/auth flow, skopeo usage, oc-mirror/oc adm mirroring flags (including a 4.21/4.22 release-mirroring workaround), TLS/HTTP transport overrides, and pre-deploy/configure Konflux.

Changes

Cohort / File(s) Summary
Periodic job config
ci-operator/config/openshift/hypershift/openshift-hypershift-release-4.22__periodics-mce.yaml
Adds e2e-kubevirt-metal-ovn-disconnected intranet periodic job with env vars (e.g., HYPERSHIFT_NODE_COUNT, MCE_VERSION, MIRROR_OLM_REMOTE_INDEX, ODF_OPERATOR_SUB_CHANNEL) and references the disconnected workflow.
Registry auth, retries & exported vars
ci-operator/step-registry/hypershift/kubevirt/baremetalds/redhat-operators/hypershift-kubevirt-baremetalds-redhat-operators-commands.sh
Adds exported defaults (REDHAT_OPERATORS_INDEX_TAG, DISCONNECTED, CCS_OPERATOR_PACKAGES, CCS_OPERATOR_CHANNELS); changes mirror-registry discovery to a retry loop; always extracts pull-secret from openshift-config, performs skopeo login for mirror and registry.redhat.io, and passes --authfile /home/pull-secret to skopeo copy.
oc-mirror signature flags & release workaround
ci-operator/step-registry/hypershift/kubevirt/create/disconnected/workarounds/...-commands.sh
Adds --remove-signatures and --ignore-release-signature to oc-mirror; implements OCPBUGS-74263 workaround: select specific quay release digest for 4.21/4.22, mirror the release locally with oc adm release mirror, and apply an ImageDigestMirrorSet redirecting quay release repo to the mirrored image.
oc-mirror TLS/HTTP overrides
ci-operator/step-registry/hypershift/mce/install/disconnected/hypershift-mce-install-disconnected-commands.sh
Adds --dest-skip-tls, --source-skip-tls, and --source-use-http to oc-mirror invocations.
oc-mirror --v1 flag (mirroring runs)
ci-operator/step-registry/hypershift/kubevirt/install/disconnected/hypershift-kubevirt-install-disconnected-commands.sh, ci-operator/step-registry/hypershift/kubevirt/baremetalds/.../redhat-operators-commands.sh
Adds --v1 to the three existing oc-mirror invocations across the disconnected mirroring steps.
Workflow updates / Konflux pre-deploy
ci-operator/step-registry/hypershift/mce/kubevirt/baremetalds/disconnected/conformance/...-workflow.yaml
Adds a post: wait step; pre-deploys Konflux before hypershift-mce-install; updates operator subscription sources/channels; adds Konflux env vars to restrict targets (metallb,local-storage), disable Konflux deploying operators, and enable registry proxy on port 6004.

Sequence Diagram(s)

sequenceDiagram
  participant CI as CI Job
  participant Steps as CI Step Scripts
  participant Auth as Pull-Secret/Auth
  participant Skopeo as Skopeo
  participant OcMirror as oc-mirror / oc adm
  participant MirrorReg as Mirror Registry
  participant Cluster as Target Cluster
  participant Konflux as Konflux Operator
  participant MCE as hypershift-mce-install

  CI->>Steps: start job
  Steps->>Auth: extract pull-secret -> /home/pull-secret
  Steps->>Skopeo: skopeo login (mirror) & skopeo login (registry.redhat.io)
  Steps->>Skopeo: skopeo copy --authfile /home/pull-secret ...
  Steps->>OcMirror: oc-mirror (--v1, --source-use-http, --*_skip-tls, --remove-signatures, --ignore-release-signature)
  OcMirror->>MirrorReg: push mirrored images
  Steps->>OcMirror: oc adm release mirror (select digest for 4.21/4.22) -> mirror release locally
  Steps->>Cluster: apply ImageDigestMirrorSet (redirect quay release -> mirrored image)
  CI->>Konflux: pre-deploy Konflux (targets restricted, deploy disabled, registry proxy on 6004)
  Konflux->>Cluster: configure operator catalogs/targets
  CI->>MCE: run hypershift-mce-install
  MCE->>Cluster: install MCE and run conformance
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

🚥 Pre-merge checks | ✅ 11 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (11 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Job for Hypershift with KubeVirt in disconnected env' accurately and concisely summarizes the primary change: adding a new e2e test job for Hypershift with KubeVirt in a disconnected environment.
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 This PR modifies CI/CD configuration files in openshift/release repository, not application code with Ginkgo tests. It does not introduce or modify Ginkgo test code, only CI job identifiers.
Test Structure And Quality ✅ Passed This PR contains no Ginkgo test files, making the custom check for test code quality not applicable.
Microshift Test Compatibility ✅ Passed PR modifies only CI infrastructure files (YAML configs and shell scripts) with no Ginkgo e2e test additions
Single Node Openshift (Sno) Test Compatibility ✅ Passed This pull request does not add any new Ginkgo e2e tests; changes consist entirely of CI job configuration YAML files, shell scripts, and workflow definitions.
Topology-Aware Scheduling Compatibility ✅ Passed PR does not introduce new topology-aware scheduling constraints that break SNO, Two-Node, or HyperShift topologies.
Ote Binary Stdout Contract ✅ Passed PR modifies only CI infrastructure configuration files (YAML) and shell scripts, not OTE binary code or Go test files subject to the OTE Binary Stdout Contract.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed No Ginkgo e2e tests are being added. Changes only modify CI configuration files, shell scripts, and workflow definitions in the openshift/release repository.

✏️ 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.

@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Apr 27, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In
`@ci-operator/step-registry/hypershift/kubevirt/create/disconnected/workarounds/hypershift-kubevirt-create-disconnected-workarounds-commands.sh`:
- Around line 104-134: The ImageContentSourcePolicy apply block (the oc apply -f
- <<END that creates kind: ImageContentSourcePolicy named
mirror-config-capi-specific-release) is unconditionally applied even when
CLUSTER_VERSION isn't 4.21/4.22, causing invalid redirects; gate that oc apply
behind the same CLUSTER_VERSION check used for the oc adm release mirror blocks
(or use a combined conditional for 4.21 OR 4.22) and ensure you emit the mirror
configuration using the IDMS path or re-run the existing ICSP→IDMS
migration/wait sequence after creating it so the policy is migrated consistently
with the earlier workaround.

In
`@ci-operator/step-registry/hypershift/mce/kubevirt/baremetalds/disconnected/conformance/hypershift-mce-kubevirt-baremetalds-disconnected-conformance-workflow.yaml`:
- Around line 25-27: The post step currently lists "wait" first which applies
its defaults (TIMEOUT="+3 hours", PR_ONLY="false") and will delay teardown;
update the post sequence so "wait" is either removed or moved to the end (after
"hypershift-kubevirt-baremetalds-disconnected-highlightmissingimages") or
explicitly override its defaults by adding TIMEOUT and PR_ONLY variables for the
"wait" ref; modify the "post" block containing refs "wait" and
"hypershift-kubevirt-baremetalds-disconnected-highlightmissingimages"
accordingly to ensure teardown is not deferred for three hours on every run.
- Around line 39-40: The pre-step ordering is wrong: move the ref
"deploy-konflux-operator" so it appears after "hypershift-mce-install" in the
workflow refs list; specifically, reorder the two ref entries so that
"hypershift-mce-install" runs first (creating ${SHARED_DIR}/mirror_registry_url
in hypershift-mce-install-disconnected-commands.sh) and then
"deploy-konflux-operator" executes and can read that file.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

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

Review profile: CHILL

Plan: Enterprise

Run ID: a38d580a-23d6-49ed-8cb3-eda10bb58cb2

📥 Commits

Reviewing files that changed from the base of the PR and between a93e009 and f605e7d.

⛔ Files ignored due to path filters (1)
  • ci-operator/jobs/openshift/hypershift/openshift-hypershift-release-4.22-periodics.yaml is excluded by !ci-operator/jobs/**
📒 Files selected for processing (5)
  • ci-operator/config/openshift/hypershift/openshift-hypershift-release-4.22__periodics-mce.yaml
  • ci-operator/step-registry/hypershift/kubevirt/baremetalds/redhat-operators/hypershift-kubevirt-baremetalds-redhat-operators-commands.sh
  • ci-operator/step-registry/hypershift/kubevirt/create/disconnected/workarounds/hypershift-kubevirt-create-disconnected-workarounds-commands.sh
  • ci-operator/step-registry/hypershift/mce/install/disconnected/hypershift-mce-install-disconnected-commands.sh
  • ci-operator/step-registry/hypershift/mce/kubevirt/baremetalds/disconnected/conformance/hypershift-mce-kubevirt-baremetalds-disconnected-conformance-workflow.yaml

Comment on lines +39 to 40
- ref: deploy-konflux-operator
- ref: hypershift-mce-install
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot Apr 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

Move deploy-konflux-operator after hypershift-mce-install.

In disconnected mode, deploy-konflux-operator reads ${SHARED_DIR}/mirror_registry_url, but this workflow only creates that file inside hypershift-mce-install-disconnected-commands.sh at the very end. With the current order, the new pre-step can fail before it can resolve the internal registry.

Suggested fix
-    - ref: deploy-konflux-operator
-    - ref: hypershift-mce-install
+    - ref: hypershift-mce-install
+    - ref: deploy-konflux-operator
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- ref: deploy-konflux-operator
- ref: hypershift-mce-install
- ref: hypershift-mce-install
- ref: deploy-konflux-operator
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@ci-operator/step-registry/hypershift/mce/kubevirt/baremetalds/disconnected/conformance/hypershift-mce-kubevirt-baremetalds-disconnected-conformance-workflow.yaml`
around lines 39 - 40, The pre-step ordering is wrong: move the ref
"deploy-konflux-operator" so it appears after "hypershift-mce-install" in the
workflow refs list; specifically, reorder the two ref entries so that
"hypershift-mce-install" runs first (creating ${SHARED_DIR}/mirror_registry_url
in hypershift-mce-install-disconnected-commands.sh) and then
"deploy-konflux-operator" executes and can read that file.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't use hypershift-mce-install-disconnected step. The mirror_registry_url is set in step enable-qe-catalogsource-baremetalds-proxy-server which runs before deploy-konflux-operator.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Find enable-qe-catalogsource-baremetalds-proxy-server step script
fd -i 'enable-qe-catalogsource-baremetalds-proxy-server' --type f

# Find deploy-konflux-operator step script
fd -i 'deploy-konflux-operator' --type f

Length of output: 672


🏁 Script executed:

#!/bin/bash
echo "=== enable-qe-catalogsource-baremetalds-proxy-server-commands.sh ==="
cat ci-operator/step-registry/enable-qe-catalogsource/baremetalds/proxy-server/enable-qe-catalogsource-baremetalds-proxy-server-commands.sh

echo ""
echo "=== deploy-konflux-operator-commands.sh ==="
cat ci-operator/step-registry/deploy-konflux-operator/deploy-konflux-operator-commands.sh

Length of output: 8525


@mgencur, you're absolutely right — I apologize for the incorrect review. The script confirms it: enable-qe-catalogsource-baremetalds-proxy-server-commands.sh writes ${SHARED_DIR}/mirror_registry_url (via oc get imagecontentsourcepolicy) and runs before deploy-konflux-operator, so the dependency is already satisfied by the time deploy-konflux-operator reads that file. The current step ordering is correct.


📝 Learnings were identified and not saved (knowledge base disabled). Enable

@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Apr 27, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Apr 27, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

♻️ Duplicate comments (1)
ci-operator/step-registry/hypershift/mce/kubevirt/baremetalds/disconnected/conformance/hypershift-mce-kubevirt-baremetalds-disconnected-conformance-workflow.yaml (1)

26-26: ⚠️ Potential issue | 🟠 Major

Remove or gate the wait post step before merge.

At Line 26, wait runs with defaults (+3 hours, PR_ONLY=false), so every periodic run is delayed before teardown/gather steps.

Suggested change
 post:
-    - ref: wait
     - ref: hypershift-kubevirt-baremetalds-disconnected-highlightmissingimages
     - ref: hypershift-mce-dump
     - chain: gather-core-dump
     - chain: hypershift-mce-kubevirt-destroy
     - chain: baremetalds-ofcir-post
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@ci-operator/step-registry/hypershift/mce/kubevirt/baremetalds/disconnected/conformance/hypershift-mce-kubevirt-baremetalds-disconnected-conformance-workflow.yaml`
at line 26, The post-step referencing "ref: wait" should be removed or guarded
so periodic jobs aren't blocked; change the step that contains "ref: wait" to
either delete that post step entirely or add a conditional guard (e.g., check
PR_ONLY or run only on pull-request runs) so it only executes for PRs (for
example by testing PR_ONLY == "true" or using the workflow's pull-request
condition), ensuring teardown/gather steps run immediately for periodic jobs.
🧹 Nitpick comments (1)
ci-operator/step-registry/hypershift/kubevirt/create/disconnected/workarounds/hypershift-kubevirt-create-disconnected-workarounds-commands.sh (1)

108-114: Consider consolidating version checks into a single if/elif block.

The separate if statements work but leave mirror_image uninitialized if the version is neither 4.21 nor 4.22. While the outer guard at line 116 prevents usage in that case, consolidating improves clarity:

♻️ Suggested consolidation
-if [[ "${CLUSTER_VERSION}" == "4.22" ]]; then
-  mirror_image="quay.io/openshift-release-dev/ocp-release@sha256:7f183e9b5610a2c9f9aabfd5906b418adfbe659f441b019933426a19bf6a5962"
-fi
-
-if [[ "${CLUSTER_VERSION}" == "4.21" ]]; then
-  mirror_image="quay.io/openshift-release-dev/ocp-release@sha256:1f2c28ac126453a3b9e83b349822b9f1fb7662973a212f936b90fdc40e06eb58"
-fi
-
-if [[ "${CLUSTER_VERSION}" == "4.21" || "${CLUSTER_VERSION}" == "4.22" ]]; then
+case "${CLUSTER_VERSION}" in
+  "4.22")
+    mirror_image="quay.io/openshift-release-dev/ocp-release@sha256:7f183e9b5610a2c9f9aabfd5906b418adfbe659f441b019933426a19bf6a5962"
+    ;;
+  "4.21")
+    mirror_image="quay.io/openshift-release-dev/ocp-release@sha256:1f2c28ac126453a3b9e83b349822b9f1fb7662973a212f936b90fdc40e06eb58"
+    ;;
+  *)
+    mirror_image=""
+    ;;
+esac
+
+if [[ -n "${mirror_image}" ]]; then
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@ci-operator/step-registry/hypershift/kubevirt/create/disconnected/workarounds/hypershift-kubevirt-create-disconnected-workarounds-commands.sh`
around lines 108 - 114, Consolidate the two separate version checks into a
single if/elif block so CLUSTER_VERSION is evaluated once and mirror_image is
deterministically set for supported versions; replace the two `if [[
"${CLUSTER_VERSION}" == "4.22" ]]` and `if [[ "${CLUSTER_VERSION}" == "4.21" ]]`
blocks with `if [[ "${CLUSTER_VERSION}" == "4.22" ]]; then ... elif [[
"${CLUSTER_VERSION}" == "4.21" ]]; then ... fi` (reference: CLUSTER_VERSION and
mirror_image) and optionally add an `else` to explicitly unset or log an error
for unsupported versions.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In
`@ci-operator/step-registry/hypershift/kubevirt/create/disconnected/workarounds/hypershift-kubevirt-create-disconnected-workarounds-commands.sh`:
- Around line 62-65: Remove the unsupported --ignore-release-signature flag from
the two oc-mirror invocations that currently include it (the lines invoking
./oc-mirror with file://"${LOCALPATH}" and the second with
docker://${mirror_registry}); keep --remove-signatures as-is (or replace/add
--secure-policy if you need explicit signature verification behavior) so the
oc-mirror commands use only supported v2 flags.

---

Duplicate comments:
In
`@ci-operator/step-registry/hypershift/mce/kubevirt/baremetalds/disconnected/conformance/hypershift-mce-kubevirt-baremetalds-disconnected-conformance-workflow.yaml`:
- Line 26: The post-step referencing "ref: wait" should be removed or guarded so
periodic jobs aren't blocked; change the step that contains "ref: wait" to
either delete that post step entirely or add a conditional guard (e.g., check
PR_ONLY or run only on pull-request runs) so it only executes for PRs (for
example by testing PR_ONLY == "true" or using the workflow's pull-request
condition), ensuring teardown/gather steps run immediately for periodic jobs.

---

Nitpick comments:
In
`@ci-operator/step-registry/hypershift/kubevirt/create/disconnected/workarounds/hypershift-kubevirt-create-disconnected-workarounds-commands.sh`:
- Around line 108-114: Consolidate the two separate version checks into a single
if/elif block so CLUSTER_VERSION is evaluated once and mirror_image is
deterministically set for supported versions; replace the two `if [[
"${CLUSTER_VERSION}" == "4.22" ]]` and `if [[ "${CLUSTER_VERSION}" == "4.21" ]]`
blocks with `if [[ "${CLUSTER_VERSION}" == "4.22" ]]; then ... elif [[
"${CLUSTER_VERSION}" == "4.21" ]]; then ... fi` (reference: CLUSTER_VERSION and
mirror_image) and optionally add an `else` to explicitly unset or log an error
for unsupported versions.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

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

Review profile: CHILL

Plan: Enterprise

Run ID: 97fb1c72-d19e-4ecb-92b6-0c560ba68de3

📥 Commits

Reviewing files that changed from the base of the PR and between f605e7d and 630fe02.

📒 Files selected for processing (2)
  • ci-operator/step-registry/hypershift/kubevirt/create/disconnected/workarounds/hypershift-kubevirt-create-disconnected-workarounds-commands.sh
  • ci-operator/step-registry/hypershift/mce/kubevirt/baremetalds/disconnected/conformance/hypershift-mce-kubevirt-baremetalds-disconnected-conformance-workflow.yaml

@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Apr 27, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Apr 27, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Apr 28, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Apr 28, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Apr 28, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Apr 29, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Apr 29, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@cblecker
Copy link
Copy Markdown
Member

/uncc

@openshift-ci openshift-ci Bot removed the request for review from cblecker April 30, 2026 15:50
@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented May 4, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Jun 2, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Jun 2, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@mgencur: 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 needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jun 2, 2026
Add e2e-kubevirt-metal-ovn-disconnected to the release-4.22
periodics-mce config using the existing MCE disconnected workflow.
The workflow is updated to include deploy-konflux-operator for
Konflux-based operator deployment in disconnected environments.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@mgencur mgencur force-pushed the kubevirt_disconnected branch from 0f5148d to 4b69812 Compare June 3, 2026 06:59
@openshift-ci openshift-ci Bot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jun 3, 2026
@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Jun 3, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Jun 3, 2026

/pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@mgencur: 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-cluster-ingress-operator-master-e2e-aws-ovn-hypershift-conformance openshift/cluster-ingress-operator presubmit Registry content changed
pull-ci-openshift-cluster-ingress-operator-release-5.1-e2e-aws-ovn-hypershift-conformance openshift/cluster-ingress-operator presubmit Registry content changed
pull-ci-openshift-cluster-ingress-operator-release-5.0-e2e-aws-ovn-hypershift-conformance openshift/cluster-ingress-operator presubmit Registry content changed
pull-ci-openshift-cluster-ingress-operator-release-4.23-e2e-aws-ovn-hypershift-conformance openshift/cluster-ingress-operator presubmit Registry content changed
pull-ci-openshift-cluster-ingress-operator-release-4.22-e2e-aws-ovn-hypershift-conformance openshift/cluster-ingress-operator presubmit Registry content changed
pull-ci-openshift-cluster-ingress-operator-release-4.21-e2e-aws-ovn-hypershift-conformance openshift/cluster-ingress-operator presubmit Registry content changed
pull-ci-openshift-cluster-ingress-operator-release-4.20-e2e-aws-ovn-hypershift-conformance openshift/cluster-ingress-operator presubmit Registry content changed
pull-ci-openshift-etcd-main-e2e-hypershift-conformance openshift/etcd presubmit Registry content changed
pull-ci-openshift-etcd-release-5.1-e2e-hypershift-conformance openshift/etcd presubmit Registry content changed
pull-ci-openshift-etcd-release-5.0-e2e-hypershift-conformance openshift/etcd presubmit Registry content changed
pull-ci-openshift-etcd-release-4.23-e2e-hypershift-conformance openshift/etcd presubmit Registry content changed
pull-ci-openshift-etcd-openshift-4.22-e2e-hypershift-conformance openshift/etcd presubmit Registry content changed
pull-ci-openshift-etcd-openshift-4.21-e2e-hypershift-conformance openshift/etcd presubmit Registry content changed
pull-ci-openshift-etcd-openshift-4.20-e2e-hypershift-conformance openshift/etcd presubmit Registry content changed
pull-ci-openshift-etcd-openshift-4.19-e2e-hypershift-conformance openshift/etcd presubmit Registry content changed
pull-ci-openshift-etcd-openshift-4.18-e2e-hypershift-conformance openshift/etcd presubmit Registry content changed
pull-ci-openshift-etcd-openshift-4.17-e2e-hypershift-conformance openshift/etcd presubmit Registry content changed
pull-ci-openshift-etcd-openshift-4.16-e2e-hypershift-conformance openshift/etcd presubmit Registry content changed
pull-ci-openshift-etcd-openshift-4.15-e2e-hypershift-conformance openshift/etcd presubmit Registry content changed
pull-ci-openshift-etcd-openshift-4.14-e2e-hypershift-conformance openshift/etcd presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-master-e2e-aws-ovn-hypershift-conformance openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-5.1-e2e-aws-ovn-hypershift-conformance openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-5.0-e2e-aws-ovn-hypershift-conformance openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.23-e2e-aws-ovn-hypershift-conformance openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.22-e2e-aws-ovn-hypershift-conformance openshift/cluster-network-operator presubmit Registry content changed

A total of 742 jobs have been affected by this change. The above listing is non-exhaustive and limited to 25 jobs.

A full list of affected jobs can be found here

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.

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented Jun 3, 2026

@mgencur: 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-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected fc42d8e link unknown /pj-rehearse periodic-ci-openshift-hypershift-release-4.22-periodics-mce-e2e-kubevirt-metal-ovn-disconnected

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.

Copy link
Copy Markdown
Contributor

@jparrill jparrill left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/approve

Dropped a question just to know more.

/home/oc-mirror --config "/home/imageset-config.yaml" docker://${mirror_registry} --oci-registries-config="/home/registry.conf" --continue-on-error --skip-missing
for i in 1 2 3; do
echo "oc-mirror attempt ${i}/3"
/home/oc-mirror --v1 --config "/home/imageset-config.yaml" docker://${mirror_registry} --oci-registries-config="/home/registry.conf" --continue-on-error --skip-missing || true
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Where this file is composed from (imageset-config.yaml)?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is simply defined on line 112 as this:

cat <<END |tee "/home/imageset-config.yaml"
kind: ImageSetConfiguration
apiVersion: mirror.openshift.io/v1alpha2
storageConfig:
  local:
    path: mirror
mirror:
  operators:
  - catalog: "oci:///home/cnv-local-catalog"
    targetCatalog: ${catalog_image}
    targetTag: "${CNV_PRERELEASE_VERSION}"
    packages:
    - name: kubevirt-hyperconverged
      channels:
      - name: ${CNV_CHANNEL}
END

Does it answer your question?

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 4, 2026
mirror_registry=$(oc get imagecontentsourcepolicy -o json | jq -r '.items[].spec.repositoryDigestMirrors[0].mirrors[0]')
mirror_registry=""
set +e
for attempt in 1 2 3; do
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why is this failing? is cluster not ready to read a resource?

Copy link
Copy Markdown
Contributor Author

@mgencur mgencur Jun 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good question. I thought is was brought from #75258 but it was not. I actually can't find the reason so I think it was done by Claude (as a side effect), when replacing calling the same command multiple times with a loop (in other files). I can put back the original line if you want.

Copy link
Copy Markdown

@michalskrivanek michalskrivanek Jun 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nah, it's nicer this way, but indeed looks totally useless:)
it's a repeated pattern later on too. It's fine for a test code, but eventually may make sense to clean up, move to oc mirror -v2, etc

Copy link
Copy Markdown
Contributor Author

@mgencur mgencur Jun 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

move to oc mirror -v2

Yeah.

@jiezhao16
Copy link
Copy Markdown
Contributor

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Jun 4, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented Jun 4, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: jiezhao16, jparrill, mgencur

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

@mgencur
Copy link
Copy Markdown
Contributor Author

mgencur commented Jun 4, 2026

/pj-rehearse ack

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@openshift-merge-bot openshift-merge-bot Bot added the rehearsals-ack Signifies that rehearsal jobs have been acknowledged label Jun 4, 2026
@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@openshift-ci[bot]: your /pj-rehearse request was not processed because the request waited in queue for longer than 5 minutes. Please retry in a few minutes.

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@jiezhao16: your /pj-rehearse request was not processed because the request waited in queue for longer than 5 minutes. Please retry in a few minutes.

@openshift-merge-bot openshift-merge-bot Bot merged commit 067b03a into openshift:main Jun 4, 2026
2 of 19 checks passed
TimurMP pushed a commit to TimurMP/release that referenced this pull request Jun 4, 2026
* ci(hypershift): add MCE KubeVirt disconnected conformance periodic test

Add e2e-kubevirt-metal-ovn-disconnected to the release-4.22
periodics-mce config using the existing MCE disconnected workflow.
The workflow is updated to include deploy-konflux-operator for
Konflux-based operator deployment in disconnected environments.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Adjust node count and CPU per node

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
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. rehearsals-ack Signifies that rehearsal jobs have been acknowledged

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants