This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Integrating with your ClusterClass

    CAREN provides an extension config for the provided runtime hooks for the various supported providers that you can integrate with your own ClusterClass to add to your own customizations. In this way you can take advantage of what CAREN provides instead of having to write your own.

    To integrate with your ClusterClasses, you will need to add the appropriate external patch references to your ClusterClass depending on your infrastructure provider under spec.patches. Once you have done this, you will be able to specify the variables clusterConfig and workerConfig1 regardless of infrastructure provider, although remember that each variable will have provider-specific fields as part of the schema.

    The required values are shown below per provider.

    AWS

      patches:
      - external:
          discoverVariablesExtension: awsclusterconfigvars.cluster-api-runtime-extensions-nutanix
          generateExtension: awsclusterconfigpatch.cluster-api-runtime-extensions-nutanix
        name: cluster-config
      - external:
          discoverVariablesExtension: awsworkerconfigvars.cluster-api-runtime-extensions-nutanix
          generateExtension: awsworkerconfigpatch.cluster-api-runtime-extensions-nutanix
        name: worker-config
    

    Nutanix

      patches:
      - external:
          discoverVariablesExtension: nutanixclusterconfigvars.cluster-api-runtime-extensions-nutanix
          generateExtension: nutanixclusterconfigpatch.cluster-api-runtime-extensions-nutanix
        name: cluster-config
      - external:
          discoverVariablesExtension: nutanixworkerconfigvars.cluster-api-runtime-extensions-nutanix
          generateExtension: nutanixworkerconfigpatch.cluster-api-runtime-extensions-nutanix
        name: worker-config
    

    Docker (for development and testing only)

      patches:
      - external:
          discoverVariablesExtension: dockerclusterconfigvars.cluster-api-runtime-extensions-nutanix
          generateExtension: dockerclusterconfigpatch.cluster-api-runtime-extensions-nutanix
        name: cluster-config
      - external:
          discoverVariablesExtension: dockerworkerconfigvars.cluster-api-runtime-extensions-nutanix
          generateExtension: dockerworkerconfigpatch.cluster-api-runtime-extensions-nutanix
        name: worker-config
    

    Generic (any infrastructure provider)

      patches:
      - external:
          discoverVariablesExtension: genericclusterconfigvars.cluster-api-runtime-extensions-nutanix
          generateExtension: genericclusterconfigpatch.cluster-api-runtime-extensions-nutanix
        name: cluster-config
    

    1. Generic runtime hooks only include clusterConfig variable as there are no generic worker customizations currently available. ↩︎