-
Notifications
You must be signed in to change notification settings - Fork 635
✨ Add ClusterClass support for EKS clusters #5375
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
✨ Add ClusterClass support for EKS clusters #5375
Conversation
6489bf0 to
fee134f
Compare
|
/test pull-cluster-api-provider-aws-e2e |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good @alexander-demicev .
Can you add an e2e test to cover creating a cluster with ClusterClass?
|
@richardcase yes, can I do it in a follow-up PR? I already have a draft locally |
930fb59 to
ce8e91a
Compare
A follow-up is good, i think we'd want the e2e coverage before we release this though.....this feature will be really popular 😄 |
775b63e to
12569ea
Compare
|
/test pull-cluster-api-provider-aws-e2e |
12569ea to
b2f4d39
Compare
|
/test pull-cluster-api-provider-aws-e2e |
|
/test ? |
|
@richardcase: The following commands are available to trigger required jobs: The following commands are available to trigger optional jobs: Use In response to this:
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. |
|
/test pull-cluster-api-provider-aws-e2e-eks |
|
/milestone v2.9 |
|
@richardcase: The provided milestone is not valid for this repository. Milestones in this repository: [ Use In response to this:
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. |
b2f4d39 to
dfc8736
Compare
|
/test pull-cluster-api-provider-aws-e2e-eks |
dfc8736 to
32e08aa
Compare
|
/test pull-cluster-api-provider-aws-e2e-eks |
|
/test pull-cluster-api-provider-aws-e2e |
|
/test pull-cluster-api-provider-aws-e2e-eks |
c91dfc9 to
1fe1bed
Compare
|
/test pull-cluster-api-provider-aws-e2e-eks |
|
/assign @AndiDog @dlipovetsky |
|
I would like to know how this change affects an existing EKS cluster that does not use ClusterClass. |
|
@dlipovetsky it shouldn't affect existing clusters |
1fe1bed to
c4b2805
Compare
|
Really looking forward to this change. Do you need any help (e.g. Go development assistance)? |
config/crd/bases/controlplane.cluster.x-k8s.io_awsmanagedcontrolplanes.yaml
Outdated
Show resolved
Hide resolved
controlplane/eks/api/v1beta2/awsmanagedcontrolplanetemplate_types.go
Outdated
Show resolved
Hide resolved
| // For the AWSManagedControlPlaneTemplate, this field is used | ||
| // only to fulfill the CAPI contract. | ||
| // +optional | ||
| MachineTemplate *AWSManagedControlPlaneTemplateMachineTemplate `json:"machineTemplate,omitempty"` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure why this is necessary? Can you link to the CAPI contract that nees to be fulfilled that requires this to be added?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's part of the control plane provider contract: https://cluster-api.sigs.k8s.io/developer/providers/contracts/control-plane#controlplane-machines.
CAPZ has the machine templates, I’m totally fine not having the machine template field here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's not required here because the control plane nodes are not represented by Machines, as the note says:
In case you are developing a control plane provider which uses a Cluster API Machine object to represent each control plane instance, following fields MUST be implemented in the ControlPlane spec.
Signed-off-by: Alexandr Demicev <[email protected]> Co-authored-by: Jimmi Dyson <[email protected]>
Signed-off-by: Alexandr Demicev <[email protected]> Co-authored-by: Richard Case <[email protected]>
c4b2805 to
6963dfa
Compare
|
@jimmidyson thanks a lot for the commit, I squashed it with mine |
|
/test pull-cluster-api-provider-aws-e2e-eks |
|
Thanks @alexander-demicev! /lgtm |
|
LGTM label has been added. Git tree hash: 7fd627c53a74f7d2babeaf03c65ddd882d3918ce
|
|
@AndiDog @dlipovetsky @richardcase Can we remove the hold on this now please? LGTM and have tested it out succesfully. There's an e2e test too which is a bonus 😅 |
|
/unhold |
What type of PR is this?
/kind feature
What this PR does / why we need it:
This PR adds ClusterClass support for EKS.
AWSManagedControlPlanebroke conversions and they have to be done manually.Which issue(s) this PR fixes (optional, in
fixes #<issue number>(, fixes #<issue_number>, ...)format, will close the issue(s) when PR gets merged):Fixes #3166
Special notes for your reviewer:
Checklist:
Release note: