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

Implement runtime extension mechanism for credentials syncronization #530

Open
Danil-Grigorev opened this issue May 7, 2024 · 0 comments

Comments

@Danil-Grigorev
Copy link
Contributor

Danil-Grigorev commented May 7, 2024

What would you like to be added (User Story)?

As an operator I’d like to use rancher credentials in ClusterClass templating process, so I don’t have to specify credential secrets twice.

Detailed Description

Runtime extension feature allows to define logic for variable templating within ClusterClass definition. With our credentials syncing mechanism, this would allow us to specify a simple patches: definition in provided ClusterClasses or require users to define it in user provided ClusterClasses in the lines of:

    # External patch definitions.
    patches:
    - name: credentialRepository
      external:
          generateExtension: generate-patches.turtles-credentials
          validateExtension: validate-topology.turtles-credentials
          ## Call variable discovery for this patch.
          discoverVariablesExtension: discover-variables.turtles-credentials

which will automate credential templating for them during Cluster creation, similar to:

apiVersion: cluster.x-k8s.io/v1beta1
kind: Cluster
#metadata 
spec:
  topology:
    variables:
      - name: azure-credentials
        definitionFrom: credentialRepository
        value: “AZURE_TENANT_ID”# Other variable definitions

Anything else you would like to add?

No response

Label(s) to be applied

/kind feature

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

No branches or pull requests

1 participant