Skip to content

✨ 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

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

alexander-demicev
Copy link
Contributor

@alexander-demicev alexander-demicev commented Mar 6, 2025

What type of PR is this?
/kind feature

What this PR does / why we need it:

This PR adds ClusterClass support for EKS.

  • It doesn't support managed machine pools for now, I will add them in a follow up
  • I'm unsure which fields in AWSManagedControlPlane can be reused in AWSManagedControlPlaneTemplate so please correct me if I'm wrong.
  • Moving some fields to a nested structure in AWSManagedControlPlane broke 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:

  • squashed commits
  • includes documentation
  • includes emoji in title
  • adds unit tests
  • adds or updates e2e tests

Release note:

Add ClusterClass support for EKS clusters

@k8s-ci-robot k8s-ci-robot added kind/feature Categorizes issue or PR as related to a new feature. release-note Denotes a PR that will be considered when it comes time to generate release notes. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Mar 6, 2025
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign justinsb 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

@k8s-ci-robot k8s-ci-robot added needs-priority size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Mar 6, 2025
@k8s-ci-robot k8s-ci-robot requested review from faiq and richardcase March 6, 2025 11:12
@alexander-demicev
Copy link
Contributor Author

/test pull-cluster-api-provider-aws-e2e

Copy link
Member

@richardcase richardcase left a 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?

@alexander-demicev
Copy link
Contributor Author

alexander-demicev commented Mar 12, 2025

@richardcase yes, can I do it in a follow-up PR? I already have a draft locally

@alexander-demicev alexander-demicev force-pushed the eksclusterclass branch 2 times, most recently from 930fb59 to ce8e91a Compare March 12, 2025 13:46
@richardcase
Copy link
Member

@richardcase yes, can I do it in a follow-up PR? I already have a draft locally

A follow-up is good, i think we'd want the e2e coverage before we release this though.....this feature will be really popular 😄

@alexander-demicev
Copy link
Contributor Author

/test pull-cluster-api-provider-aws-e2e

@alexander-demicev
Copy link
Contributor Author

/test pull-cluster-api-provider-aws-e2e

@richardcase
Copy link
Member

/test ?

@k8s-ci-robot
Copy link
Contributor

@richardcase: The following commands are available to trigger required jobs:

/test pull-cluster-api-provider-aws-build
/test pull-cluster-api-provider-aws-build-docker
/test pull-cluster-api-provider-aws-test
/test pull-cluster-api-provider-aws-verify

The following commands are available to trigger optional jobs:

/test pull-cluster-api-provider-aws-apidiff-main
/test pull-cluster-api-provider-aws-e2e
/test pull-cluster-api-provider-aws-e2e-blocking
/test pull-cluster-api-provider-aws-e2e-clusterclass
/test pull-cluster-api-provider-aws-e2e-conformance
/test pull-cluster-api-provider-aws-e2e-conformance-with-ci-artifacts
/test pull-cluster-api-provider-aws-e2e-eks
/test pull-cluster-api-provider-aws-e2e-eks-gc
/test pull-cluster-api-provider-aws-e2e-eks-testing

Use /test all to run the following jobs that were automatically triggered:

pull-cluster-api-provider-aws-apidiff-main
pull-cluster-api-provider-aws-build
pull-cluster-api-provider-aws-build-docker
pull-cluster-api-provider-aws-test
pull-cluster-api-provider-aws-verify

In response to this:

/test ?

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.

@richardcase
Copy link
Member

/test pull-cluster-api-provider-aws-e2e-eks

@richardcase
Copy link
Member

/milestone v2.9

@k8s-ci-robot
Copy link
Contributor

@richardcase: The provided milestone is not valid for this repository. Milestones in this repository: [v2.5, v2.6, v2.7, v2.8]

Use /milestone clear to clear the milestone.

In response to this:

/milestone v2.9

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.

@alexander-demicev
Copy link
Contributor Author

/test pull-cluster-api-provider-aws-e2e-eks

@alexander-demicev
Copy link
Contributor Author

/test pull-cluster-api-provider-aws-e2e-eks

@richardcase
Copy link
Member

richardcase commented Apr 10, 2025

@alexander-demicev - for any new templates used in e2e tests you will need to the following:

Looking at what you have done, i think you've added the template to the wrong e2e file. Add it to e2e_eks_conf.yaml instead of e2e_conf.yaml. If that doesn't fix it let me know.

@alexander-demicev
Copy link
Contributor Author

/test pull-cluster-api-provider-aws-e2e-eks

@richardcase
Copy link
Member

Created a PR to your fork that should help: alexander-demicev#1

@k8s-ci-robot k8s-ci-robot added needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. do-not-merge/contains-merge-commits labels Apr 13, 2025
@alexander-demicev alexander-demicev force-pushed the eksclusterclass branch 3 times, most recently from 6343761 to 5d40462 Compare April 14, 2025 08:34
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Apr 14, 2025
@alexander-demicev
Copy link
Contributor Author

/test pull-cluster-api-provider-aws-e2e-eks

@alexander-demicev
Copy link
Contributor Author

/test pull-cluster-api-provider-aws-e2e-eks

@alexander-demicev
Copy link
Contributor Author

/test pull-cluster-api-provider-aws-e2e-eks

@alexander-demicev alexander-demicev force-pushed the eksclusterclass branch 4 times, most recently from 77a1e3d to aa5cc52 Compare April 23, 2025 10:07
@alexander-demicev
Copy link
Contributor Author

/test pull-cluster-api-provider-aws-e2e-eks

@alexander-demicev
Copy link
Contributor Author

/test pull-cluster-api-provider-aws-e2e-eks

alexander-demicev and others added 2 commits April 24, 2025 12:06
Signed-off-by: Alexandr Demicev <[email protected]>

Co-authored-by: Richard Case <[email protected]>
@alexander-demicev
Copy link
Contributor Author

/test pull-cluster-api-provider-aws-e2e-eks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/feature Categorizes issue or PR as related to a new feature. needs-priority release-note Denotes a PR that will be considered when it comes time to generate release notes. 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.

Add AWSManagedControlPlaneTemplate type
4 participants