Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,24 @@ images:
- arm64
dockerfile_path: Dockerfile
to: oadp-operator-1.4
- dockerfile_path: build/ci-Dockerfile
to: test-oadp-operator
operator:
bundles:
- as: oadp-operator-bundle
dockerfile_path: build/Dockerfile.bundle
skip_building_index: true
Comment on lines +16 to +18

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.

🗄️ Data Integrity & Integration | 🟠 Major | 🏗️ Heavy lift

🧩 Analysis chain

🏁 Script executed:

#!/usr/bin/env bash
set -euo pipefail

tmpdir="$(mktemp -d)"
trap 'rm -rf "$tmpdir"' EXIT

for version in 1.4 1.5; do
  config="ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-${version}.yaml"
  manifest="$tmpdir/oadp-${version}-csv.yaml"

  curl -fsSL \
    "https://raw.githubusercontent.com/openshift/oadp-operator/oadp-${version}/bundle/manifests/oadp-operator.clusterserviceversion.yaml" \
    > "$manifest"

  echo "=== OADP ${version} manifest pullspecs ==="
  rg -n 'containerImage:|relatedImages:|value: quay.io/konveyor/' "$manifest"

  echo "=== OADP ${version} configured substitutions and promotion ==="
  rg -n -C3 'substitutions:|pullspec:|with:|promotion:|additional_images:|tag:' "$config" || true
done

Repository: openshift/release

Length of output: 3365


🏁 Script executed:

#!/usr/bin/env bash
set -euo pipefail

echo '=== target configurations ==='
for f in \
  ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.4.yaml \
  ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5.yaml
do
  echo "--- $f"
  cat -n "$f"
done

echo '=== nearby OADP configurations with substitutions or bundle images ==='
rg -n -C4 'substitutions:|skip_building_index:|Dockerfile.bundle|additional_images:|oadp-operator-bundle' \
  ci-operator/config/openshift/oadp-operator ci-operator/config/openshift 2>/dev/null | head -n 500

echo '=== ci-tools documentation and schema references ==='
rg -n -C4 'substitutions|skip_building_index|additional_images|bundle' \
  ci-operator pkg 2>/dev/null | head -n 500 || true

echo '=== repository files related to OADP bundle build ==='
git ls-files | rg '(^|/)(Dockerfile\.bundle|bundle/|oadp-operator)' | head -n 300

Repository: openshift/release

Length of output: 50374


🏁 Script executed:

#!/usr/bin/env bash
set -euo pipefail

for f in \
  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.6.yaml
do
  echo "=== $f: build, images, bundle, substitutions, promotion ==="
  awk '
    /^images:/ || /^operator:/ || /^promotion:/ {show=1}
    show {print NR ":" $0}
    /^resources:/ {show=0}
  ' "$f" | sed -n '1,150p'
done

echo '=== exact pullspec mappings in OADP release configurations ==='
rg -n -B1 -A1 'pullspec:|with:' ci-operator/config/openshift/oadp-operator \
  | rg 'oadp-(1\.4|1\.5|1\.6)|pullspec:|with:' | head -n 240

Repository: openshift/release

Length of output: 36335


🏁 Script executed:

#!/usr/bin/env bash
set -euo pipefail

python3 - <<'PY'
from pathlib import Path
import re

root = Path("ci-operator/config/openshift/oadp-operator")

cases = [
    (
        "1.4",
        root / "openshift-oadp-operator-oadp-1.4.yaml",
        root / "openshift-oadp-operator-oadp-1.4__4.18.yaml",
    ),
    (
        "1.5",
        root / "openshift-oadp-operator-oadp-1.5.yaml",
        root / "openshift-oadp-operator-oadp-1.5__4.19.yaml",
    ),
]

for version, target_path, reference_path in cases:
    target = target_path.read_text()
    reference = reference_path.read_text()

    target_has_substitutions = bool(
        re.search(r"(?m)^  substitutions:\s*$", target)
    )
    target_image = re.search(
        rf"(?m)^\s+to: oadp-operator-{re.escape(version)}\s*$", target
    )
    required_operator_mapping = (
        f"  - pullspec: quay.io/konveyor/oadp-operator:oadp-{version}\n"
        f"    with: oadp-operator-{version}"
    )
    reference_has_mapping = required_operator_mapping in reference

    promoted_additional = re.search(
        rf"(?ms)^  - additional_images:\n(.*?)(?=^  - |^resources:)",
        target,
    )
    additional_block = promoted_additional.group(1) if promoted_additional else ""
    bundle_promoted = "oadp-operator-bundle: oadp-operator-bundle" in additional_block
    operator_version_promoted = (
        f"oadp-operator: oadp-operator-{version}" in additional_block
    )

    print(f"=== OADP {version} ===")
    print(f"target image output present: {bool(target_image)}")
    print(f"target substitutions present: {target_has_substitutions}")
    print(f"reference operator substitution present: {reference_has_mapping}")
    print(f"bundle promoted to oadp-{version}: {bundle_promoted}")
    print(
        "versioned operator image promoted in additional_images: "
        f"{operator_version_promoted}"
    )
PY

Repository: openshift/release

Length of output: 613


Add the missing bundle substitutions.

Without operator.substitutions, the 1.4 and 1.5 bundles retain quay.io/konveyor/oadp-operator:oadp-1.4 and :oadp-1.5 instead of using the CI-built oadp-operator-1.4 and oadp-operator-1.5 images. Copy the corresponding version-specific substitution mappings from the __4.18 and __4.19 configurations, then run make update.

📍 Affects 2 files
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.4.yaml#L16-L18 (this comment)
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.4.yaml#L25-L29
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5.yaml#L16-L18
  • ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5.yaml#L25-L29
🤖 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.4.yaml`
around lines 16 - 18, Add the version-specific operator.substitutions mappings
to the bundle definitions in
ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.4.yaml
at lines 16-18 and 25-29, and
ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5.yaml
at lines 16-18 and 25-29, copying them from the corresponding __4.18 and __4.19
configurations; then run make update so the bundles use the CI-built
oadp-operator-1.4 and oadp-operator-1.5 images.

promotion:
to:
- name: oadp-operator
- excluded_images:
- test-oadp-operator
name: oadp-operator
namespace: konveyor
- additional_images:
oadp-operator-bundle: oadp-operator-bundle
oadp-operator-e2e-tests: test-oadp-operator
namespace: konveyor
tag: oadp-1.4
resources:
'*':
limits:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,24 @@ images:
- arm64
dockerfile_path: Dockerfile
to: oadp-operator-1.5
- dockerfile_path: build/ci-Dockerfile
to: test-oadp-operator
operator:
bundles:
- as: oadp-operator-bundle
dockerfile_path: build/Dockerfile.bundle
skip_building_index: true
promotion:
to:
- name: oadp-operator
- excluded_images:
- test-oadp-operator
name: oadp-operator
namespace: konveyor
- additional_images:
oadp-operator-bundle: oadp-operator-bundle
oadp-operator-e2e-tests: test-oadp-operator
namespace: konveyor
tag: oadp-1.5
resources:
'*':
limits:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -202,12 +202,14 @@ periodics:
decoration_config:
sparse_checkout_files:
- Dockerfile
- build/ci-Dockerfile
extra_refs:
- base_ref: oadp-1.4
org: openshift
repo: oadp-operator
sparse_checkout_files:
- Dockerfile
- build/ci-Dockerfile
labels:
ci.openshift.io/generator: prowgen
pj-rehearse.openshift.io/can-be-rehearsed: "true"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ postsubmits:
decoration_config:
sparse_checkout_files:
- Dockerfile
- build/ci-Dockerfile
labels:
capability/arm64: arm64
ci-operator.openshift.io/is-promotion: "true"
Expand All @@ -24,6 +25,8 @@ postsubmits:
- --promote
- --report-credentials-file=/etc/report/credentials
- --target=[images]
- --target=oadp-operator-bundle
- --target=test-oadp-operator
command:
- ci-operator
image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest
Expand Down Expand Up @@ -71,6 +74,7 @@ postsubmits:
decoration_config:
sparse_checkout_files:
- Dockerfile
- build/ci-Dockerfile
labels:
ci.openshift.io/generator: prowgen
max_concurrency: 1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -297,6 +297,63 @@ presubmits:
secret:
secretName: result-aggregator
trigger: (?m)^/test( | .* )4.18-images,?($|\s.*)
- agent: kubernetes
always_run: true
branches:
- ^oadp-1\.4$
- ^oadp-1\.4-
cluster: build06
context: ci/prow/ci-bundle-oadp-operator-bundle
decorate: true
decoration_config:
sparse_checkout_files:
- Dockerfile
- build/ci-Dockerfile
labels:
ci.openshift.io/generator: prowgen
pj-rehearse.openshift.io/can-be-rehearsed: "true"
name: pull-ci-openshift-oadp-operator-oadp-1.4-ci-bundle-oadp-operator-bundle
rerun_command: /test ci-bundle-oadp-operator-bundle
spec:
containers:
- args:
- --gcs-upload-secret=/secrets/gcs/service-account.json
- --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson
- --report-credentials-file=/etc/report/credentials
- --target=oadp-operator-bundle
command:
- ci-operator
image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest
imagePullPolicy: Always
name: ""
resources:
requests:
cpu: 10m
volumeMounts:
- mountPath: /secrets/gcs
name: gcs-credentials
readOnly: true
- mountPath: /secrets/manifest-tool
name: manifest-tool-local-pusher
readOnly: true
- mountPath: /etc/pull-secret
name: pull-secret
readOnly: true
- mountPath: /etc/report
name: result-aggregator
readOnly: true
serviceAccountName: ci-operator
volumes:
- name: manifest-tool-local-pusher
secret:
secretName: manifest-tool-local-pusher
- name: pull-secret
secret:
secretName: registry-pull-credentials
- name: result-aggregator
secret:
secretName: result-aggregator
trigger: (?m)^/test( | .* )ci-bundle-oadp-operator-bundle,?($|\s.*)
- agent: kubernetes
always_run: true
branches:
Expand All @@ -308,6 +365,7 @@ presubmits:
decoration_config:
sparse_checkout_files:
- Dockerfile
- build/ci-Dockerfile
labels:
capability/arm64: arm64
ci.openshift.io/generator: prowgen
Expand All @@ -321,6 +379,8 @@ presubmits:
- --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson
- --report-credentials-file=/etc/report/credentials
- --target=[images]
- --target=oadp-operator-bundle
- --target=test-oadp-operator
command:
- ci-operator
image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest
Expand Down Expand Up @@ -365,6 +425,7 @@ presubmits:
decoration_config:
sparse_checkout_files:
- Dockerfile
- build/ci-Dockerfile
labels:
ci.openshift.io/generator: prowgen
pj-rehearse.openshift.io/can-be-rehearsed: "true"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -823,12 +823,14 @@ periodics:
decoration_config:
sparse_checkout_files:
- Dockerfile
- build/ci-Dockerfile
extra_refs:
- base_ref: oadp-1.5
org: openshift
repo: oadp-operator
sparse_checkout_files:
- Dockerfile
- build/ci-Dockerfile
labels:
ci.openshift.io/generator: prowgen
pj-rehearse.openshift.io/can-be-rehearsed: "true"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ postsubmits:
decoration_config:
sparse_checkout_files:
- Dockerfile
- build/ci-Dockerfile
labels:
capability/arm64: arm64
ci-operator.openshift.io/is-promotion: "true"
Expand All @@ -24,6 +25,8 @@ postsubmits:
- --promote
- --report-credentials-file=/etc/report/credentials
- --target=[images]
- --target=oadp-operator-bundle
- --target=test-oadp-operator
command:
- ci-operator
image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest
Expand Down Expand Up @@ -71,6 +74,7 @@ postsubmits:
decoration_config:
sparse_checkout_files:
- Dockerfile
- build/ci-Dockerfile
labels:
ci.openshift.io/generator: prowgen
max_concurrency: 1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -946,6 +946,63 @@ presubmits:
secret:
secretName: result-aggregator
trigger: (?m)^/test( | .* )4.20-images,?($|\s.*)
- agent: kubernetes
always_run: true
branches:
- ^oadp-1\.5$
- ^oadp-1\.5-
cluster: build01
context: ci/prow/ci-bundle-oadp-operator-bundle
decorate: true
decoration_config:
sparse_checkout_files:
- Dockerfile
- build/ci-Dockerfile
labels:
ci.openshift.io/generator: prowgen
pj-rehearse.openshift.io/can-be-rehearsed: "true"
name: pull-ci-openshift-oadp-operator-oadp-1.5-ci-bundle-oadp-operator-bundle
rerun_command: /test ci-bundle-oadp-operator-bundle
spec:
containers:
- args:
- --gcs-upload-secret=/secrets/gcs/service-account.json
- --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson
- --report-credentials-file=/etc/report/credentials
- --target=oadp-operator-bundle
command:
- ci-operator
image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest
imagePullPolicy: Always
name: ""
resources:
requests:
cpu: 10m
volumeMounts:
- mountPath: /secrets/gcs
name: gcs-credentials
readOnly: true
- mountPath: /secrets/manifest-tool
name: manifest-tool-local-pusher
readOnly: true
- mountPath: /etc/pull-secret
name: pull-secret
readOnly: true
- mountPath: /etc/report
name: result-aggregator
readOnly: true
serviceAccountName: ci-operator
volumes:
- name: manifest-tool-local-pusher
secret:
secretName: manifest-tool-local-pusher
- name: pull-secret
secret:
secretName: registry-pull-credentials
- name: result-aggregator
secret:
secretName: result-aggregator
trigger: (?m)^/test( | .* )ci-bundle-oadp-operator-bundle,?($|\s.*)
- agent: kubernetes
always_run: true
branches:
Expand All @@ -957,6 +1014,7 @@ presubmits:
decoration_config:
sparse_checkout_files:
- Dockerfile
- build/ci-Dockerfile
labels:
capability/arm64: arm64
ci.openshift.io/generator: prowgen
Expand All @@ -970,6 +1028,8 @@ presubmits:
- --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson
- --report-credentials-file=/etc/report/credentials
- --target=[images]
- --target=oadp-operator-bundle
- --target=test-oadp-operator
command:
- ci-operator
image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest
Expand Down Expand Up @@ -1014,6 +1074,7 @@ presubmits:
decoration_config:
sparse_checkout_files:
- Dockerfile
- build/ci-Dockerfile
labels:
ci.openshift.io/generator: prowgen
pj-rehearse.openshift.io/can-be-rehearsed: "true"
Expand Down