Skip to content
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

feat(config)!: controlPlane and worker is now type of NodeConfigs #303

Merged
merged 1 commit into from
Jan 22, 2024

Conversation

budimanjojo
Copy link
Owner

This will allow all NodeConfigs fields to be applicable on node group
(controlPlane or worker depending on node type) or per node level.

The config will be "merged" with everything defined on per node level
take precedence, except for patches and extraManifests to keep the
behavior before this commit. Patches and extaManifests defined on both
node and node group level will be appended instead.

There are 2 new node options to change the behavior of patches and
extraManifests when defined at both the node and node group level.
Which are: overridePatches and overrideExtraManifests. By setting
them to true will make the patches and extraManifests defined in
node level to override the ones defined in node group level.

The config validation is now done after the "merging" is done for each
node. So, i.e when you define schematic incorrectly in controlPlane
struct, you might see the validation says you have incorrect
nodes[0].schematic instead assuming nodes[0] is a controlPlane node.

BREAKING CHANGE: This commit also remove all the deprecated fields which
are:

  • talosImageURL
  • all inlinePatch
  • all configPatches
  • nodes[].extensions

This will allow all `NodeConfigs` fields to be applicable on node group
(`controlPlane` or `worker` depending on node type) or per node level.

The config will be "merged" with everything defined on per node level
take precedence, except for `patches` and `extraManifests` to keep the
behavior before this commit. Patches and extaManifests defined on both
node and node group level will be appended instead.

There are 2 new node options to change the behavior of `patches` and
`extraManifests` when defined at both the node and node group level.
Which are: `overridePatches` and `overrideExtraManifests`. By setting
them to `true` will make the `patches` and `extraManifests` defined in
node level to override the ones defined in node group level.

The config validation is now done after the "merging" is done for each
node. So, i.e when you define `schematic` incorrectly in `controlPlane`
struct, you might see the validation says you have incorrect
`nodes[0].schematic` instead assuming `nodes[0]` is a controlPlane node.

BREAKING CHANGE: This commit also remove all the deprecated fields which
are:
* `talosImageURL`
* all `inlinePatch`
* all `configPatches`
* `nodes[].extensions`
@budimanjojo budimanjojo changed the title feat!(config): controlPlane and worker is now type of NodeConfigs feat(config)!: controlPlane and worker is now type of NodeConfigs Jan 21, 2024
@budimanjojo budimanjojo merged commit 39ba813 into master Jan 22, 2024
2 checks passed
@budimanjojo budimanjojo deleted the v2 branch January 22, 2024 04:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant