Skip to content

Conversation

@JoelSpeed
Copy link
Contributor

@JoelSpeed JoelSpeed commented Jan 23, 2026

User description

A recent change to refactor the makefiles moved things into codegen, and non-codegen. Unfortunately this also accidentally re-ordered some things so that their dependencies were not in the right order.

This updates the scripts to move the payload updates, since those depend on codegen to have run, into the codegen target


PR Type

Bug fix


Description

  • Move payload CRD and FeatureGate generation into codegen target

  • Ensure payload updates run after codegen generators complete

  • Fix dependency ordering in Makefile targets


Diagram Walkthrough

flowchart LR
  codegen["update-codegen target"]
  payload["Payload CRD/FeatureGate generation"]
  noncodegen["update-non-codegen target"]
  codegen -- "now includes" --> payload
  noncodegen -- "no longer includes" --> payload
Loading

File Walkthrough

Relevant files
Bug fix
Makefile
Reorder payload generation into codegen target                     

Makefile

  • Moved update-payload-crds and update-payload-featuregates from
    update-non-codegen target to update-codegen target
  • Added explanatory comment clarifying that payload generation must run
    after codegen generators
  • Ensures proper dependency ordering where payload updates depend on
    codegen completion
+3/-1     

@openshift-ci-robot
Copy link

Pipeline controller notification
This repo is configured to use the pipeline controller. Second-stage tests will be triggered either automatically or after lgtm label is added, depending on the repository configuration. The pipeline controller will automatically detect which contexts are required and will utilize /test Prow commands to trigger the second stage.

For optional jobs, comment /test ? to see a list of all defined jobs. To trigger manually all jobs from second stage use /pipeline required command.

This repository is configured in: LGTM mode

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jan 23, 2026

Hello @JoelSpeed! Some important instructions when contributing to openshift/api:
API design plays an important part in the user experience of OpenShift and as such API PRs are subject to a high level of scrutiny to ensure they follow our best practices. If you haven't already done so, please review the OpenShift API Conventions and ensure that your proposed changes are compliant. Following these conventions will help expedite the api review process for your PR.

@qodo-code-review
Copy link

PR Compliance Guide 🔍

Below is a summary of compliance checks for this PR:

Security Compliance
🟢
No security concerns identified No security vulnerabilities detected by AI analysis. Human verification advised for critical code.
Ticket Compliance
🎫 No ticket provided
  • Create ticket/issue
Codebase Duplication Compliance
Codebase context is not defined

Follow the guide to enable codebase context checks.

Custom Compliance
🟢
Generic: Comprehensive Audit Trails

Objective: To create a detailed and reliable record of critical system actions for security analysis
and compliance.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Meaningful Naming and Self-Documenting Code

Objective: Ensure all identifiers clearly express their purpose and intent, making code
self-documenting

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Robust Error Handling and Edge Case Management

Objective: Ensure comprehensive error handling that provides meaningful context and graceful
degradation

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Secure Error Handling

Objective: To prevent the leakage of sensitive system information through error messages while
providing sufficient detail for internal debugging.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Secure Logging Practices

Objective: To ensure logs are useful for debugging and auditing without exposing sensitive
information like PII, PHI, or cardholder data.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Security-First Input Validation and Data Handling

Objective: Ensure all data inputs are validated, sanitized, and handled securely to prevent
vulnerabilities

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Compliance status legend 🟢 - Fully Compliant
🟡 - Partial Compliant
🔴 - Not Compliant
⚪ - Requires Further Human Verification
🏷️ - Compliance label

@coderabbitai
Copy link

coderabbitai bot commented Jan 23, 2026

📝 Walkthrough

Walkthrough

This change reorganizes Makefile target dependencies for code generation. The update-codegen target now includes update-payload-crds and update-payload-featuregates to run after hack/update-codegen.sh. The update-non-codegen target is modified to remove these payload-related prerequisites, shifting them into the codegen dependency chain. A clarifying comment documents that payload generation should occur after other generators.

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically describes the main change: fixing the ordering of payload CRD and FeatureGate generation in the Makefile.
Description check ✅ Passed The description is directly related to the changeset, providing clear context about the bug (ordering issue after refactor) and the fix (moving payload updates into codegen target).
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


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

@openshift-ci openshift-ci bot added the size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. label Jan 23, 2026
@qodo-code-review
Copy link

PR Code Suggestions ✨

Explore these optional code suggestions:

CategorySuggestion                                                                                                                                    Impact
General
Use $(MAKE) for recursive make

Replace the hardcoded make command with the $(MAKE) variable for recursive calls
to ensure build flags and parallelism settings are inherited.

Makefile [121]

-make update-payload-crds update-payload-featuregates
+$(MAKE) update-payload-crds update-payload-featuregates
  • Apply / Chat
Suggestion importance[1-10]: 6

__

Why: The suggestion correctly identifies a best practice for Makefiles by replacing the literal make with $(MAKE) to ensure flags and settings are passed to recursive calls, improving build consistency.

Low
  • More

Copy link

@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

🤖 Fix all issues with AI agents
In `@Makefile`:
- Line 127: The Makefile line defining the update-non-codegen target contains a
trailing whitespace character at the end of the line; remove the trailing space
after "update-prerelease-lifecycle-gen" on the update-non-codegen line so the
target line reads without any trailing whitespace (look for the target name
"update-non-codegen" in the Makefile).

# E.g. the payload feature gates which is not part of the generator style, but is still a subcommand.
.PHONY: update-non-codegen
update-non-codegen: update-protobuf tests-vendor update-prerelease-lifecycle-gen update-payload-crds update-payload-featuregates
update-non-codegen: update-protobuf tests-vendor update-prerelease-lifecycle-gen
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Minor: trailing whitespace.

There's a trailing space at the end of line 127.

Proposed fix
-.PHONY: update-non-codegen
-update-non-codegen: update-protobuf tests-vendor update-prerelease-lifecycle-gen 
+.PHONY: update-non-codegen
+update-non-codegen: update-protobuf tests-vendor update-prerelease-lifecycle-gen
🤖 Prompt for AI Agents
In `@Makefile` at line 127, The Makefile line defining the update-non-codegen
target contains a trailing whitespace character at the end of the line; remove
the trailing space after "update-prerelease-lifecycle-gen" on the
update-non-codegen line so the target line reads without any trailing whitespace
(look for the target name "update-non-codegen" in the Makefile).

Copy link
Contributor

@everettraven everettraven left a comment

Choose a reason for hiding this comment

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

/lgtm

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Jan 23, 2026
@openshift-ci-robot
Copy link

Scheduling tests matching the pipeline_run_if_changed or not excluded by pipeline_skip_if_only_changed parameters:
/test e2e-aws-ovn
/test e2e-aws-ovn-hypershift
/test e2e-aws-ovn-hypershift-conformance
/test e2e-aws-ovn-techpreview
/test e2e-aws-serial-1of2
/test e2e-aws-serial-2of2
/test e2e-aws-serial-techpreview-1of2
/test e2e-aws-serial-techpreview-2of2
/test e2e-azure
/test e2e-gcp
/test e2e-upgrade
/test e2e-upgrade-out-of-change

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jan 23, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: everettraven

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 Jan 23, 2026
@JoelSpeed
Copy link
Contributor Author

/verified by @JoelSpeed

I verified this locally

@openshift-ci-robot openshift-ci-robot added the verified Signifies that the PR passed pre-merge verification criteria label Jan 23, 2026
@openshift-ci-robot
Copy link

@JoelSpeed: This PR has been marked as verified by @JoelSpeed.

Details

In response to this:

/verified by @JoelSpeed

I verified this locally

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 openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci-robot
Copy link

/retest-required

Remaining retests: 0 against base HEAD 80c3fbc and 2 for PR HEAD 7e2657b in total

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jan 23, 2026

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

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. lgtm Indicates that a PR is ready to be merged. Review effort 1/5 size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. verified Signifies that the PR passed pre-merge verification criteria

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants