Skip to content

MGMT-24835: configuring the auto mode for assisted-service#82028

Draft
andrej1991 wants to merge 1 commit into
openshift:mainfrom
andrej1991:lgtm-mode-assisted-service
Draft

MGMT-24835: configuring the auto mode for assisted-service#82028
andrej1991 wants to merge 1 commit into
openshift:mainfrom
andrej1991:lgtm-mode-assisted-service

Conversation

@andrej1991

@andrej1991 andrej1991 commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

First only the cheap jobs like lint, unit-test will run. If they succeed all the required jobs will be started.

Summary by CodeRabbit

  • Configures assisted-service CI auto mode so inexpensive lint/unit-test jobs run first, followed by required jobs only after they succeed.
  • Updates generated OpenShift CI configurations across current, edge, release, OCM, and versioned pipelines to use pipeline-level change detection.
  • Prevents affected jobs from running unconditionally with always_run: false, while preserving existing path filters.
  • Marks selected ZTP jobs as optional.
  • Jira issue MGMT-24835 is valid, but lacks target version 5.0.0 for the target branch.

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Jul 16, 2026
@openshift-ci-robot

openshift-ci-robot commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

@andrej1991: This pull request references MGMT-24835 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "5.0.0" version, but no target version was set.

Details

In response to this:

First only the cheap jobs like lint, unit-test will run. If they succeed all the required jobs will be started.

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 openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci openshift-ci Bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jul 16, 2026
@openshift-ci

openshift-ci Bot commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@coderabbitai

coderabbitai Bot commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Walkthrough

Assisted-service CI YAML configurations now use pipeline-level changed-path selectors, explicitly disable unconditional execution for affected jobs, and mark selected jobs optional across master, edge, release, placeholder, OCM, and versioned configurations.

Changes

Assisted-service CI gating

Layer / File(s) Summary
Agent compact IPv4 skip gating
ci-operator/config/openshift/assisted-service/openshift-assisted-service-master.yaml, openshift-assisted-service-release-*.yaml
Renames skip_if_only_changed to pipeline_skip_if_only_changed and adds always_run: false to applicable agent jobs.
Operator and OCM pipeline gating
ci-operator/config/openshift/assisted-service/openshift-assisted-service-master__edge.yaml, openshift-assisted-service-release-ocm-*.yaml
Replaces run_if_changed with pipeline_run_if_changed, adds always_run: false, and marks selected jobs optional.
Placeholder and versioned metal/provider gating
ci-operator/config/openshift/assisted-service/openshift-assisted-service-assisted-version-placeholder.yaml, openshift-assisted-service-v2.*.yaml
Applies pipeline-level change triggers and always_run: false across metal, vSphere, provider, virtualization, and AI job variants while preserving existing matchers.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
Check name Status Explanation
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 Only CI YAML gating configs changed; no Ginkgo test definitions or dynamic test titles were modified.
Test Structure And Quality ✅ Passed PR only changes ci-operator YAML configs; no Ginkgo test code or It/BeforeEach/Eventually blocks are touched, so this quality check is not applicable.
Microshift Test Compatibility ✅ Passed Only CI YAML job-gating changed; no Go/Ginkgo test files were added, so MicroShift compatibility checks aren't applicable.
Single Node Openshift (Sno) Test Compatibility ✅ Passed PR only changes assisted-service CI YAML job configs; no new or modified Ginkgo e2e test code was added, so the SNO check is not applicable.
Topology-Aware Scheduling Compatibility ✅ Passed Only CI/job config YAML and an LGTM config changed; no deployment manifests, operator code, or controllers were modified, so no topology-aware scheduling issue is introduced.
Ote Binary Stdout Contract ✅ Passed All changed files are CI YAML configs/presubmits; no process-level binary code (main/init/TestMain/etc.) changed, so stdout contract isn’t implicated.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed PASS: The PR only changes ci-operator YAML gating; no new Ginkgo test code or IPv4/external-network logic was added.
No-Weak-Crypto ✅ Passed Diff is config-only; no MD5/SHA1/DES/RC4/3DES/Blowfish/ECB or constant-time comparison usage appears in added/removed lines.
Container-Privileges ✅ Passed No changed files add privileged/host* fields, SYS_ADMIN, root, or allowPrivilegeEscalation; the PR only tweaks CI job gating.
No-Sensitive-Data-In-Logs ✅ Passed Only CI YAML gating changes were added; no new logs, secrets, tokens, PII, or other sensitive literals appear in the added lines.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title matches the PR’s main change: configuring assisted-service auto mode in CI.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@openshift-ci

openshift-ci Bot commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: andrej1991
Once this PR has been reviewed and has the lgtm label, please assign danilo-gemoli, pastequo for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found 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

@andrej1991
andrej1991 force-pushed the lgtm-mode-assisted-service branch from 736c509 to ea8b9a0 Compare July 16, 2026 17:38

@coderabbitai coderabbitai Bot left a comment

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.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In
`@ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.20.yaml`:
- Around line 41-45: The assisted-service CI configuration changes require
regenerated artifacts. Run make update, then commit the resulting
ci-operator/jobs/... and zz_generated_metadata outputs for all affected sites:
ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.20.yaml
(41-45), release-4.21.yaml (41-45), release-4.22.yaml (41-45), release-4.23.yaml
(41-45), release-5.0.yaml (97-106), release-5.1.yaml (179-181),
master__edge.yaml (167-173), release-ocm-2.11.yaml (97-106), and v2.54.yaml
(97-106).
🪄 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: 7112eff2-64d8-4dc0-97ef-a898c1ac3b0a

📥 Commits

Reviewing files that changed from the base of the PR and between 91df185 and ea8b9a0.

⛔ Files ignored due to path filters (35)
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-assisted-version-placeholder-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-master-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.12-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.13-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.14-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.15-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.16-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.17-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.18-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.19-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.20-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.21-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.22-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.23-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-5.0-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-5.1-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-ocm-2.11-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-ocm-2.12-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-ocm-2.13-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-ocm-2.14-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-ocm-2.15-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-ocm-2.16-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-ocm-2.17-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.42-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.43-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.45-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.46-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.47-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.48-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.49-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.50-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.51-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.52-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.53-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.54-presubmits.yaml is excluded by !ci-operator/jobs/**
📒 Files selected for processing (37)
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-assisted-version-placeholder.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-master.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-master__edge.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.12.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.13.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.14.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.15.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.16.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.17.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.18.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.19.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.20.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.21.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.22.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.23.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-5.0.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-5.1.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.11.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.12.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.13.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.14.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.15.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.16.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.17.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.42.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.43.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.45.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.47.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.48.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.49.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.50.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.51.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.52.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.53.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.54.yaml
  • core-services/pipeline-controller/config.yaml

@andrej1991
andrej1991 force-pushed the lgtm-mode-assisted-service branch from ea8b9a0 to 27ffc73 Compare July 16, 2026 21:35

@coderabbitai coderabbitai Bot left a comment

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.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In
`@ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml`:
- Line 152: Keep the e2e-metal-assisted presubmit on an automatic trigger by
removing the always_run: false setting in
ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml:152,
openshift-assisted-service-v2.48.yaml:156,
openshift-assisted-service-v2.51.yaml:156, and
openshift-assisted-service-v2.52.yaml:156; do not rely on optional: true to
trigger it.
- Around line 267-271: Update the pipeline_run_if_changed filter for
e2e-metal-assisted-virtualization-4-18 to match the entire CNV subtree by
changing the CNV pattern from the literal path to the path followed by .*. Apply
this change in
ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml
lines 267-271 and
ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.48.yaml
lines 267-271.
🪄 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: 26a98ec7-65d3-4934-a542-96580696535e

📥 Commits

Reviewing files that changed from the base of the PR and between ea8b9a0 and 27ffc73.

⛔ Files ignored due to path filters (34)
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-assisted-version-placeholder-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-master-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.13-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.14-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.15-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.16-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.17-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.18-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.19-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.20-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.21-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.22-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-4.23-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-5.0-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-5.1-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-ocm-2.11-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-ocm-2.12-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-ocm-2.13-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-ocm-2.14-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-ocm-2.15-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-ocm-2.16-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-release-ocm-2.17-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.42-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.43-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.45-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.46-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.47-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.48-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.49-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.50-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.51-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.52-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.53-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.54-presubmits.yaml is excluded by !ci-operator/jobs/**
📒 Files selected for processing (36)
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-assisted-version-placeholder.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-master.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-master__edge.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.13.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.14.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.15.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.16.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.17.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.18.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.19.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.20.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.21.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.22.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.23.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-5.0.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-5.1.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.11.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.12.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.13.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.14.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.15.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.16.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.17.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.42.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.43.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.45.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.47.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.48.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.49.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.50.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.51.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.52.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.53.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.54.yaml
  • core-services/pipeline-controller/config.yaml
🚧 Files skipped from review as they are similar to previous changes (29)
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.14.yaml
  • core-services/pipeline-controller/config.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-5.0.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-master.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.17.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.13.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.20.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.12.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.23.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.18.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.16.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-5.1.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.11.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.15.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.17.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.50.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.54.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.47.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.19.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.15.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-assisted-version-placeholder.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.45.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.43.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.21.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.13.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.42.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.53.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-master__edge.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.49.yaml

OPENSHIFT_VERSION=4.20
workflow: assisted-ofcir-baremetal
- always_run: true
- always_run: false

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.

🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

files=(
  ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml
  ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.48.yaml
  ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.51.yaml
  ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.52.yaml
)

for f in "${files[@]}"; do
  echo "===== $f ====="
  # show the job stanza around the lines mentioned in the review
  nl -ba "$f" | sed -n '130,180p'
  echo
done

echo "===== Search for pipeline_run_if_changed / always_run in these files ====="
rg -n "always_run:|optional: true|pipeline_run_if_changed|run_if_changed" "${files[@]}"

echo "===== Search for the job name in these files ====="
rg -n "e2e-metal-assisted" "${files[@]}"

Repository: openshift/release

Length of output: 292


🏁 Script executed:

#!/bin/bash
set -euo pipefail

files=(
  ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml
  ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.48.yaml
  ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.51.yaml
  ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.52.yaml
)

for f in "${files[@]}"; do
  echo "===== $f (lines 130-180) ====="
  awk 'NR>=130 && NR<=180 { printf "%5d  %s\n", NR, $0 }' "$f"
  echo
done

echo "===== trigger-field search ====="
rg -n "always_run:|optional: true|pipeline_run_if_changed|run_if_changed|e2e-metal-assisted" "${files[@]}"

Repository: openshift/release

Length of output: 33042


🏁 Script executed:

#!/bin/bash
set -euo pipefail

# Look for docs or schema references that describe always_run / run_if_changed behavior.
rg -n "always_run|run_if_changed|pipeline_run_if_changed|optional: true" \
  docs ci-operator test images hack .github 2>/dev/null | sed -n '1,200p'

echo "===== schema / generated config hints ====="
fd -a ".*(schema|config|ci-operator).*" ci-operator docs test 2>/dev/null | sed -n '1,120p'

Repository: openshift/release

Length of output: 29247


Keep e2e-metal-assisted on an automatic trigger. always_run: false makes this presubmit manual-only here unless a pipeline_run_if_changed filter is added; optional: true does not trigger it.

  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml#L152-L156
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.48.yaml#L152-L156
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.51.yaml#L156-L160
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.52.yaml#L156-L160
📍 Affects 4 files
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml#L152-L152 (this comment)
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.48.yaml#L156-L156
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.51.yaml#L156-L156
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.52.yaml#L156-L156
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml`
at line 152, Keep the e2e-metal-assisted presubmit on an automatic trigger by
removing the always_run: false setting in
ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml:152,
openshift-assisted-service-v2.48.yaml:156,
openshift-assisted-service-v2.51.yaml:156, and
openshift-assisted-service-v2.52.yaml:156; do not rely on optional: true to
trigger it.

Comment on lines +267 to +271
- always_run: false
as: e2e-metal-assisted-virtualization-4-18
capabilities:
- intranet
run_if_changed: ^(internal/operators/nodehealthcheck/.*|internal/operators/selfnoderemediation/.*|internal/operators/fenceagentsremediation/.*|internal/operators/nodemaintenance/.*|internal/operators/kubedescheduler/.*|internal/operators/cnv|internal/operators/mtv/.*|internal/operators/nmstate/.*)$
pipeline_run_if_changed: ^(internal/operators/nodehealthcheck/.*|internal/operators/selfnoderemediation/.*|internal/operators/fenceagentsremediation/.*|internal/operators/nodemaintenance/.*|internal/operators/kubedescheduler/.*|internal/operators/cnv|internal/operators/mtv/.*|internal/operators/nmstate/.*)$

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.

🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

set -euo pipefail

# Inspect the relevant YAML fragments
for f in ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml \
         ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.48.yaml; do
  echo "===== $f ====="
  sed -n '260,276p' "$f"
done

echo "===== paths under internal/operators/cnv ====="
git ls-files 'internal/operators/cnv/**' | sed -n '1,120p'

echo "===== regex behavior probe ====="
python3 - <<'PY'
import re

pat = re.compile(r'^(internal/operators/nodehealthcheck/.*|internal/operators/selfnoderemediation/.*|internal/operators/fenceagentsremediation/.*|internal/operators/nodemaintenance/.*|internal/operators/kubedescheduler/.*|internal/operators/cnv|internal/operators/mtv/.*|internal/operators/nmstate/.*)$')

tests = [
    "internal/operators/cnv",
    "internal/operators/cnv/",
    "internal/operators/cnv/foo",
    "internal/operators/cnv/foo/bar.go",
    "internal/operators/cnv.go",
]
for s in tests:
    print(f"{s!r}: {bool(pat.match(s))}")
PY

Repository: openshift/release

Length of output: 2243


🏁 Script executed:

set -euo pipefail

echo "===== paths starting with internal/operators/cnv ====="
git ls-files 'internal/operators/cnv*' | sed -n '1,120p'

echo "===== any cnv mentions in repository paths ====="
git ls-files | rg '^internal/operators/.*/?cnv'

Repository: openshift/release

Length of output: 259


🌐 Web query:

"site:github.com openshift/assisted-service \"internal/operators/cnv\""

💡 Result:

The directory internal/operators/cnv in the openshift/assisted-service GitHub repository contains the implementation of the Container Native Virtualization (CNV) operator plugin for the Assisted Service [1][2]. Key technical aspects of this directory include: - Purpose: This package manages the lifecycle and integration of the OpenShift Virtualization (CNV) operator within the Assisted Service [1]. - Key Files: - cnv_operator.go: Defines the core logic for the CNV operator plugin, including its MonitoredOperator structure, subscription details (e.g., namespace openshift-cnv, subscription name hco-operatorhub), and methods for calculating preflight hardware requirements (such as CPU, RAM, and disk needs for virtualization) [1][3]. - manifest.go: Contains the Kubernetes manifest templates, including the Subscription object used to install the operator via OLM (Operator Lifecycle Manager) [3]. - Recent Evolution: The implementation has evolved significantly over time. Recent changes include simplifying the dependency and preflight requirement APIs [4] and removing previously hardcoded dependencies on other operators like LSO (Local Storage Operator) or LVMS [4][5]. Developers extending or working with this service typically use this directory to define how CNV is validated and deployed during cluster installation [2].

Citations:


🌐 Web query:

site:github.com/openshift/assisted-service "internal/operators/cnv/"

💡 Result:

The directory internal/operators/cnv/ is a component of the OpenShift assisted-service repository on GitHub [1][2]. This service is designed to automate the installation of OpenShift clusters, providing pre-flight validations and configuration management for various operators [2]. Within the assisted-service architecture, the internal/operators/cnv/ package contains the plugin implementation for the OpenShift Virtualization (CNV) operator [1][3]. Its primary functions include: - Operator Configuration and Monitoring: It defines the CNV operator's integration with the assisted-service by specifying metadata such as the operator name (cnv), namespace (openshift-cnv), subscription details (hco-operatorhub), and installation timeouts [1][4]. - Pre-flight Validations: It performs hardware and cluster-level validations to ensure that the environment is suitable for deploying CNV [1][5]. For example, it checks that the host CPU has the necessary virtualization flags (e.g., vmx or svm) [1][5]. - Hardware Requirement Calculations: It computes the hardware requirements (such as CPU and memory overheads) for hosting the operator and its components [1][6]. This includes logic to account for additional resource requirements based on hardware features like GPUs and SR-IOV NICs [1][6]. - Manifest Generation: It generates the Kubernetes manifests required for bootstrapping and installing the operator during the cluster deployment process [7][8]. This package adheres to a common internal Operator interface used by the assisted-service to manage multiple OLM (Operator Lifecycle Manager) operators in a consistent manner [3].

Citations:


🌐 Web query:

"openshift assisted-service internal/operators cnv OLM_OPERATORS"

💡 Result:

In the context of the OpenShift Assisted Service, OLM_OPERATORS (often referred to via the olm_operators parameter in the API) is an array used to specify which Operators should be installed and managed by the Assisted Installer [1][2]. The cnv (Container Native Virtualization, or OpenShift Virtualization) operator is one of the supported operators that can be included in this list [3][2]. Within the Assisted Service source code, the handling of the CNV operator is defined in internal/operators/cnv/cnv_operator.go [3]. Key points regarding this integration include: 1. API Usage: When registering or updating a cluster via the Assisted Installer API, you include the operator in the olm_operators array, for example: "olm_operators": [{"name": "cnv"}] [2]. 2. Internal Implementation: The Assisted Service uses a plugin-based architecture for OLM operators [4]. The cnv_operator.go file defines a MonitoredOperator structure that specifies details such as the operator name, the namespace (typically openshift-cnv), the subscription name (hco-operatorhub), and the operator type (models.OperatorTypeOlm) [3][5]. 3. Dependency Management: The Assisted Service manager handles these operators, automatically managing dependencies [2]. Historically, the CNV operator had dependencies on other operators like LSO (Logical Storage Operator), although dependency requirements have evolved in recent versions of the service [6][7]. 4. Monitoring: Once included, the Assisted Service monitors the status of these operators, and the information is exposed through the /v2/clusters/{cluster_id}/monitored-operators API endpoint [8]. For further implementation details or to add a new OLM operator, developers typically follow the patterns established in the internal/operators directory, which involves implementing the Operator interface and registering the operator in the OperatorManager [4][7].

Citations:


🌐 Web query:

"site:github.com \"internal/operators/nodehealthcheck\" \"internal/operators/cnv\""

💡 Result:

The paths internal/operators/nodehealthcheck and internal/operators/cnv refer to Go packages within the openshift/assisted-service repository on GitHub [1][2][3]. This repository contains the logic for the Assisted Service, which facilitates the deployment and installation of OpenShift clusters [1]. The internal/operators/cnv directory contains the implementation for the Container Native Virtualization (CNV) operator plugin [1], which manages the installation and configuration of CNV on OpenShift clusters, including handling preflight requirements and operator subscription data [1][4]. The internal/operators/nodehealthcheck directory contains the implementation for the Node Health Check operator plugin [2]. This operator is responsible for configuring and monitoring the Node Health Check feature, which detects unhealthy nodes and triggers remediation workflows [2][5]. Both directories serve as infrastructure-as-code modules within the Assisted Service to automate the lifecycle management of these specific OpenShift operators during cluster installation [1][2][3].

Citations:


🏁 Script executed:

set -euo pipefail

echo "===== occurrences of internal/operators/cnv in ci-operator configs ====="
rg -n --glob 'ci-operator/config/**/*.yaml' 'internal/operators/cnv' ci-operator/config | sed -n '1,120p'

echo "===== occurrences of internal/operators/cnv/.* in ci-operator configs ====="
rg -n --glob 'ci-operator/config/**/*.yaml' 'internal/operators/cnv/\\.\\*' ci-operator/config | sed -n '1,120p'

Repository: openshift/release

Length of output: 3097


Match the CNV subtree in the change filter.
internal/operators/cnv matches only the literal path, so changes under internal/operators/cnv/... won’t trigger this job. Change it to internal/operators/cnv/.* in:

  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml#L267-L271
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.48.yaml#L267-L271
📍 Affects 2 files
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml#L267-L271 (this comment)
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.48.yaml#L267-L271
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml`
around lines 267 - 271, Update the pipeline_run_if_changed filter for
e2e-metal-assisted-virtualization-4-18 to match the entire CNV subtree by
changing the CNV pattern from the literal path to the path followed by .*. Apply
this change in
ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml
lines 267-271 and
ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.48.yaml
lines 267-271.

First only the cheap jobs like lint, unit-test will run. If they succeed and the reviewer gives lgtm then all the required jobs will be started.
@andrej1991
andrej1991 force-pushed the lgtm-mode-assisted-service branch from 27ffc73 to 71a42cf Compare July 20, 2026 12:58
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@andrej1991: 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-assisted-service-v2.51-e2e-metal-assisted openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.51-e2e-metal-assisted-day2 openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.51-e2e-metal-assisted-external openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.51-e2e-metal-assisted-ipv4v6 openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.51-e2e-metal-assisted-lvm openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.51-e2e-metal-assisted-none openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.51-e2e-metal-assisted-openshift-ai openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.51-e2e-metal-assisted-osc openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.51-e2e-metal-assisted-single-node openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.51-e2e-metal-assisted-static-ip-suite openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.51-e2e-metal-assisted-virtualization openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.51-e2e-vsphere-assisted openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.51-subsystem-aws openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.45-e2e-metal-assisted openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.45-e2e-metal-assisted-ai-amd-4-19 openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.45-e2e-metal-assisted-ai-nvidia-4-18 openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.45-e2e-metal-assisted-day2 openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.45-e2e-metal-assisted-external openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.45-e2e-metal-assisted-ipv4v6 openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.45-e2e-metal-assisted-lvm openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.45-e2e-metal-assisted-none openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.45-e2e-metal-assisted-osc openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.45-e2e-metal-assisted-single-node openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.45-e2e-metal-assisted-static-ip-suite openshift/assisted-service presubmit Ci-operator config changed
pull-ci-openshift-assisted-service-v2.45-e2e-metal-assisted-virtualization-4-18 openshift/assisted-service presubmit Ci-operator config changed

A total of 273 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.

@coderabbitai coderabbitai Bot left a comment

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.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In
`@ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.45.yaml`:
- Around line 267-271: Update the pipeline_run_if_changed selector for
e2e-metal-assisted-virtualization-4-18 in both
ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.45.yaml
(lines 267-271) and
ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.47.yaml
(lines 267-271), changing the CNV entry from the exact path
internal/operators/cnv to the recursive pattern internal/operators/cnv/.*.
🪄 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: 30f5c454-0162-4594-a8ee-1773160b3dd7

📥 Commits

Reviewing files that changed from the base of the PR and between 27ffc73 and 71a42cf.

📒 Files selected for processing (35)
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-assisted-version-placeholder.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-master.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-master__edge.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.13.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.14.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.15.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.16.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.17.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.18.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.19.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.20.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.21.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.22.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.23.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-5.0.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-5.1.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.11.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.12.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.13.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.14.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.15.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.16.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.17.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.42.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.43.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.45.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.47.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.48.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.49.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.50.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.51.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.52.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.53.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.54.yaml
🚧 Files skipped from review as they are similar to previous changes (27)
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.14.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.15.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.16.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.13.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.18.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.19.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.15.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.22.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.23.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.53.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.17.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.14.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.20.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.43.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.52.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.11.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.46.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-4.21.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.16.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-assisted-version-placeholder.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.13.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.54.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-release-ocm-2.12.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.42.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.49.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.51.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-master__edge.yaml

Comment on lines +267 to +271
- always_run: false
as: e2e-metal-assisted-virtualization-4-18
capabilities:
- intranet
run_if_changed: ^(internal/operators/nodehealthcheck/.*|internal/operators/selfnoderemediation/.*|internal/operators/fenceagentsremediation/.*|internal/operators/nodemaintenance/.*|internal/operators/kubedescheduler/.*|internal/operators/cnv|internal/operators/mtv/.*|internal/operators/nmstate/.*)$
pipeline_run_if_changed: ^(internal/operators/nodehealthcheck/.*|internal/operators/selfnoderemediation/.*|internal/operators/fenceagentsremediation/.*|internal/operators/nodemaintenance/.*|internal/operators/kubedescheduler/.*|internal/operators/cnv|internal/operators/mtv/.*|internal/operators/nmstate/.*)$

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.

🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

for f in ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.45.yaml \
         ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.47.yaml
do
  echo "=== $f ==="
  nl -ba "$f" | sed -n '260,276p'
done

python3 - <<'PY'
import re

pattern = r'^(internal/operators/nodehealthcheck/.*|internal/operators/selfnoderemediation/.*|internal/operators/fenceagentsremediation/.*|internal/operators/nodemaintenance/.*|internal/operators/kubedescheduler/.*|internal/operators/cnv|internal/operators/mtv/.*|internal/operators/nmstate/.*)$'
paths = [
    "internal/operators/cnv",
    "internal/operators/cnv/",
    "internal/operators/cnv/cnv_operator_test.go",
    "internal/operators/cnvx",
    "internal/operators/cnv/foo/bar.go",
]
rx = re.compile(pattern)
for p in paths:
    print(f"{p!r}: {bool(rx.match(p))}")
PY

Repository: openshift/release

Length of output: 287


🏁 Script executed:

#!/bin/bash
set -euo pipefail

for f in ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.45.yaml \
         ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.47.yaml
do
  echo "=== $f ==="
  sed -n '260,276p' "$f" | cat -n
done

python3 - <<'PY'
import re

pattern = r'^(internal/operators/nodehealthcheck/.*|internal/operators/selfnoderemediation/.*|internal/operators/fenceagentsremediation/.*|internal/operators/nodemaintenance/.*|internal/operators/kubedescheduler/.*|internal/operators/cnv|internal/operators/mtv/.*|internal/operators/nmstate/.*)$'
rx = re.compile(pattern)

paths = [
    "internal/operators/cnv",
    "internal/operators/cnv/",
    "internal/operators/cnv/cnv_operator_test.go",
    "internal/operators/cnvx",
    "internal/operators/cnv/foo/bar.go",
]

for p in paths:
    print(f"{p!r}: {bool(rx.fullmatch(p))}")
PY

Repository: openshift/release

Length of output: 2408


Extend the CNV path selector to cover the directory tree. internal/operators/cnv only matches that exact path, so changes under internal/operators/cnv/ (for example internal/operators/cnv/cnv_operator_test.go) won’t trigger e2e-metal-assisted-virtualization-4-18. Update the selector in both versioned configs to internal/operators/cnv/.*.

📍 Affects 2 files
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.45.yaml#L267-L271 (this comment)
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.47.yaml#L267-L271
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.45.yaml`
around lines 267 - 271, Update the pipeline_run_if_changed selector for
e2e-metal-assisted-virtualization-4-18 in both
ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.45.yaml
(lines 267-271) and
ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.47.yaml
(lines 267-271), changing the CNV entry from the exact path
internal/operators/cnv to the recursive pattern internal/operators/cnv/.*.

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

Labels

do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants