feat(acm): update fast-forward workflow with exclusions and v5.0-5.1#78109
feat(acm): update fast-forward workflow with exclusions and v5.0-5.1#78109dislbenn wants to merge 86 commits intoopenshift:mainfrom
Conversation
Also adds a script to manage it more easily. Signed-off-by: Dale Haiducek <19750917+dhaiducek@users.noreply.github.com>
Signed-off-by: Dale Haiducek <19750917+dhaiducek@users.noreply.github.com>
Updates based on PR feedback: - Add exclusion list for 12 Observability repos with release-* default branches - Uncomment owner variable extraction - Add exclusion check logic to skip listed repos - Uncomment actual fast-forward execution - Add cleanup for temp directories after each iteration - Update DESTINATION_VERSIONS from "2.17 5.0" to "5.0 5.1" The script now calls ../fastforward/ocm-ci-fastforward-commands.sh for each repo/version combination and cleans up /tmp/ocm-* directories to prevent conflicts on subsequent runs. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: dislbenn <dbennett@redhat.com>
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
WalkthroughAdds CI/Prow configuration for stolostron/acm-config, a new ocm-ci-fastforward-multiple workflow and step (including a large Bash orchestration script) to fast‑forward branches and generate Tekton manifests across repositories, and bulk-updates approvers in many OCM step-registry metadata/OWNERS files. Changes
Sequence Diagram(s)sequenceDiagram
participant Prow as Prow periodic job
participant CI as ci-operator container (step)
participant Script as ocm-ci-fastforward-multiple script
participant GHAPI as GitHub REST API
participant Git as Git remotes
participant GHCLI as gh (GitHub CLI)
participant Repo as Component repos
Prow->>CI: trigger fast-forward workflow
CI->>Script: run ocm-ci-fastforward-multiple-commands.sh (env, inputs)
Script->>GHAPI: query repo default branch (GITHUB_TOKEN)
GHAPI-->>Script: default branch info
Script->>Git: clone repo (source/dest branches), create or fast-forward branches
Git-->>Script: push branch updates
Script->>Repo: write Tekton YAML variants to temp branch
Script->>GHCLI: attempt gh pr create (if available)
GHCLI-->>Script: PR created / error
Script-->>CI: log results, exit status
CI-->>Prow: report success/failure
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes 🚥 Pre-merge checks | ✅ 11 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (11 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
/pj-rehearse periodic-ci-stolostron-acm-config-main-fast-forward |
|
@dislbenn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
There was a problem hiding this comment.
Actionable comments posted: 4
🧹 Nitpick comments (3)
ci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-ref.yaml (1)
23-34: Required inputs default to empty strings with no enforcement at the ref level.
REPO_MAP_PATHandDESTINATION_VERSIONSboth havedefault: "". The commands script does validate them and exits 1, but consumers get no schema-level signal that these are required. Consider documenting them as required in thedocumentationblock (e.g., "Required.") so misconfigured workflows fail early and visibly.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@ci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-ref.yaml` around lines 23 - 34, The inputs REPO_MAP_PATH and DESTINATION_VERSIONS currently default to empty strings with no schema-level indication they are required; update the documentation blocks for the REPO_MAP_PATH and DESTINATION_VERSIONS input entries in the ocm-ci-fastforward-multiple-ref.yaml to clearly mark them as required (e.g., prepend or append "Required." and a brief note about expected format) so consumers see they must be provided at the ref level; ensure you modify the documentation field for the REPO_MAP_PATH and DESTINATION_VERSIONS entries (referencing those exact names) rather than changing their defaults or runtime validation.ci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-commands.sh (1)
85-89: Capturingexit_code=$?inside the||group works but overwrites prior failures.Each iteration's failure overwrites the previous failing exit code, so the final
exit ${exit_code}only reflects the last failure. That's usually fine (non-zero is non-zero), but if you want clearer signal consider OR-ing instead:- exit_code=$? + exit_code=$(( exit_code | $? ))Not blocking.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@ci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-commands.sh` around lines 85 - 89, The loop captures each iteration's exit_code which overwrites previous failures, so change to accumulate failures instead: initialize a cumulative variable (e.g., overall_exit=0) before the loop and inside the failure group update it with a logical OR of the new exit status (e.g., overall_exit=$((overall_exit || $?))) instead of assigning exit_code=$?; continue using the existing logging (owner_repo, branch, log_file) and at the end call exit ${overall_exit} so any prior failure is reflected in the final exit code.ci-operator/step-registry/ocm/README.md (1)
12-12: Consider usingyq's--argflag for safer variable substitution.The current pattern concatenates shell variable expansion into the yq expression string, which works but is fragile. Using
yq's--argflag would avoid potential quoting/escaping issues.♻️ Alternative approach using --arg
- -exec yq -i -o json '.owners.approvers = '"${owners}" {} \; + -exec yq -i -o json --argjson owners "${owners}" '.owners.approvers = $owners' {} \;🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@ci-operator/step-registry/ocm/README.md` at line 12, The yq invocation currently builds the expression by concatenating the shell variable into the string (the '.owners.approvers = '"${owners}" {} \;' pattern); replace this with yq's safer --arg or --argjson flags instead: pass the shell variable as --arg owners "$owners" (or --argjson owners "$owners" if owners contains JSON) and use the expression '.owners.approvers = $owners' so the command uses yq --arg/--argjson and the expression '.owners.approvers = $owners' rather than inlining "${owners}".
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In
`@ci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-commands.sh`:
- Around line 91-92: The cleanup uses a broad rm -rf /tmp/ocm-* which can remove
other runs' temp dirs; instead, change the fastforward invocation to capture the
exact temp dir(s) returned by mktemp -d -t ocm-XXXXX (store them in a variable
like CREATED_TMPDIR or an array) and update the remover to rm -rf
"$CREATED_TMPDIR" (or iterate the array), or scope the glob to "$TMPDIR/ocm-*"
if TMPDIR is guaranteed; ensure the mktemp call and the cleanup reference the
same variable(s) and add a trap to remove only those recorded directories.
- Line 83: The invocation uses a fragile relative path
("../fastforward/ocm-ci-fastforward-commands.sh") that depends on CWD; change it
to resolve the helper script relative to the current script's location by using
BASH_SOURCE[0] and dirname to compute the script directory and then execute the
target script from that resolved path (still redirecting stdout/stderr to
"${log_file}"), referencing the helper script name
ocm-ci-fastforward-commands.sh to locate the call site.
In
`@ci-operator/step-registry/ocm/ci/image-mirror/ocm-ci-image-mirror-ref.metadata.json`:
- Around line 4-9: The approver roster in ocm-ci-image-mirror-ref.metadata.json
was updated but sibling metadata files under ci-operator/step-registry/ocm/
(notably ci/manifest-update/*.metadata.json) were not synced; re-run the
documented sync command from ci-operator/step-registry/ocm/README.md to apply
the ocm/OWNERS roster across all *.metadata.json under
ci-operator/step-registry/ocm/, ensuring files like
manifest-update/*.metadata.json no longer list the removed approvers (gurnben,
Kyl-Bempah, schmidtd, tpouyer) and match the updated approver list in
ocm/OWNERS.
In `@ci-operator/step-registry/ocm/README.md`:
- Line 11: The find command is using basename on owners_file which yields just
the file name (e.g., "OWNERS") so the search runs in the wrong path; change the
expression to use dirname("${owners_file}") so the find invocation searches the
parent directory (the step-registry path) for "*.metadata.json" files — update
the invocation that currently wraps basename("${owners_file}") to use
dirname("${owners_file}") where the find command is constructed.
---
Nitpick comments:
In
`@ci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-commands.sh`:
- Around line 85-89: The loop captures each iteration's exit_code which
overwrites previous failures, so change to accumulate failures instead:
initialize a cumulative variable (e.g., overall_exit=0) before the loop and
inside the failure group update it with a logical OR of the new exit status
(e.g., overall_exit=$((overall_exit || $?))) instead of assigning exit_code=$?;
continue using the existing logging (owner_repo, branch, log_file) and at the
end call exit ${overall_exit} so any prior failure is reflected in the final
exit code.
In
`@ci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-ref.yaml`:
- Around line 23-34: The inputs REPO_MAP_PATH and DESTINATION_VERSIONS currently
default to empty strings with no schema-level indication they are required;
update the documentation blocks for the REPO_MAP_PATH and DESTINATION_VERSIONS
input entries in the ocm-ci-fastforward-multiple-ref.yaml to clearly mark them
as required (e.g., prepend or append "Required." and a brief note about expected
format) so consumers see they must be provided at the ref level; ensure you
modify the documentation field for the REPO_MAP_PATH and DESTINATION_VERSIONS
entries (referencing those exact names) rather than changing their defaults or
runtime validation.
In `@ci-operator/step-registry/ocm/README.md`:
- Line 12: The yq invocation currently builds the expression by concatenating
the shell variable into the string (the '.owners.approvers = '"${owners}" {} \;'
pattern); replace this with yq's safer --arg or --argjson flags instead: pass
the shell variable as --arg owners "$owners" (or --argjson owners "$owners" if
owners contains JSON) and use the expression '.owners.approvers = $owners' so
the command uses yq --arg/--argjson and the expression '.owners.approvers =
$owners' rather than inlining "${owners}".
🪄 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: openshift/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 47f0edb0-a102-43c5-9a8a-aa3a80f2fa36
📒 Files selected for processing (30)
ci-operator/config/stolostron/acm-config/.config.prowgenci-operator/config/stolostron/acm-config/OWNERSci-operator/config/stolostron/acm-config/stolostron-acm-config-main.yamlci-operator/jobs/stolostron/acm-config/stolostron-acm-config-main-periodics.yamlci-operator/step-registry/ocm/OWNERSci-operator/step-registry/ocm/README.mdci-operator/step-registry/ocm/ci/fastforward-multiple/OWNERSci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-commands.shci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-ref.metadata.jsonci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-ref.yamlci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-workflow.metadata.jsonci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-workflow.yamlci-operator/step-registry/ocm/ci/fastforward/ocm-ci-fastforward-ref.metadata.jsonci-operator/step-registry/ocm/ci/fastforward/ocm-ci-fastforward-workflow.metadata.jsonci-operator/step-registry/ocm/ci/image-mirror-periodic/ocm-ci-image-mirror-periodic-ref.metadata.jsonci-operator/step-registry/ocm/ci/image-mirror-periodic/ocm-ci-image-mirror-periodic-workflow.metadata.jsonci-operator/step-registry/ocm/ci/image-mirror/ocm-ci-image-mirror-ref.metadata.jsonci-operator/step-registry/ocm/ci/image-mirror/ocm-ci-image-mirror-workflow.metadata.jsonci-operator/step-registry/ocm/ci/rbac/ocm-ci-rbac-ref.metadata.jsonci-operator/step-registry/ocm/ci/rbac/ocm-ci-rbac-workflow.metadata.jsonci-operator/step-registry/ocm/e2e/clusterpool/checkin/ocm-e2e-clusterpool-checkin-ref.metadata.jsonci-operator/step-registry/ocm/e2e/clusterpool/checkout/ocm-e2e-clusterpool-checkout-chain.metadata.jsonci-operator/step-registry/ocm/e2e/clusterpool/checkout/ocm-e2e-clusterpool-checkout-ref.metadata.jsonci-operator/step-registry/ocm/e2e/clusterpool/cluster/deploy/ocm-e2e-clusterpool-cluster-deploy-ref.metadata.jsonci-operator/step-registry/ocm/e2e/clusterpool/cluster/getcreds/ocm-e2e-clusterpool-cluster-getcreds-ref.metadata.jsonci-operator/step-registry/ocm/e2e/clusterpool/list/ocm-e2e-clusterpool-list-ref.metadata.jsonci-operator/step-registry/ocm/e2e/clusterpool/ocm-e2e-clusterpool-workflow.metadata.jsonci-operator/step-registry/ocm/e2e/kind/create/ocm-e2e-kind-create-ref.metadata.jsonci-operator/step-registry/ocm/e2e/kind/destroy/ocm-e2e-kind-destroy-ref.metadata.jsonci-operator/step-registry/ocm/e2e/kind/ocm-e2e-kind-workflow.metadata.json
- Use SCRIPT_DIR with BASH_SOURCE for robust relative path resolution - Accumulate exit codes with bitwise OR instead of overwriting - Clean up temp dirs safely using find with mtime filter - Document REPO_MAP_PATH and DESTINATION_VERSIONS as required - Fix README find command to use dirname instead of basename - Sync OWNERS approvers across all metadata files including manifest-update Addresses CodeRabbit actionable comments on PR openshift#78109 Signed-off-by: dislbenn <dbennett@redhat.com> Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: dislbenn <dbennett@redhat.com>
|
/pj-rehearse periodic-ci-stolostron-acm-config-main-fast-forward |
|
@dislbenn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
Signed-off-by: dislbenn <dbennett@redhat.com> Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: dislbenn <dbennett@redhat.com>
|
/pj-rehearse periodic-ci-stolostron-acm-config-main-fast-forward |
|
@dislbenn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
Signed-off-by: dislbenn <dbennett@redhat.com>
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In
`@ci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-commands.sh`:
- Around line 86-93: The error branch uses `local err=$?` inside a brace group
which is invalid outside a function and will crash; instead capture the child
process exit status immediately into a non-local variable (e.g., err) as the
first statement in the error block, remove the `local` keyword, then use
exit_code=$((exit_code | err)) to accumulate; update the block surrounding the
invocation of "${SCRIPT_DIR}/../fastforward/ocm-ci-fastforward-commands.sh" and
references to exit_code and err accordingly so $? is read before any echo/sed.
- Around line 95-97: The find cleanup uses "-mmin +1" which skips
freshly-created temp dirs (e.g., those made with mktemp -d -t ocm-XXXXX) so they
pile up; remove the age filter and delete all matching /tmp/ocm-* dirs
immediately (or alternatively change the workflow to record the exact temp dir
via TMPDIR and remove that specific directory) by updating the cleanup command
that references find ... -name 'ocm-*' -type d -mmin +1 -exec rm -rf {} + to
either drop "-mmin +1" or replace it with direct removal of the TMPDIR target.
- Around line 46-50: The yq selector is using literal equality for .repository
which treats the '*' as a character and returns nothing; change the filter in
the command that sets component_repos to use a regex test on .repository (e.g.,
replace the equality check `.repository == "https://github.com/stolostron/*"`
with a regex test using yq/jq's test function such as `(.repository |
test("https://github.com/stolostron/"))`) so that the full URLs like
`https://github.com/stolostron/multiclusterhub-operator` match; update the
select expression that builds component_repos (the for product loop and the
variable component_repos referencing REPO_MAP_PATH) accordingly.
🪄 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: openshift/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 91f93cb2-cd25-4fc6-9119-ca1820a4cbce
📒 Files selected for processing (4)
ci-operator/jobs/stolostron/acm-config/OWNERSci-operator/step-registry/ocm/README.mdci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-commands.shci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-ref.yaml
✅ Files skipped from review due to trivial changes (3)
- ci-operator/step-registry/ocm/README.md
- ci-operator/jobs/stolostron/acm-config/OWNERS
- ci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-ref.yaml
Signed-off-by: dislbenn <dbennett@redhat.com>
|
/pj-rehearse periodic-ci-stolostron-acm-config-main-fast-forward |
|
@dislbenn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
Add debug output to fastforward-multiple script to diagnose path resolution issue in CI pods. Will show: - SCRIPT_DIR and BASH_SOURCE[0] values - PWD and directory listings - Location of sibling fastforward script This will help identify correct path for invoking the sibling ocm-ci-fastforward-commands.sh script. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
|
/pj-rehearse periodic-ci-stolostron-acm-config-main-fast-forward |
|
@dislbenn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
ci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-commands.sh (1)
62-65: Loop variablerepois rebound inside the loop body — works, but subtle.At line 62
repoiterates over full URLs fromcomponent_repos, then line 65 overwrites it with just the repo name (repo=${owner_repo#*/}). Because Bash'sforcaptures the expanded word list up front, this doesn't break iteration, but anyone reading the loop has to verify that to be sure. Consider renaming to avoid the cognitive overhead:♻️ Optional rename
- for repo in ${component_repos}; do - owner_repo=${repo#https://github.com/} + for repo_url in ${component_repos}; do + owner_repo=${repo_url#https://github.com/} owner=${owner_repo%/*} repo=${owner_repo#*/}🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@ci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-commands.sh` around lines 62 - 65, The loop rebinds the loop variable `repo` inside the body (for repo in ${component_repos}; ... repo=${owner_repo#*/}) which is subtle; change the inner variable to a different name (e.g., use `repo_url` for the loop variable or `repo_name` for the extracted name) so you do not overwrite the loop iterator; update occurrences of `owner_repo`, `owner`, and the extracted repo variable (`repo=${owner_repo#*/}`) to use the new names consistently (for example: for repo_url in ${component_repos}; owner_repo=${repo_url#https://github.com/}; owner=${owner_repo%/*}; repo_name=${owner_repo#*/}) to preserve behavior without rebinding the iterator.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In
`@ci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-commands.sh`:
- Around line 8-17: Remove or gate the diagnostic block that prints SCRIPT_DIR,
BASH_SOURCE, PWD, and runs find; specifically either delete the echo/ls/find
sequence that references SCRIPT_DIR and BASH_SOURCE or wrap that entire block in
an opt-in check such as testing an env var (e.g., [[ "${DEBUG:-}" == "true" ]])
so it only runs when explicitly enabled; ensure the gating preserves existing
behavior when DEBUG is unset (no output and no filesystem traversal) and that
references to SCRIPT_DIR and the find call are no longer executed by default.
---
Nitpick comments:
In
`@ci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-commands.sh`:
- Around line 62-65: The loop rebinds the loop variable `repo` inside the body
(for repo in ${component_repos}; ... repo=${owner_repo#*/}) which is subtle;
change the inner variable to a different name (e.g., use `repo_url` for the loop
variable or `repo_name` for the extracted name) so you do not overwrite the loop
iterator; update occurrences of `owner_repo`, `owner`, and the extracted repo
variable (`repo=${owner_repo#*/}`) to use the new names consistently (for
example: for repo_url in ${component_repos};
owner_repo=${repo_url#https://github.com/}; owner=${owner_repo%/*};
repo_name=${owner_repo#*/}) to preserve behavior without rebinding the iterator.
🪄 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: openshift/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: f6ee97b4-eaf6-4ae7-b3ea-7e9d471930a3
📒 Files selected for processing (1)
ci-operator/step-registry/ocm/ci/fastforward-multiple/ocm-ci-fastforward-multiple-commands.sh
Inlined git fastforward logic from ocm-ci-fastforward-commands.sh into ocm-ci-fastforward-multiple-commands.sh as a bash function. Root cause: Step-registry scripts are only available within their own container contexts. The fastforward-multiple step runs in the source container (from: src) to access product/component-registry.yaml, while the fastforward step runs in the builder image (from_image). Cross-container script invocation is not supported. Changes: - Added fastforward_repo() function with all git clone/pull/push logic - Removed external script call to ../fastforward/ocm-ci-fastforward-commands.sh - Cleaned up debug code added for troubleshooting - Preserved all original fastforward behavior (branch creation, ff-only pull) - Fixed all CodeRabbit issues (local keyword, regex test, cleanup timing) Script now self-contained and works correctly in rehearsal and production. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
|
/pj-rehearse periodic-ci-stolostron-acm-config-main-fast-forward |
|
@dislbenn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
/retest |
Fix shellcheck SC2155 warnings by separating declaration and assignment for ocm_dir and token variables. This prevents masking return values from mktemp and cat commands. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
|
/pj-rehearse ack |
- Add LAST_RELEASE_VERSION parameter to transform_tekton_files - Implement fallback to fetch .tekton files from previous release when missing - Remove silent error suppression in branch cleanup (show warnings instead) - Pass LAST_RELEASE_VERSION to all transform_tekton_files calls Fixes transform failures when fast-forwarded branches lack tekton files. Fixes silent failures in ff-* branch cleanup by logging API errors. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Signed-off-by: dislbenn <dbennett@redhat.com>
|
/pj-rehearse periodic-ci-stolostron-acm-config-main-fast-forward |
|
@dislbenn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
Signed-off-by: dislbenn <dbennett@redhat.com>
|
New changes are detected. LGTM label has been removed. |
|
/unhold |
|
/pj-rehearse periodic-ci-stolostron-acm-config-main-fast-forward |
|
@dislbenn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: dislbenn, gparvin, smithbw88 The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/retest |
Export GH_TOKEN before stale branch cleanup loop. Previously gh CLI ran unauthenticated during cleanup, hitting rate limits and causing exit code 4 failures. Token was only exported within create_tekton_files subshell scope. Cleanup section at line 1386 needs auth for gh API calls across 120+ repos. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
|
/pj-rehearse periodic-ci-stolostron-acm-config-main-fast-forward |
|
@dislbenn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
[REHEARSALNOTIFIER]
Interacting with pj-rehearseComment: Once you are satisfied with the results of the rehearsals, comment: |
|
/pj-rehearse ack |
|
@dislbenn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
/pj-rehearse periodic-ci-stolostron-acm-config-main-fast-forward |
|
@dislbenn: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
@dislbenn: The following test failed, say
Full PR test history. Your PR dashboard. DetailsInstructions 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. |
Updates ACM fast-forward workflow based on PR #77987 feedback.
Changes
Exclusion list - Added 12 Observability repos with
release-*default branches that should be skipped:Owner variable - Uncommented
ownerextraction for use in fast-forward scriptExclusion check - Added logic to skip repos in exclusion list
Execution active - Uncommented actual fast-forward calls to
../fastforward/ocm-ci-fastforward-commands.shCleanup - Added
/tmp/ocm-*cleanup after each iteration to prevent conflictsVersion update - Changed
DESTINATION_VERSIONSfrom2.17 5.0to5.0 5.1Testing
Tested locally against must-gather and Observability components (per original PR description).
Notes
../fastforward/pattern validated against existing step-registry examples (acm-tests-alc)gcs-credentialsvolumeMount without volume definition is standard pattern (auto-injected by infrastructure)cc: Original PR author for review
Summary by CodeRabbit
New Features
Chores
Documentation