-
Notifications
You must be signed in to change notification settings - Fork 4
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
refactor: Use separate types for provider cluster configs #537
Conversation
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 like this change, I just don't really understand yet how we will accomplish the previous behavior of having different defaults for cp and workers.
ce225f6
to
c2dbdce
Compare
e173208
to
d34afb1
Compare
This PR/issue depends on:
|
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.
Great changes! I appreciate how this doesn't change the external API (visible by no changes to the examples).
Just a couple of comments to remove some stale vars.
Tested with CAPX and AWS
NAME READY SEVERITY REASON SINCE MESSAGE
Cluster/dkkonvoy-042224-01 True 3m27s
├─ClusterInfrastructure - NutanixCluster/dkkonvoy-042224-01-7ll46
├─ControlPlane - KubeadmControlPlane/dkkonvoy-042224-01-brbbg True 3m27s
│ └─Machine/dkkonvoy-042224-01-brbbg-6nk65 True 3m47s
│ └─MachineInfrastructure - NutanixMachine/dkkonvoy-042224-01-46dk4-h7pqr
└─Workers
└─MachineDeployment/dkkonvoy-042224-01-md-0-qhlb7 True 104s
└─Machine/dkkonvoy-042224-01-md-0-qhlb7-546dt-c79ck True 2m4s
└─MachineInfrastructure - NutanixMachine/dkkonvoy-042224-01-md-0-24rgj-tjrll
NAME READY SEVERITY REASON SINCE MESSAGE
Cluster/dkkonvoy-042224-aws-01 True 3m13s
├─ClusterInfrastructure - AWSCluster/dkkonvoy-042224-aws-01-kkzxw True 5m31s
├─ControlPlane - KubeadmControlPlane/dkkonvoy-042224-aws-01-rts9z True 3m13s
│ └─Machine/dkkonvoy-042224-aws-01-rts9z-h6d64 True 5m23s
└─Workers
└─MachineDeployment/dkkonvoy-042224-aws-01-md-0-vtwdk True 81s
└─Machine/dkkonvoy-042224-aws-01-md-0-vtwdk-98crs-qxvtd True 2m26s
This commit also switches to using controller-gen generated CRDs for the OpenAPI schema for the variable definitions. A lot of this commit is refactoring tests.
This was never used anywhere.
8ef41bb
to
91ea6f2
Compare
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.
Looks great. Thanks for the change to use types instead of handcrafted variables
🤖 I have created a release *beep* *boop* --- ## 0.8.0 (2024-04-29) <!-- Release notes generated using configuration in .github/release.yaml at main --> ## What's Changed ### Exciting New Features 🎉 * feat: give mutators a clusterGetter function by @faiq in https://github.com/nutanix-cloud-native/cluster-api-runtime-extensions-nutanix/pull/514it was unintelliga * feat: get default sans via cluster object in patch handler for docker by @faiq in #519 * feat: adds nutanix SANs via patchHandler by @faiq in #522 * feat: nutanix csi driver 3.0 by @faiq in #531 * feat: Add additionalCategories field to Nutanix machine details patch by @dlipovetsky in #525 * feat: support setting Nutanix project on machines by @dkoshkin in #535 * feat: Upgrade to CAPI v1.7.0 by @jimmidyson in #555 * feat: CAPI v1.7.1 by @jimmidyson in #560 * feat: Preserve user-managed fields when applying resources by @dlipovetsky in #556 * feat: Preserve user-managed fields when creating namespace by @dlipovetsky in #557 * feat: Added e2e test for capx cluster by @deepakm-ntnx in #523 * feat: add kube-vip static Pod in a Nutanix handler by @dkoshkin in #558 * feat: AWS CCM for Kubernetes v1.29 by @dkoshkin in #564 ### Fixes 🔧 * fix: updated the capx version used by @deepakm-ntnx in #513 * fix: add omitempty to CCM Credentials struct by @dkoshkin in #524 * fix: Add specific descriptions to Nutanix machine details fields by @dlipovetsky in #532 * refactor: setting ownership references to Nutanix CSI Helm Chart Proxies by @dlipovetsky in #565 ### Other Changes * build: Specify go1.22.2 as toolchain to fix govulncheck issues by @jimmidyson in #517 * build: Add metadata for latest v0.7.0 release by @jimmidyson in #515 * refactor: Consistently import CAPI v1beta1 package as clusterv1 alias by @jimmidyson in #518 * build: Fix image tags in release manifests by @jimmidyson in #516 * test(e2e): Use same versions of providers from module dependencies by @jimmidyson in #521 * build: update aws credentials on kind bootstrap cluster by @supershal in #507 * refactor: standardize the code for getting Helm values by @dkoshkin in #500 * build: Use latest k8s for dev and test management cluster by @jimmidyson in #526 * docs: Add how to release doc by @jimmidyson in #530 * build: adds a .envrc.local file for local development for dotenv by @faiq in #538 * refactor: create storage classes directly instead of using CRS by @faiq in #539 * refactor: Move API to caren.nutanix.com group by @jimmidyson in #534 * build: Add Kubernetes v1.30.0 option for bootstrap and Docker provider by @jimmidyson in #541 * build: create .envrc.e2e file from caren e2e config by @supershal in #540 * build: Only allow patch updates to k8s libs by @jimmidyson in #551 * build: Generate CRD YAML by @jimmidyson in #536 * build: Minor golangci-lint config updates for recent versions by @jimmidyson in #552 * build: generated CRDs yamls by @dkoshkin in #553 * refactor: Use separate types for provider cluster configs by @jimmidyson in #537 * docs: Remove additionalCategories from required fields by @dlipovetsky in #543 * build: Upgrade tooling, notably go to v1.22.2 by @jimmidyson in #561 * refactor: provider an entrypoint to the infra provider meta handlers by @dkoshkin in #554 * test(e2e): Add self-hosted e2e test by @jimmidyson in #439 * build: Bundle k8s.io/* back in with sigs.k8s.io/* dependencies by @jimmidyson in #583 * build: Add envtest setup to e2e envrc by @jimmidyson in #563 ## New Contributors * @deepakm-ntnx made their first contribution in #513 **Full Changelog**: v0.7.0...v0.8.0 --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
What problem does this PR solve?:
This commit also switches to using controller-gen generated CRDs
for the OpenAPI schema for the variable definitions.
A lot of this commit is refactoring tests.
The mechanism for defining the variable schema changes with this PR, meaning that a developer now defines variable with standard CRD mechanisms and kubebuilder annotations, rather than defining the manually constructed
VariableSchema
functions for each type previously.Which issue(s) this PR fixes:
Fixes #
How Has This Been Tested?:
Special notes for your reviewer:
Depends on #536.