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

Add a type to the v1 model for the updated ClusterConfig #489

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

jan-g
Copy link
Contributor

@jan-g jan-g commented Mar 6, 2025

This is a placeholder commit to get feedback before we go too far down that path - we'll add the CRD
definition once we get agreement on it.

@jan-g jan-g marked this pull request as draft March 6, 2025 12:10
@jan-g jan-g requested a review from alenkacz March 6, 2025 12:10
@jan-g
Copy link
Contributor Author

jan-g commented Mar 6, 2025

This is mostly to invite comment about the proposed attribute for cluster config (we'll do something similar for node configuration rather than splitting the AdditionalConfiguration up according to prefix).

I think this needs to be merged with the current configuration - but because we want late binding of external secrets, we'll have to teach the configuration subcommand to pre-process a bootstrap.yaml.in to locate and expand these references to generate a .bootstrap.yaml, as well as managing the expansion in the operator itself for dynamic configuration update.

// If the value is supplied by an external source, coordinates are embedded here.
// For non-string target types, the string value fetched from the source will be treated as
// a value encoded according to YAML rules.
ExternalSecretRef *struct {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the original agreement was that this feature will pretty much be hidden, also I think we'll be using just secret name as a generic/platform agnostic pointer to what you want to read.

We can also emit this from the first implementation.

For reference, what I am going to get from controlplane is ${secrets.PASSWORD}

@jan-g jan-g force-pushed the v1-cluster-config branch 2 times, most recently from b062c01 to 4e9761c Compare March 7, 2025 09:42
This is a placeholder commit to get feedback before
we go too far down that path - we'll add the CRD
definition once we get agreement on it.
@jan-g jan-g force-pushed the v1-cluster-config branch from 4e9761c to 556c307 Compare March 7, 2025 09:52
jan-g added 2 commits March 7, 2025 12:18
This is exceedingly ugly; it's a placeholder. The entire
machinery here needs replacing with something
simplified and tidied up.
This requires some additional behaviour from the `configure`
subcommand.
@jan-g jan-g force-pushed the v1-cluster-config branch 3 times, most recently from b4f3d8d to c9067e8 Compare March 7, 2025 16:24
Some resolvers need to run late (the external secret
resolver in particular) in order to not pollute the k8s
resource with secret matter.
@jan-g jan-g force-pushed the v1-cluster-config branch from c9067e8 to 56a5c32 Compare March 7, 2025 16:25
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.

2 participants