Skip to content

[release-4.18] change OCL CRD deployment to v1 #2316

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: release-4.18
Choose a base branch
from

Conversation

umohnani8
Copy link
Contributor

Backport the commit to bump the OCL API from v1alpha1 to v1 in 4.18.z in line with the plans to GA this feature in 4.18.z

Copy link
Contributor

openshift-ci bot commented May 8, 2025

Hello @umohnani8! 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.

@openshift-ci openshift-ci bot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label May 8, 2025
@openshift-ci openshift-ci bot requested review from derekwaynecarr and sjenning May 8, 2025 15:10
Copy link
Contributor

openshift-ci bot commented May 8, 2025

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: umohnani8
Once this PR has been reviewed and has the lgtm label, please assign bparees for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

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

@umohnani8
Copy link
Contributor Author

/retest

@umohnani8 umohnani8 force-pushed the 4.18 branch 3 times, most recently from 576421b to a2bb6bb Compare May 14, 2025 16:20
@umohnani8
Copy link
Contributor Author

/retest

1 similar comment
@umohnani8
Copy link
Contributor Author

/retest

@umohnani8
Copy link
Contributor Author

/testwith openshift/api/release-4.18/e2e-aws-ovn-techpreview openshift/machine-config-operator#5025
/testwith openshift/api/release-4.18/e2e-aws-serial-techpreview openshift/machine-config-operator#5025

@umohnani8
Copy link
Contributor Author

/testwith openshift/api/release-4.18/e2e-aws-ovn-techpreview openshift/machine-config-operator#5025

Copy link
Contributor

@JoelSpeed JoelSpeed left a comment

Choose a reason for hiding this comment

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

We can still use XValidations for the regexes, so please switch those back and use a CEL regex, then we can keep consistent error messages between 4.18 and 4.19

Please also double check my comment about the regexes for resource and namespace, I think if you check 4.19 you'll see that they were not dns1123Subdomain but dns1035Label and dns1123Label respectively

@djoshy
Copy link
Contributor

djoshy commented May 15, 2025

/testwith openshift/api/release-4.18/e2e-aws-ovn-techpreview openshift/machine-config-operator#5025
/testwith openshift/api/release-4.18/e2e-aws-serial-techpreview openshift/machine-config-operator#5025

@umohnani8
Copy link
Contributor Author

umohnani8 commented May 15, 2025

Thanks @JoelSpeed for the review! I have updated it to use XValidations for the regex with self.matches()

@umohnani8 umohnani8 force-pushed the 4.18 branch 2 times, most recently from ddcf49c to 83742fb Compare May 16, 2025 00:21
@umohnani8
Copy link
Contributor Author

/testwith openshift/api/release-4.18/e2e-aws-ovn-techpreview openshift/machine-config-operator#5025

Squashed commit messages:
- MachineOSConfig: set ImageSecretObjectReference to optional
- Add v1 versions of OnClusterBuild APIs
- First step to GA'ing the currently v1alpha1 APIs. Don't add to payload
manifests yet, and the featuregate is retained.
- Temporarily exclude v1 MOSC/MOSB from payload
- Update godoc and validation for MOSC/MOSB

Mostly fixups, with some minor changes to the v1alpha1 API:

 - Removed Version and ConfigGeneration from MOSB as they were unused
 - Updated relatedobjects list
 - Changed all optional,omitempty structs to pointers
 - Removed default for ImageBuilderType, but keeping default build arch
   to noarch as we don’t foresee changing that.
 - Fixed RenderedImagePushspec validators to match description

Additional fixes for MOSC/MOSB

 - Update from PodImageBuilder to JobImageBuilder, and add a
   MachineOSBuild reference to MachineOSConfig
 - Failed and Interrupted will now cause MOSBuild conditions to be
   immutable
 - Updated Arch enum to be PascalCase
 - Updated relatedObject go doc based on suggestion
 - Add validation for buildEnd > buildStart
 - Removed conditions field from MOSConfig. The build object is
   supposed to reflect conditions instead, so this is not needed
   at this time
 - Use dns1123 format check for all strings that match, and otherwise
   switch pattern checks to validation rules where appropriate
 - Updated godocs a bit more for formatting

Additional MOSC/MOSB updates

Mostly fixes around validation and godocs. Added some additional test
cases.

Further MOSC/MOSB updates

 - Removed BuildOutputs and the CurrentImagePullSecret field
   (not really needed at this time, we’d prefer if the user
   would put any additional pull secrets into the cluster-wide
   object)
 - Removed BuildInputs and lifted all fields to spec, removing:
    - ReleaseVersion
    - BaseOSImagePullSpec
    - BaseOSExtensionsImagePullSpec
   Which will be populated directly from the MCO instead. We will
   consider re-adding those if there is a need for on cluster
   pre-builds off new release images in the future.
 - Renamed finalImagePushSpec to digestedImagePushSpec
 - Switched MachineOSBuilderReference back to an union, and renamed
   the job object unionmember to just “job”
 - Changed “desiredConfig” to “MachineConfig” for clarity
 - Kept ObservedGeneration, but updated the validation, and will
   fix on the MCO side
 - Removed duplicate arch types, and updated containerfiles to allow at
   most 1 per arch (minus noarch)

Read removed NodeDisruptionPolicy tests

These were added for the alpha API originally, but they seem to have
been removed during a refactor of the tests. The current tests are a
duplicate of bootimage tests.

MachineOSBuild: relax CEL for conditions

The builder defaults these conditions to false to start, and the current
CEL prevents that changing.

Use CEL validations

Since the new format library is not avaiable in 4.18,
use similar validations to what we were doing for v1alpha1.

Signed-off-by: Urvashi <[email protected]>
@umohnani8
Copy link
Contributor Author

/retest

Copy link
Contributor

openshift-ci bot commented May 17, 2025

@umohnani8: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/e2e-aws-ovn-techpreview 23cea44 link true /test e2e-aws-ovn-techpreview
ci/prow/e2e-aws-serial-techpreview 23cea44 link true /test e2e-aws-serial-techpreview

Full PR test history. Your PR dashboard.

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.

@umohnani8
Copy link
Contributor Author

/testwith openshift/api/release-4.18/e2e-aws-ovn-techpreview openshift/machine-config-operator#5025
/testwith openshift/api/release-4.18/e2e-aws-serial-techpreview openshift/machine-config-operator#5025

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants