Skip to content

Addressing a couple issues impacting 4.23 nightly releases - #794

Merged
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
bradmwilliams:latest-fixes
Jul 10, 2026
Merged

Addressing a couple issues impacting 4.23 nightly releases#794
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
bradmwilliams:latest-fixes

Conversation

@bradmwilliams

@bradmwilliamsbradmwilliams commented Jul 10, 2026

Copy link
Copy Markdown
Collaborator

Fix premature acceptance of releases that have only informing jobs and no blocking jobs.

The PayloadAcceptedController checked for pending informing jobs using job.AggregateState == JobStatePending, but newly initialized jobs have an unset (null/empty) aggregate state — not "Pending". The check missed these jobs entirely, causing the controller to accept the release immediately before any verification jobs ran.

This affected release configs with only informing jobs (no blocking jobs), such as 4.23.0-0.nightly, where releases were accepted with zero job results.

Changes

  • Changed the informing-only acceptance check from matching == JobStatePending to rejecting anything that isn't a terminal state (!= JobStateSuccess && != JobStateFailure). This correctly treats unset, Unknown, and Pending states as "not done yet."
  • Added test case InformingJobsWithUnsetStateNoBlockingJobs to cover the null aggregate state scenario.

rh-pre-commit.version: 2.4.0
rh-pre-commit.check-secrets: ENABLED

Summary by CodeRabbit

  • Bug Fixes
    • Improved release audit tracking by using the correct computed phase for release tags.
    • Updated release payload acceptance to wait for all jobs that have not reached a terminal success or failure state.
    • Ensured payload acceptance remains unknown when informing jobs have no reported status.

rh-pre-commit.version: 2.4.0
rh-pre-commit.check-secrets: ENABLED
@openshift-ciopenshift-ciBot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 10, 2026
@coderabbitai

coderabbitaiBot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 02df4dd5-4f11-4a4d-92ee-17b8046e106d

📥 Commits

Reviewing files that changed from the base of the PR and between f42bc2b and 68bdb16.

📒 Files selected for processing (3)
  • cmd/release-controller/audit.go
  • pkg/cmd/release-payload-controller/payload_accepted_controller.go
  • pkg/cmd/release-payload-controller/payload_accepted_controller_test.go

📝 Walkthrough

Walkthrough

Audit tag filtering now uses computed release phases and constants. Payload acceptance now waits for all informing and upgrade jobs to reach success or failure, with a test covering unset job states.

Changes

Audit phase filtering

Layer / File(s)Summary
Use computed tag phases
cmd/release-controller/audit.go
AuditTracker.Sync derives tag phases with GetTagPhase and gates audit processing using release phase constants.

Payload acceptance gating

Layer / File(s)Summary
Require terminal job states
pkg/cmd/release-payload-controller/payload_accepted_controller.go, pkg/cmd/release-payload-controller/payload_accepted_controller_test.go
Acceptance remains ConditionUnknown until informing and upgrade jobs are successful or failed; a test covers jobs with unset aggregate state.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

Suggested reviewers:AlexNPavel, hoxhaeris

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check nameStatusExplanationResolution
Docstring Coverage⚠️ WarningDocstring coverage is 0.00% which is insufficient. The required threshold is 80.00%.Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check nameStatusExplanation
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Title check✅ PassedThe title is related to the PR’s release-fix scope, though it is broader than the specific acceptance-state changes.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands.

@openshift-ci

Copy link
Copy Markdown
Contributor

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

@thiagoalessiothiagoalessio left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@openshift-ciopenshift-ciBot added the lgtm Indicates that a PR is ready to be merged. label Jul 10, 2026
@openshift-ci

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: bradmwilliams, thiagoalessio

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-merge-bot
openshift-merge-botBot merged commit 31afe97 into openshift:mainJul 10, 2026
10 checks passed
@bradmwilliams
bradmwilliams deleted the latest-fixes branch July 10, 2026 13:35
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approvedIndicates a PR has been approved by an approver from all required OWNERS files.lgtmIndicates that a PR is ready to be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@bradmwilliams@thiagoalessio