-
Notifications
You must be signed in to change notification settings - Fork 29
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
Cluster class support #10
Conversation
SonarCloud Quality Gate failed. 0 Bugs 16.7% Coverage Catch issues before they fail your Quality Gate with our IDE extension SonarLint |
e4e7ea0
to
f7ea788
Compare
f7ea788
to
9ecea98
Compare
9ecea98
to
20636e5
Compare
Quality Gate failedFailed conditions |
58463ac
to
3d5b66f
Compare
3d5b66f
to
2c51e8f
Compare
I've addressed all the points in Avorima's review (good review Avorima, thank you. Sorry it took ages to get here).
Apart of that, I've split machineSpecs so you can define individual machine setups for ControlPlane, WorkerNodes and LoadBalancers. If you extend the ClusterClass, you can even implement your own machines as they're a I still need to add ipvs support to KubeAdm, or else LoadBalancers will not work. Also, taints and tolerations for LoadBalancers are missing, so they will run as regular nodes. |
d6de079
to
68eab29
Compare
9c8bcd3
to
11044ad
Compare
5efacb9
to
336866b
Compare
Quality Gate passedIssues Measures |
Description of changes:
We have a ClusterClass. It supports all features that all templates support (and then some).
Testing performed:
I have tested most setups by deploying them, but it'd really help if everybody chimed in for testing. I've updated docs/Usage.md
Discussion:
The ClusterClass works by essentially adding ProxmoxMachineSpec to the Cluster data structure. From this, the ClusterClass makes patches to ProxmoxMachineTemplates, which then get packaged into MachineDeployments (or ControlPlanes). As such it delivers every feature you could pack into a ProxmoxMachineSpec.
Limitations:
I can not template things for which there are no templates. This pertains to ipam pool refs and clusterResourceSets. I've made CNIs work by matching labels.
I can not control the naming of certain resources, leading to a lot of redundancy in names generated.
Comments I have archived from
avorima
. All of them are fixed:A few things: