airshipctl/manifests/function/airshipctl-base-catalogues
Sean Eagan 2ba6561854 Add helm-controller and source-controller
This adds functions for the helm-controller and source-controller from
Flux v2 [0]. The helm-controller depends on the source-controller and
so this includes a composite to wrap both. These components replace the
Helm Operator, which is now removed from the gating setup. The Helm Operator
function itself will be removed after a suitable migration period.

This also adds a format for Helm chart and Helm repository sourcing
to the versions catalog.

[0]: https://fluxcd.github.io/flux2

Closes: #372

Change-Id: I7287f1bb5b1ebd1dba9920cc0bed8c867720b4c1
Signed-off-by: Sean Eagan <seaneagan1@gmail.com>
2020-11-06 09:52:16 +00:00
..

Function: airshipctl-base-catalogues

This function defines some default VariableCatalogue resources, which can be consumed and used (via ReplacementTransformer) to change the versioning and resource locations used by functions in the airshipctl project. More base catalogues will be added here in the future.

This catalogue can be used as-is to simply apply defaults, or a different catalogue may be supplied (with the same versions-airshipctl name) as a kustomize resource. The catalogue in this function can also be patched at the composite, type, or site level to reconfigure the versions.

The versions info falls under these keys:

  • charts: Helm chart locations and versions

  • files: image file (etc) locations and versions

  • images: container image registries and versions

  • kubernetes: a standalone key for the Kubernetes version to use

Versions that are defined for specific resources in specific functions (e.g., container images) are categorized in the catalogue according to the function and resource they will be applied to. E.g., images.baremetal_operator.ironic.dnsmasq.