Skip to content

OADP: migrate CI to FBC catalog image (no operator-sdk) + TechPreview#79327

Open
kaovilai wants to merge 1 commit into
openshift:mainfrom
kaovilai:oadp-fbc-no-operator-sdk
Open

OADP: migrate CI to FBC catalog image (no operator-sdk) + TechPreview#79327
kaovilai wants to merge 1 commit into
openshift:mainfrom
kaovilai:oadp-fbc-no-operator-sdk

Conversation

@kaovilai
Copy link
Copy Markdown
Member

@kaovilai kaovilai commented May 14, 2026

Summary

Alternative to #79152 that avoids operator-sdk dependency entirely by building an FBC (File-Based Catalog) catalog image using opm render via build/Dockerfile.catalog (from openshift/oadp-operator#2204).

Approach difference from #79152

#79152 (operator-sdk) This PR (FBC catalog)
Install method operator-sdk run bundle optional-operators-subscribe via CatalogSource
Workflow optional-operators-ci-operator-sdk-aws optional-operators-ci-aws (original)
Dependency OO_BUNDLE + cli-operator-sdk base image OO_INDEX pointing to built FBC catalog image
Extra image None oadp-operator-catalog (built from Dockerfile.catalog)
operator-sdk needed Yes No

Changes per config:

  • operator.bundles: add as: oadp-operator-bundle + skip_building_index: true
  • images: add build/Dockerfile.catalog build with BUNDLE_IMG build arg → oadp-operator-catalog
  • dependencies: OO_INDEX: ci-indexOO_INDEX: oadp-operator-catalog
  • env: restore OO_CHANNEL/OO_PACKAGE/OO_TARGET_NAMESPACES (needed by optional-operators-subscribe)
  • workflow: keep optional-operators-ci-aws (not operator-sdk variant)

TechPreviewNoUpgrade for OCP 4.22+ configs (oadp-1.6, oadp-dev):

  • FEATURE_SET: TechPreviewNoUpgrade enables OLMv1 OwnNamespace support via NewOLMOwnSingleNamespace feature gate
  • Enables VolumeGroupSnapshot backup/restore testing
  • CustomNoUpgrade preserved for oadp-1.4 4.18

Migrated configs (13 files):

  • oadp-1.3 (4.12, 4.13, 4.14, 4.15)
  • oadp-1.4 (4.18)
  • oadp-1.5 (4.19, 4.20)
  • oadp-1.6 (4.18, 4.22, 5.0)
  • oadp-dev (4.22, 4.23, 5.0)

Deleted configs (2 files):

  • oadp-1.0 (4.12, 4.14) — EOL

Open question: build_args pipeline image resolution

ci-operator's build_args passes literal strings as Docker --build-arg. The Dockerfile.catalog runs opm render ${BUNDLE_IMG} which needs to pull the bundle image from a registry. Whether ci-operator resolves the build_args value oadp-operator-bundle to the full pipeline imagestream pullspec at build time needs CI testing.

If it doesn't resolve automatically, alternatives:

  1. Use a custom step-registry step that resolves the pullspec and runs podman build --build-arg BUNDLE_IMG=$(oc get istag ...)
  2. Modify Dockerfile.catalog to use COPY --from=<bundle> instead of opm render

Dependencies

Why FBC catalog image over operator-sdk:

  • opm is actively maintained by OLM team; operator-sdk run bundle is a convenience wrapper being deprecated
  • No extra cli-operator-sdk base image needed
  • Uses standard optional-operators-ci-aws workflow (CatalogSource + Subscription)
  • Aligns with OLM v1 direction where FBC is the catalog format

Note

Responses generated with Claude

OADP Operator CI Migration to File-Based Catalog (FBC) Images

This PR migrates the OADP (OpenShift API for Data Protection) operator's OpenShift CI infrastructure from an operator-sdk based approach to a File-Based Catalog (FBC) image build process, eliminating the operator-sdk dependency and enabling Tech Preview features for newer OCP versions.

Configuration Updates

The changes affect 13 OADP operator CI configuration files across multiple release branches and OCP versions:

Modified configurations:

  • oadp-1.3: Updated for OCP 4.12, 4.13, 4.14, 4.15
  • oadp-1.4: Updated for OCP 4.18
  • oadp-1.5: Updated for OCP 4.19, 4.20
  • oadp-1.6: Updated for OCP 4.18, 4.22, and 5.0
  • oadp-dev: Updated for OCP 4.22, 4.23, and 5.0

Deleted EOL configurations:

  • oadp-1.0__4.12.yaml and oadp-1.0__4.14.yaml (end-of-life branch)

Technical Changes

All updated configuration files implement consistent changes:

  1. Catalog Image Build: Introduces a new oadp-operator-catalog image built from build/Dockerfile.catalog with a BUNDLE_IMG build argument pointing to the operator bundle image.

  2. Operator Bundle Updates: Operator bundle definitions now explicitly name the bundle (as: oadp-operator-bundle) and disable index building (skip_building_index: true), shifting index responsibility to the dedicated catalog image.

  3. Test Infrastructure: AWS e2e test job configurations update their operator index reference from ci-index to oadp-operator-catalog, integrating the new FBC-based catalog image into the test pipeline.

  4. Tech Preview Enablement: For OCP 4.22+ configurations (oadp-1.6__4.22, oadp-1.6__5.0, and all oadp-dev variants), a new FEATURE_SET: TechPreviewNoUpgrade environment variable is added to enable OLMv1 OwnNamespace and VolumeGroupSnapshot testing capabilities.

Dependency

This migration depends on openshift/oadp-operator#2204, which provides the build/Dockerfile.catalog used to build the FBC images.

Migrate all oadp-operator variant CI configs from deprecated index image
path (OO_INDEX: ci-index) to FBC catalog image built via Dockerfile.catalog
(OO_INDEX: oadp-operator-catalog). This avoids operator-sdk dependency
entirely, using only opm (actively maintained by OLM team).

Changes per config:
- operator.bundles: add as: oadp-operator-bundle + skip_building_index: true
- images: add Dockerfile.catalog build → oadp-operator-catalog
- dependencies: OO_INDEX: ci-index → OO_INDEX: oadp-operator-catalog
- env: restore OO_CHANNEL/OO_PACKAGE/OO_TARGET_NAMESPACES
- workflow: keep optional-operators-ci-aws (not operator-sdk variant)

TechPreviewNoUpgrade for OCP 4.22+ configs (oadp-1.6, oadp-dev):
- FEATURE_SET: TechPreviewNoUpgrade enables OLMv1 OwnNamespace support
- Enables VolumeGroupSnapshot backup/restore testing

CustomNoUpgrade for oadp-1.4 4.18 (existing behavior preserved).

Deleted EOL configs: oadp-1.0 (4.12, 4.14)

Depends on: openshift/oadp-operator#2204 (Dockerfile.catalog)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>
@openshift-ci openshift-ci Bot requested review from mpryc and mrnold May 14, 2026 21:50
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 14, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: kaovilai

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

The pull request process is described here

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

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

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

coderabbitai Bot commented May 14, 2026

Walkthrough

This PR removes two complete oadp-1.0 branch CI configurations (4.12 and 4.14) and updates nine release-branch configurations across OADP operator versions 1.3–1.6 and dev to build FBC catalog images, refactor operator bundle definitions, and redirect test job dependencies to use the new catalog image index instead of ci-index, with feature flags added in newer versions.

Changes

OADP operator CI catalog and bundle migration

Layer / File(s) Summary
Operator 1.3 catalog image and test dependency updates
ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.3__4.{12,13,14,15}.yaml
Catalog image builds (build/Dockerfile.catalogoadp-operator-catalog) are introduced with BUNDLE_IMG build arguments; operator bundle definitions are refactored to use explicit naming (as: oadp-operator-bundle) and skip index building (skip_building_index: true). Both e2e and periodic AWS test jobs redirect OO_INDEX from ci-index to oadp-operator-catalog.
Operator 1.4 catalog image and test dependency updates
ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.4__4.18.yaml
Catalog image and bundle configurations follow the 1.3 pattern; test job variants expanded to include HCP-AWS alongside standard and periodic AWS e2e jobs, all using the oadp-operator-catalog index.
Operator 1.5 catalog image and test dependency updates
ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5__4.{19,20}.yaml
Catalog image and bundle refactoring applied; test coverage extended across KubeVirt-AWS and HCP-AWS variants (both one-off and periodic), each redirecting OO_INDEX to oadp-operator-catalog.
Operator 1.6 catalog image, bundle, and feature flag updates
ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.{18,22,5.0}.yaml
Catalog image and bundle refactoring consistent with earlier versions; versions 4.22 and 5.0 additionally set FEATURE_SET: TechPreviewNoUpgrade across all test job variants (CLI, standard AWS, KubeVirt, and HCP, both standard and periodic).
Operator dev catalog image, bundle, and feature flag updates
ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__4.{22,23,5.0}.yaml
Catalog image and bundle refactoring applied; dev-4.22 and dev-4.23 introduce FEATURE_SET: TechPreviewNoUpgrade, extended in dev-5.0 to cover CLI, AWS, KubeVirt, and HCP test variants.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related issues

Suggested labels

rehearsals-ack

Suggested reviewers

  • dhaiducek
  • rokej
🚥 Pre-merge checks | ✅ 12
✅ Passed checks (12 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'OADP: migrate CI to FBC catalog image (no operator-sdk) + TechPreview' accurately summarizes the main changes: migrating OADP CI to use File-Based Catalog (FBC) without operator-sdk and adding TechPreview feature support.
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 Check is not applicable. This PR modifies only YAML CI configuration files, not Ginkgo test code. No Ginkgo tests are present in the PR.
Test Structure And Quality ✅ Passed This PR modifies only YAML CI configuration files. The custom check evaluates Ginkgo test code quality, which is not present in this PR. The check is not applicable.
Microshift Test Compatibility ✅ Passed This PR only modifies CI/operator configuration YAML files and does not add any Ginkgo e2e test code. The MicroShift Test Compatibility check is not applicable since it applies only to new test code.
Single Node Openshift (Sno) Test Compatibility ✅ Passed No new Ginkgo e2e tests are added in this PR. All changes are CI configuration file updates (YAML). The SNO compatibility check only applies to new test code additions and is not applicable here.
Topology-Aware Scheduling Compatibility ✅ Passed Check not applicable. PR modifies only CI-operator configuration files (build/test definitions), not deployment manifests, operator code, or controllers. No scheduling constraints present.
Ote Binary Stdout Contract ✅ Passed OTE Binary Stdout Contract check is not applicable. PR contains only YAML CI/CD configuration files with no application code, test code, or process-level code that could violate stdout contracts.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed This PR modifies only OpenShift CI configuration files (YAML). No Ginkgo e2e test code is added or modified. The custom check is inapplicable to this PR.

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

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@kaovilai: 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-oadp-operator-oadp-1.3-4.12-ci-bundle-oadp-operator-bundle openshift/oadp-operator presubmit Presubmit changed
pull-ci-openshift-oadp-operator-oadp-1.3-4.13-ci-bundle-oadp-operator-bundle openshift/oadp-operator presubmit Presubmit changed
pull-ci-openshift-oadp-operator-oadp-1.3-4.14-ci-bundle-oadp-operator-bundle openshift/oadp-operator presubmit Presubmit changed
pull-ci-openshift-oadp-operator-oadp-1.3-4.15-ci-bundle-oadp-operator-bundle openshift/oadp-operator presubmit Presubmit changed
pull-ci-openshift-oadp-operator-oadp-1.4-4.18-ci-bundle-oadp-operator-bundle openshift/oadp-operator presubmit Presubmit changed
pull-ci-openshift-oadp-operator-oadp-1.5-4.19-ci-bundle-oadp-operator-bundle openshift/oadp-operator presubmit Presubmit changed
pull-ci-openshift-oadp-operator-oadp-1.5-4.20-ci-bundle-oadp-operator-bundle openshift/oadp-operator presubmit Presubmit changed
pull-ci-openshift-oadp-operator-oadp-1.6-4.18-ci-bundle-oadp-operator-bundle openshift/oadp-operator presubmit Presubmit changed
pull-ci-openshift-oadp-operator-oadp-1.6-4.22-ci-bundle-oadp-operator-bundle openshift/oadp-operator presubmit Presubmit changed
pull-ci-openshift-oadp-operator-oadp-1.6-5.0-ci-bundle-oadp-operator-bundle openshift/oadp-operator presubmit Presubmit changed
pull-ci-openshift-oadp-operator-oadp-dev-4.22-ci-bundle-oadp-operator-bundle openshift/oadp-operator presubmit Presubmit changed
pull-ci-openshift-oadp-operator-oadp-dev-4.23-ci-bundle-oadp-operator-bundle openshift/oadp-operator presubmit Presubmit changed
pull-ci-openshift-oadp-operator-oadp-dev-5.0-ci-bundle-oadp-operator-bundle openshift/oadp-operator presubmit Presubmit changed
pull-ci-openshift-oadp-operator-oadp-1.6-4.18-images openshift/oadp-operator presubmit Ci-operator config changed
pull-ci-openshift-oadp-operator-oadp-1.3-4.13-e2e-test-aws openshift/oadp-operator presubmit Ci-operator config changed
pull-ci-openshift-oadp-operator-oadp-1.3-4.13-images openshift/oadp-operator presubmit Ci-operator config changed
pull-ci-openshift-oadp-operator-oadp-1.3-4.15-e2e-test-aws openshift/oadp-operator presubmit Ci-operator config changed
pull-ci-openshift-oadp-operator-oadp-1.3-4.15-images openshift/oadp-operator presubmit Ci-operator config changed
pull-ci-openshift-oadp-operator-oadp-1.4-4.18-e2e-test-aws openshift/oadp-operator presubmit Ci-operator config changed
pull-ci-openshift-oadp-operator-oadp-1.4-4.18-e2e-test-hcp-aws openshift/oadp-operator presubmit Ci-operator config changed
pull-ci-openshift-oadp-operator-oadp-1.4-4.18-images openshift/oadp-operator presubmit Ci-operator config changed
pull-ci-openshift-oadp-operator-oadp-dev-5.0-e2e-test-aws openshift/oadp-operator presubmit Ci-operator config changed
pull-ci-openshift-oadp-operator-oadp-dev-5.0-e2e-test-cli-aws openshift/oadp-operator presubmit Ci-operator config changed
pull-ci-openshift-oadp-operator-oadp-dev-5.0-images openshift/oadp-operator presubmit Ci-operator config changed
pull-ci-openshift-oadp-operator-oadp-dev-4.23-e2e-test-aws openshift/oadp-operator presubmit Ci-operator config changed

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

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 14, 2026

@kaovilai: 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.

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

🤖 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/oadp-operator/openshift-oadp-operator-oadp-1.6__4.22.yaml`:
- Around line 8-12: The BUNDLE_IMG build-arg in build_args currently uses the
unresolved alias "oadp-operator-bundle"; change its value to a pipeline image
reference (e.g., "pipeline:oadp-operator-bundle") or a full pullspec so the
build/Dockerfile.catalog receives a resolvable image and opm render won't fail;
update the build_args entry for name: BUNDLE_IMG accordingly and ensure any
downstream usage in Dockerfile.catalog or opm render expects the pipeline:...
form.
🪄 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: acec6a56-5a39-4e95-ba5b-45dcd06aabf7

📥 Commits

Reviewing files that changed from the base of the PR and between f109e82 and df40d86.

⛔ Files ignored due to path filters (12)
  • ci-operator/jobs/openshift/oadp-operator/openshift-oadp-operator-oadp-1.0-periodics.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/oadp-operator/openshift-oadp-operator-oadp-1.0-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/oadp-operator/openshift-oadp-operator-oadp-1.3-periodics.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/oadp-operator/openshift-oadp-operator-oadp-1.3-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/oadp-operator/openshift-oadp-operator-oadp-1.4-periodics.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/oadp-operator/openshift-oadp-operator-oadp-1.4-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5-periodics.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6-periodics.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/oadp-operator/openshift-oadp-operator-oadp-dev-periodics.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/oadp-operator/openshift-oadp-operator-oadp-dev-presubmits.yaml is excluded by !ci-operator/jobs/**
📒 Files selected for processing (15)
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.0__4.12.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.0__4.14.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.3__4.12.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.3__4.13.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.3__4.14.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.3__4.15.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.4__4.18.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5__4.19.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5__4.20.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.18.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.22.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__5.0.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__4.22.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__4.23.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__5.0.yaml
💤 Files with no reviewable changes (2)
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.0__4.12.yaml
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.0__4.14.yaml

Comment on lines +8 to +12
- build_args:
- name: BUNDLE_IMG
value: oadp-operator-bundle
dockerfile_path: build/Dockerfile.catalog
to: oadp-operator-catalog
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.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🌐 Web query:

In OpenShift ci-operator config, does images[].build_args[].valueautomatically resolve pipeline image aliases (for exampleoadp-operator-bundle) to pullspecs during image builds? Please answer using official OpenShift CI documentation and examples.

💡 Result:

No, images[].build_args[].value does not automatically resolve pipeline image aliases like 'oadp-operator-bundle' to pullspecs during image builds. Official OpenShift CI documentation states that build_args values are taken directly from the 'value' field in the configuration and passed to the build to override Dockerfile defaults [1][2]. Examples show literal strings like 'okd' [1]. Image alias resolution (e.g., 'installer' to 'pipeline:installer') applies to specific fields like images[].from, tests[].container.from, but build_args is not listed among them [1]. OpenShift BuildConfig docs confirm buildArgs values are literal strings without alias resolution [3][4]. No examples or docs indicate resolution for build_args values, including in OADP operator repo [5][6].

Citations:


Use pipeline image references instead of aliases in build_args.

The BUNDLE_IMG build-arg uses the pipeline alias oadp-operator-bundle, which ci-operator does not resolve in build_args[].value. This literal string will be passed to build/Dockerfile.catalog, causing opm render to fail or reference an unintended image. Update the config to reference the image as pipeline:oadp-operator-bundle or use a full pullspec instead.

🤖 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/oadp-operator/openshift-oadp-operator-oadp-1.6__4.22.yaml`
around lines 8 - 12, The BUNDLE_IMG build-arg in build_args currently uses the
unresolved alias "oadp-operator-bundle"; change its value to a pipeline image
reference (e.g., "pipeline:oadp-operator-bundle") or a full pullspec so the
build/Dockerfile.catalog receives a resolvable image and opm render won't fail;
update the build_args entry for name: BUNDLE_IMG accordingly and ensure any
downstream usage in Dockerfile.catalog or opm render expects the pipeline:...
form.

@kaovilai
Copy link
Copy Markdown
Member Author

PJ Rehearsal is blocked by openshift/oadp-operator#2204 merging — build/Dockerfile.catalog doesn't exist on the oadp-operator branch yet.

Note

Responses generated with Claude

@kaovilai
Copy link
Copy Markdown
Member Author

/hold

@openshift-ci openshift-ci Bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label May 14, 2026
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. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant