From cc71f8faec69e69c147a063c65849cbfc99c95a5 Mon Sep 17 00:00:00 2001 From: Tiger Kaovilai Date: Tue, 25 Aug 2026 16:42:03 -0400 Subject: [PATCH 1/2] oadp-analyze-e2e-failure: give Claude explicit source-clone instructions Follow-up to #83957. The post-step runs on the generic claude-ai-helpers image, not oadp-operator's own build_root, so unlike the in-repo approach it replaced, the repo source isn't pre-checked-out on disk. Add an OADP_BRANCH env (set per config file, matching zz_generated_metadata.branch) and tell Claude explicitly, in the system prompt, to `git clone` both openshift/oadp-operator and openshift/velero at that branch if artifact-based evidence alone isn't enough -- rather than leaving it to infer the right repo/branch/URL on its own. Branch names are mirrored 1:1 between oadp-operator and velero, confirmed via https://github.com/oadp-rebasebot/oadp-rebase/blob/oadp-dev/repos.yaml (the canonical source of truth for OADP ecosystem repo/branch mappings). The claude-ai-helpers image (openshift-eng/ai-helpers) is built on the standard OCP golang builder base (has git) plus an explicit `gh` CLI install, so it's fully capable of this -- it just wasn't being told to. Signed-off-by: Tiger Kaovilai --- .../openshift-oadp-operator-oadp-1.4__4.18.yaml | 4 ++++ .../openshift-oadp-operator-oadp-1.5__4.19.yaml | 8 ++++++++ .../openshift-oadp-operator-oadp-1.5__4.20.yaml | 8 ++++++++ .../openshift-oadp-operator-oadp-1.6__4.18.yaml | 1 + .../openshift-oadp-operator-oadp-1.6__4.22.yaml | 8 ++++++++ .../openshift-oadp-operator-oadp-1.6__4.23.yaml | 8 ++++++++ .../openshift-oadp-operator-oadp-1.6__5.0.yaml | 8 ++++++++ .../openshift-oadp-operator-oadp-dev__4.22.yaml | 4 ++++ .../openshift-oadp-operator-oadp-dev__4.23.yaml | 2 ++ .../openshift-oadp-operator-oadp-dev__5.0.yaml | 7 +++++++ .../openshift-oadp-operator-oadp-dev__5.1.yaml | 6 ++++++ .../oadp-analyze-e2e-failure-commands.sh | 9 ++++++++- .../oadp-analyze-e2e-failure-ref.yaml | 9 +++++++++ 13 files changed, 81 insertions(+), 1 deletion(-) diff --git a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.4__4.18.yaml b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.4__4.18.yaml index 4d147af9bf7bc..df89b4aecf38d 100644 --- a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.4__4.18.yaml +++ b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.4__4.18.yaml @@ -81,6 +81,7 @@ tests: env: FEATURE_GATES: '[''OpenShiftPodSecurityAdmission=false'']' FEATURE_SET: CustomNoUpgrade + OADP_BRANCH: oadp-1.4 OO_CHANNEL: stable-1.4 OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -112,6 +113,7 @@ tests: env: FEATURE_GATES: '[''OpenShiftPodSecurityAdmission=false'']' FEATURE_SET: CustomNoUpgrade + OADP_BRANCH: oadp-1.4 OO_CHANNEL: stable-1.4 OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -151,6 +153,7 @@ tests: env: FEATURE_GATES: '[''OpenShiftPodSecurityAdmission=false'']' FEATURE_SET: CustomNoUpgrade + OADP_BRANCH: oadp-1.4 OO_CHANNEL: stable-1.4 OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -190,6 +193,7 @@ tests: env: FEATURE_GATES: '[''OpenShiftPodSecurityAdmission=false'']' FEATURE_SET: CustomNoUpgrade + OADP_BRANCH: oadp-1.4 OO_CHANNEL: stable-1.4 OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator diff --git a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5__4.19.yaml b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5__4.19.yaml index cbcec05ffec54..03edef98cb550 100644 --- a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5__4.19.yaml +++ b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5__4.19.yaml @@ -79,6 +79,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -108,6 +109,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -145,6 +147,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -174,6 +177,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -211,6 +215,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -240,6 +245,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -268,6 +274,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -296,6 +303,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator diff --git a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5__4.20.yaml b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5__4.20.yaml index 5276e4d72df7c..3e38c0d1885a0 100644 --- a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5__4.20.yaml +++ b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.5__4.20.yaml @@ -79,6 +79,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -108,6 +109,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -145,6 +147,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -174,6 +177,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -211,6 +215,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -240,6 +245,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -268,6 +274,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -296,6 +303,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.5 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator diff --git a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.18.yaml b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.18.yaml index dfeedb44911aa..89095c8d9cca9 100644 --- a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.18.yaml +++ b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.18.yaml @@ -149,6 +149,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator diff --git a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.22.yaml b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.22.yaml index 48dfaec652efe..5762135ec94f1 100644 --- a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.22.yaml +++ b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.22.yaml @@ -154,6 +154,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -183,6 +184,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -220,6 +222,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -249,6 +252,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -286,6 +290,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -315,6 +320,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -343,6 +349,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -371,6 +378,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator diff --git a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.23.yaml b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.23.yaml index a7477b862a7ab..13db7ad9df569 100644 --- a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.23.yaml +++ b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__4.23.yaml @@ -46,6 +46,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -75,6 +76,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -112,6 +114,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -141,6 +144,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -178,6 +182,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -207,6 +212,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -235,6 +241,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -263,6 +270,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator diff --git a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__5.0.yaml b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__5.0.yaml index 2d0a192b5a024..62423e37b3cbd 100644 --- a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__5.0.yaml +++ b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-1.6__5.0.yaml @@ -150,6 +150,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -179,6 +180,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -216,6 +218,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -245,6 +248,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -282,6 +286,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -311,6 +316,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -339,6 +345,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -367,6 +374,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-1.6 OO_CHANNEL: stable OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator diff --git a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__4.22.yaml b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__4.22.yaml index d98e504ed26b0..23a060b5eb718 100644 --- a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__4.22.yaml +++ b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__4.22.yaml @@ -154,6 +154,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -183,6 +184,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -220,6 +222,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -248,6 +251,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator diff --git a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__4.23.yaml b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__4.23.yaml index f2dcaddecbfd3..1319e30084c0d 100644 --- a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__4.23.yaml +++ b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__4.23.yaml @@ -151,6 +151,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -188,6 +189,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator diff --git a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__5.0.yaml b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__5.0.yaml index 352e57e16766b..f1fe4579ab610 100644 --- a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__5.0.yaml +++ b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__5.0.yaml @@ -150,6 +150,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -179,6 +180,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -216,6 +218,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -245,6 +248,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -282,6 +286,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -310,6 +315,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -338,6 +344,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator diff --git a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__5.1.yaml b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__5.1.yaml index a50836f6750cb..c2b7c69aad45e 100644 --- a/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__5.1.yaml +++ b/ci-operator/config/openshift/oadp-operator/openshift-oadp-operator-oadp-dev__5.1.yaml @@ -151,6 +151,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -181,6 +182,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -218,6 +220,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -255,6 +258,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -283,6 +287,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator @@ -311,6 +316,7 @@ tests: dependencies: OO_INDEX: ci-index env: + OADP_BRANCH: oadp-dev OO_CHANNEL: dev OO_INSTALL_NAMESPACE: openshift-adp OO_PACKAGE: oadp-operator diff --git a/ci-operator/step-registry/oadp/analyze-e2e-failure/oadp-analyze-e2e-failure-commands.sh b/ci-operator/step-registry/oadp/analyze-e2e-failure/oadp-analyze-e2e-failure-commands.sh index 10ca4de6220cb..a30adb4d996b8 100755 --- a/ci-operator/step-registry/oadp/analyze-e2e-failure/oadp-analyze-e2e-failure-commands.sh +++ b/ci-operator/step-registry/oadp/analyze-e2e-failure/oadp-analyze-e2e-failure-commands.sh @@ -108,7 +108,14 @@ OADP CONTEXT: - must-gather/clusters//oadp-must-gather-summary.md: high-level cluster diagnostics summary. - must-gather/clusters//namespaces/openshift-adp/: Velero/node-agent/plugin pod logs, DPA/BSL/VSL/backup/restore resources. - Per-test directories with pod logs from the openshift-adp namespace and application namespaces under test. -- Known flakes are tracked upstream in tests/e2e/lib/flakes.go (flakePatterns / errorIgnorePatterns) in the openshift/oadp-operator repo — cross-reference failure signatures against known issue patterns before treating them as new bugs." + +SOURCE CODE ACCESS (this pod runs on a generic image — the oadp-operator repo is NOT pre-checked-out, unlike the old in-container analysis this replaces): +- You have git, gh, and general network access in this environment. If artifact-based evidence alone isn't enough to explain a failure, clone the source yourself: + git clone --depth 1 --branch ${OADP_BRANCH} https://github.com/openshift/oadp-operator /tmp/oadp-operator + git clone --depth 1 --branch ${OADP_BRANCH} https://github.com/openshift/velero /tmp/velero + (branch names are mirrored 1:1 between the two repos — confirmed via https://github.com/oadp-rebasebot/oadp-rebase/blob/oadp-dev/repos.yaml, the canonical source of truth for OADP ecosystem repo/branch mappings.) +- Known flakes are tracked in /tmp/oadp-operator/tests/e2e/lib/flakes.go (flakePatterns / errorIgnorePatterns) — cross-reference failure signatures against known issue patterns before treating them as new bugs. +- OADP is a thin operator wrapping Velero: most real backup/restore root causes live in Velero's own controller code (/tmp/velero/pkg/controller/), not OADP's wrapper. Grep there for error strings you find in pod logs before concluding something is an OADP-specific bug." echo "" echo "Running Claude with /ci:prow-job-analysis skill..." diff --git a/ci-operator/step-registry/oadp/analyze-e2e-failure/oadp-analyze-e2e-failure-ref.yaml b/ci-operator/step-registry/oadp/analyze-e2e-failure/oadp-analyze-e2e-failure-ref.yaml index a7cf576abe7e8..d994deaf34a88 100644 --- a/ci-operator/step-registry/oadp/analyze-e2e-failure/oadp-analyze-e2e-failure-ref.yaml +++ b/ci-operator/step-registry/oadp/analyze-e2e-failure/oadp-analyze-e2e-failure-ref.yaml @@ -38,6 +38,15 @@ ref: Space-separated list of test step names to check for finished.json. These are the inner step names (as: fields) within the test definition. All OADP e2e test entries currently use the inner step name "e2e". + - name: OADP_BRANCH + default: "oadp-dev" + documentation: |- + The openshift/oadp-operator branch under test (e.g. oadp-1.6, oadp-dev). + Override per config file to match zz_generated_metadata.branch. Also + used as the openshift/velero branch to clone for source-level context, + since branch names are mirrored 1:1 between the two repos (see + https://github.com/oadp-rebasebot/oadp-rebase/blob/oadp-dev/repos.yaml, + the canonical source of truth for OADP ecosystem repo/branch mappings). resources: requests: cpu: 100m From 465757313638fd1cf69be5073c0a98f978d8f98a Mon Sep 17 00:00:00 2001 From: Tiger Kaovilai Date: Tue, 25 Aug 2026 16:51:10 -0400 Subject: [PATCH 2/2] oadp-analyze-e2e-failure: extend source-clone guidance to plugin repos The prior commit only named openshift/oadp-operator and openshift/velero explicitly. Root causes can equally live in a cloud-provider plugin or other OADP ecosystem component (velero-plugin-for-aws, kubevirt-velero-plugin, hypershift-oadp-plugin, etc.) that the prompt gave no guidance for at all. Point Claude at oadp-rebasebot/oadp-rebase's repos.yaml -- the canonical org/repo/branch mapping for the whole OADP ecosystem -- instead of trying to enumerate every repo/branch exception (dev_branch overrides, etc.) inline in the prompt. Signed-off-by: Tiger Kaovilai --- .../analyze-e2e-failure/oadp-analyze-e2e-failure-commands.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ci-operator/step-registry/oadp/analyze-e2e-failure/oadp-analyze-e2e-failure-commands.sh b/ci-operator/step-registry/oadp/analyze-e2e-failure/oadp-analyze-e2e-failure-commands.sh index a30adb4d996b8..eadcfe560ac02 100755 --- a/ci-operator/step-registry/oadp/analyze-e2e-failure/oadp-analyze-e2e-failure-commands.sh +++ b/ci-operator/step-registry/oadp/analyze-e2e-failure/oadp-analyze-e2e-failure-commands.sh @@ -115,7 +115,8 @@ SOURCE CODE ACCESS (this pod runs on a generic image — the oadp-operator repo git clone --depth 1 --branch ${OADP_BRANCH} https://github.com/openshift/velero /tmp/velero (branch names are mirrored 1:1 between the two repos — confirmed via https://github.com/oadp-rebasebot/oadp-rebase/blob/oadp-dev/repos.yaml, the canonical source of truth for OADP ecosystem repo/branch mappings.) - Known flakes are tracked in /tmp/oadp-operator/tests/e2e/lib/flakes.go (flakePatterns / errorIgnorePatterns) — cross-reference failure signatures against known issue patterns before treating them as new bugs. -- OADP is a thin operator wrapping Velero: most real backup/restore root causes live in Velero's own controller code (/tmp/velero/pkg/controller/), not OADP's wrapper. Grep there for error strings you find in pod logs before concluding something is an OADP-specific bug." +- OADP is a thin operator wrapping Velero: most real backup/restore root causes live in Velero's own controller code (/tmp/velero/pkg/controller/), not OADP's wrapper. Grep there for error strings you find in pod logs before concluding something is an OADP-specific bug. +- If evidence instead points into a cloud-provider plugin or other OADP ecosystem component (e.g. an AWS-specific snapshot error suggesting velero-plugin-for-aws, a KubeVirt VM backup error suggesting kubevirt-velero-plugin, or a HyperShift-specific failure suggesting hypershift-oadp-plugin) rather than core Velero or oadp-operator itself, don't guess the repo/org/branch — fetch https://raw.githubusercontent.com/oadp-rebasebot/oadp-rebase/oadp-dev/repos.yaml (WebFetch or curl) and look up that component's entry: use its \`org\`/\`repo\` for the clone URL, and clone the branch named in its \`dev_branch\` field if present, otherwise ${OADP_BRANCH} (a few repos, e.g. kubevirt-velero-plugin and hypershift-oadp-plugin, only develop on \`main\` and don't mirror OADP's oadp-1.x/oadp-dev branch scheme at all — that's exactly what \`dev_branch\` overrides for). If the branch you pick 404s, retry with \`main\` as a last resort." echo "" echo "Running Claude with /ci:prow-job-analysis skill..."