Skip to content

setup assisted-installer version v2.55 - #82412

Closed
danmanor wants to merge 1 commit into
openshift:mainfrom
danmanor:assisted-installer/setup-version-v2.55-039396d2-f5a2-4a08-873b-1eaa0afd4427
Closed

setup assisted-installer version v2.55#82412
danmanor wants to merge 1 commit into
openshift:mainfrom
danmanor:assisted-installer/setup-version-v2.55-039396d2-f5a2-4a08-873b-1eaa0afd4427

Conversation

@danmanor

@danmanor danmanor commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

Adds OpenShift CI configurations for the Assisted Installer v2.55 release across:

  • assisted-installer
  • assisted-installer-agent
  • assisted-image-service
  • assisted-service

The configurations pin v2.55 component images, define builds and promotion to edge-infrastructure, target OCP 5.0 nightly releases, standardize resource requests, and enable lint, unit, generated-code, subsystem, and broad platform-specific end-to-end test coverage.

@coderabbitai

coderabbitai Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Walkthrough

Adds four generated OpenShift CI Operator configurations for v2.55, covering pinned component images, builds, promotion and release metadata, standard validation jobs, and extensive assisted installation and service end-to-end workflows.

Changes

Assisted v2.55 CI pipeline

Layer / File(s) Summary
Release and build contracts
ci-operator/config/openshift/{assisted-image-service,assisted-installer-agent,assisted-installer,assisted-service}/*v2.55.yaml
Pins component images, defines Dockerfile outputs, configures v2.55 promotion and OCP 5.0 release candidates, sets resource requests, and records generated metadata.
Build validation jobs
ci-operator/config/openshift/{assisted-image-service,assisted-installer-agent,assisted-installer,assisted-service}/*v2.55.yaml
Adds VCS reference publishing, lint, formatting, unit test, generated-code, and subsystem validation jobs with caches, reports, secrets, and skip rules.
Image service and installer-agent E2E coverage
ci-operator/config/openshift/{assisted-image-service,assisted-installer-agent}/*v2.55.yaml
Adds metal, day-2, OCI, external-platform, operator, IPv6, single-node, scaling, and upgrade-agent workflows.
Installer and assisted-service E2E coverage
ci-operator/config/openshift/{assisted-installer,assisted-service}/*v2.55.yaml
Adds assisted installer scenario matrices plus assisted-service AWS, baremetal, provider, virtualization, OpenShift AI, OSC, and TNA workflows.

Estimated code review effort: 4 (Complex) | ~45 minutes

Possibly related PRs

Suggested labels: approved

🚥 Pre-merge checks | ✅ 14 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Ipv6 And Disconnected Network Test Compatibility ⚠️ Warning FAIL: e2e-metal-assisted-day2-arm-workers injects quay.io/... image refs into ASSISTED_CONFIG, so this packet-assisted job depends on public registry access. Use mirrored/internal registry image refs (or cluster image streams) for the job, or mark it [Skipped:Disconnected] if it must stay internet-dependent.
✅ Passed checks (14 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title matches the main version bump theme, though it mentions only assisted-installer while the PR updates several assisted components.
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 No Ginkgo test titles were added or modified; these PR changes are CI YAML configs, and diff search found no It/Describe/Context/When patterns.
Test Structure And Quality ✅ Passed PR only changes CI-operator YAML job/config files; no Go/Ginkgo test code changed, so this test-quality check is not applicable.
Microshift Test Compatibility ✅ Passed PR only adds CI YAML/job configs; no Ginkgo test sources or new test bodies changed, so MicroShift compatibility isn't implicated.
Single Node Openshift (Sno) Test Compatibility ✅ Passed v2.55 is a straight version bump; job lists match v2.54 and no new Ginkgo test definitions or SNO-sensitive additions were introduced.
Topology-Aware Scheduling Compatibility ✅ Passed Only CI operator/job YAML was added; no deployment/controller manifests or topology-aware scheduling fields (affinity, nodeSelector, spread, replicas) were introduced.
Ote Binary Stdout Contract ✅ Passed PR only adds CI operator YAML config; no OTE binary or test code paths were modified, so the stdout contract check is not applicable.
No-Weak-Crypto ✅ Passed The changed YAMLs contain only CI job wiring and make/test commands; no MD5/SHA1/DES/RC4/3DES/Blowfish/ECB, custom crypto, or secret comparisons appear.
Container-Privileges ✅ Passed No changed YAML contains privileged/root/network-IPC escalation flags; searches found only benign capabilities: [intranet] entries.
No-Sensitive-Data-In-Logs ✅ Passed No secret values or PII are logged; CODECOV_TOKEN is read from a mounted secret and no echo/set -x/printenv paths were added.
✨ 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 24, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: danmanor

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

The pull request process is described here

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

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

@openshift-ci
openshift-ci Bot requested review from adriengentil and avishayt July 24, 2026 15:35
@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 24, 2026
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@danmanor: 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.55-e2e-metal-assisted openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-e2e-metal-assisted-day2 openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-e2e-metal-assisted-external openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-e2e-metal-assisted-ipv4v6 openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-e2e-metal-assisted-lvm openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-e2e-metal-assisted-none openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-e2e-metal-assisted-openshift-ai openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-e2e-metal-assisted-osc openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-e2e-metal-assisted-single-node openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-e2e-metal-assisted-static-ip-suite openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-e2e-metal-assisted-tna openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-e2e-metal-assisted-virtualization openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-e2e-vsphere-assisted openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-images openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-lint openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-subsystem-aws openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-unit-test openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-service-v2.55-verify-generated-code openshift/assisted-service presubmit Presubmit changed
pull-ci-openshift-assisted-image-service-v2.55-e2e-metal-assisted openshift/assisted-image-service presubmit Presubmit changed
pull-ci-openshift-assisted-image-service-v2.55-e2e-metal-assisted-day2-arm-workers openshift/assisted-image-service presubmit Presubmit changed
pull-ci-openshift-assisted-image-service-v2.55-e2e-metal-assisted-deploy-nodes openshift/assisted-image-service presubmit Presubmit changed
pull-ci-openshift-assisted-image-service-v2.55-e2e-metal-assisted-external openshift/assisted-image-service presubmit Presubmit changed
pull-ci-openshift-assisted-image-service-v2.55-e2e-oci-assisted openshift/assisted-image-service presubmit Presubmit changed
pull-ci-openshift-assisted-image-service-v2.55-images openshift/assisted-image-service presubmit Presubmit changed
pull-ci-openshift-assisted-image-service-v2.55-lint openshift/assisted-image-service presubmit Presubmit changed

A total of 53 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
Prior to this PR being merged, you will need to either run and acknowledge or opt to skip these rehearsals.

Interacting with pj-rehearse

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

Once you are satisfied with the results of the rehearsals, comment: /pj-rehearse ack to unblock merge. When the rehearsals-ack label is present on your PR, merge will no longer be blocked by rehearsals.
If you would like the rehearsals-ack label removed, comment: /pj-rehearse reject to re-block merging.

@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-image-service/openshift-assisted-image-service-v2.55.yaml`:
- Around line 116-130: Both packet-assisted jobs lack the required intranet
capability. In
ci-operator/config/openshift/assisted-image-service/openshift-assisted-image-service-v2.55.yaml:116-130,
add capabilities: - intranet to e2e-metal-assisted-day2-arm-workers; also add
the same capability to e2e-metal-assisted-tna in
ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.55.yaml:302-315.

In
`@ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.55.yaml`:
- Around line 190-207: Remove the always_run field from the
e2e-metal-assisted-lvm job definition, leaving its run_if_changed expression and
remaining configuration unchanged.
🪄 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: e7f677cd-dfed-4084-bfad-0abeda8344ac

📥 Commits

Reviewing files that changed from the base of the PR and between b9e2137 and e424765.

⛔ Files ignored due to path filters (8)
  • ci-operator/jobs/openshift/assisted-image-service/openshift-assisted-image-service-v2.55-postsubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-image-service/openshift-assisted-image-service-v2.55-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-installer-agent/openshift-assisted-installer-agent-v2.55-postsubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-installer-agent/openshift-assisted-installer-agent-v2.55-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-installer/openshift-assisted-installer-v2.55-postsubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-installer/openshift-assisted-installer-v2.55-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.55-postsubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/assisted-service/openshift-assisted-service-v2.55-presubmits.yaml is excluded by !ci-operator/jobs/**
📒 Files selected for processing (4)
  • ci-operator/config/openshift/assisted-image-service/openshift-assisted-image-service-v2.55.yaml
  • ci-operator/config/openshift/assisted-installer-agent/openshift-assisted-installer-agent-v2.55.yaml
  • ci-operator/config/openshift/assisted-installer/openshift-assisted-installer-v2.55.yaml
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.55.yaml

Comment on lines +116 to +130
- always_run: false
as: e2e-metal-assisted-day2-arm-workers
optional: true
steps:
cluster_profile: packet-assisted
env:
ASSISTED_CONFIG: |
SERVICE_BASE_REF=v2.55
TEST_FUNC=test_deploy_day2_nodes_cloud
AGENT_DOCKER_IMAGE=quay.io/redhat-user-workloads/assisted-installer-tenant/assisted-installer-application-ds-main/assisted-installer-agent-ds-main:latest
CONTROLLER_IMAGE=quay.io/redhat-user-workloads/assisted-installer-tenant/assisted-installer-application-ds-main/assisted-installer-controller-ds-main:latest
INSTALLER_IMAGE=quay.io/redhat-user-workloads/assisted-installer-tenant/assisted-installer-application-ds-main/assisted-installer-ds-main:latest
DAY2_CPU_ARCHITECTURE=arm64
OPENSHIFT_VERSION=5.0-multi
workflow: assisted-ofcir-baremetal-heterogeneous

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 | 🟡 Minor | ⚡ Quick win

Two packet-assisted jobs missing capabilities: [intranet]. Both jobs use cluster_profile: packet-assisted, which every other job with that cluster profile in their respective files pairs with capabilities: - intranet; these two are the lone exceptions.

  • ci-operator/config/openshift/assisted-image-service/openshift-assisted-image-service-v2.55.yaml#L116-L130: add capabilities: - intranet to e2e-metal-assisted-day2-arm-workers.
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.55.yaml#L302-L315: add capabilities: - intranet to e2e-metal-assisted-tna.
📍 Affects 2 files
  • ci-operator/config/openshift/assisted-image-service/openshift-assisted-image-service-v2.55.yaml#L116-L130 (this comment)
  • ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.55.yaml#L302-L315
🤖 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-image-service/openshift-assisted-image-service-v2.55.yaml`
around lines 116 - 130, Both packet-assisted jobs lack the required intranet
capability. In
ci-operator/config/openshift/assisted-image-service/openshift-assisted-image-service-v2.55.yaml:116-130,
add capabilities: - intranet to e2e-metal-assisted-day2-arm-workers; also add
the same capability to e2e-metal-assisted-tna in
ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.55.yaml:302-315.

Comment on lines +190 to +207
- always_run: true
as: e2e-metal-assisted-lvm
capabilities:
- intranet
run_if_changed: ^(internal/operators/[^/]+\.go|internal/operators/lvm/.*|internal/operators/api/.*|internal/operators/handler/.*)$
steps:
cluster_profile: packet-assisted
env:
ASSISTED_CONFIG: |
SERVICE_BASE_REF=v2.55
OLM_OPERATORS=lvm
MASTER_MEMORY=25600
NUM_MASTERS=3
NUM_WORKERS=0
MASTER_CPU=9
MASTER_DISK_COUNT=2
OPENSHIFT_VERSION=5.0
workflow: assisted-ofcir-baremetal

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

echo "== target file slice =="
nl -ba ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.55.yaml | sed -n '170,220p'

echo
echo "== sibling jobs in same file =="
rg -n "always_run:|run_if_changed:|as: e2e-metal-assisted-(lvm|osc|virtualization|openshift-ai)" ci-operator/config/openshift/assisted-service/openshift-assisted-service-v2.55.yaml

echo
echo "== other occurrences of always_run + run_if_changed together in ci-operator/config =="
python3 - <<'PY'
from pathlib import Path
import re
root = Path("ci-operator/config")
for path in root.rglob("*.y*ml"):
    txt = path.read_text()
    if "always_run:" in txt and "run_if_changed:" in txt:
        # print files where both appear, with a small hint around first occurrence
        print(path)
PY

Repository: openshift/release

Length of output: 219


🌐 Web query:

Prow presubmit always_run run_if_changed semantics mutually exclusive

💡 Result:

In Prow, the fields always_run and run_if_changed (as well as skip_if_only_changed) have specific, mutually exclusive semantics when configured for a presubmit job [1][2][3]. The mutual exclusivity is enforced as follows: 1. If always_run is set to true, the job will run unconditionally for every pull request [1][2]. Because the job is already configured to run every time, it is incompatible with conditional triggers like run_if_changed or skip_if_only_changed; attempting to define them together results in a configuration error [3]. 2. If always_run is set to false (or omitted), the job can be configured to run conditionally [1][2]. In this state, you can use run_if_changed or skip_if_only_changed to define the conditions under which the job should automatically trigger [1][2]. 3. It is important to note that run_if_changed and skip_if_only_changed themselves are also mutually exclusive with each other in many versions of Prow, as enforced by validation logic in the system (e.g., in pkg/config/config.go) [4][3]. In summary, you cannot combine an unconditional execution requirement (always_run: true) with conditional file-based triggers (run_if_changed). If you need a job to run automatically, you must choose between running it on every PR (always_run: true) or running it only when specific files are modified (run_if_changed) [1][2]. If neither is configured, the job will not run automatically and will instead require manual triggering via a comment in the PR [1][5].

Citations:


Drop always_run: true here. run_if_changed already makes this job path-gated, and Prow treats the two fields as incompatible on presubmits; the sibling operator jobs in this file use run_if_changed alone.

🤖 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.55.yaml`
around lines 190 - 207, Remove the always_run field from the
e2e-metal-assisted-lvm job definition, leaving its run_if_changed expression and
remaining configuration unchanged.

@openshift-ci

openshift-ci Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

@danmanor: all tests passed!

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.

1 similar comment
@openshift-ci

openshift-ci Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

@danmanor: all tests passed!

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.

@danmanor

Copy link
Copy Markdown
Contributor Author

Closing as duplicate of #82441

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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants