[GEP-33] Add Capability support - #206
Conversation
|
Skipping CI for Draft Pull Request. |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
57d62ad to
3646083
Compare
|
/hold risk of regression. needs heavy-testing |
timebertt
left a comment
There was a problem hiding this comment.
In general, this PR is very hard to review.
We had a look together with @breuerfelix @viragvoros @nschad, but haven't made it through all of it. We had a look at the API types, helpers and some parts of the validation.
| return allErrs | ||
| } | ||
|
|
||
| func validateMachineImageCapabilities(machineImage core.MachineImage, version gardencorev1beta1.MachineImageVersion, providerImageVersion stackitv1alpha1.MachineImageVersion, capabilityDefinitions []gardencorev1beta1.CapabilityDefinition) field.ErrorList { |
There was a problem hiding this comment.
Why is the entire validation for NamespacedCloudProfiles implemented in this package, while validation for CloudProfiles is implemented in the dedicated validation package?
Can we consolidate this? (Could also be in a separate PR)
There was a problem hiding this comment.
will be done in a seperate PR
6065917 to
b46da81
Compare
Signed-off-by: Niclas Schad <niclas.schad@stackit.cloud>
34917b9 to
fcca803
Compare
Signed-off-by: Niclas Schad <niclas.schad@stackit.cloud>
…ype as default" and move to seperate PR Signed-off-by: Niclas Schad <niclas.schad@stackit.cloud>
Signed-off-by: Niclas Schad <niclas.schad@stackit.cloud>
How to categorize this PR?
/kind api-change
/kind enhancement
What this PR does / why we need it:
This PR is part of GEP-33 Machine Image Capabilities
It adopts the introduced Cloud Profile Capabilities from Gardener. It offers a mechanism to define a relationships between MachineTypes and MachineImages to ensure only compatible amis are selected for a given MachineType. An example for a Capability is the CPU architecture that is added as the first mandatory Capability. The existing architecture field is planned to be removed eventually.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Breaking changes: