kustomize-controller
The kustomize-controller is a Kubernetes operator, specialized in running continuous delivery pipelines for infrastructure and workloads defined with Kubernetes manifests and assembled with Kustomize.
Features:
- watches for Kustomization objects
- fetches artifacts produced by source-controller from Source objects
- watches Source objects for revision changes
- generates the kustomization.yaml file if needed
- generates Kubernetes manifests with kustomize build
- decrypts Kubernetes secrets with Mozilla SOPS
- validates the build output with client-side or APIServer dry-run
- applies the generated manifests on the cluster
- prunes the Kubernetes objects removed from source
- checks the health of the deployed workloads
- runs Kustomizations in a specific order, taking into account the depends-on relationship
- notifies whenever a Kustomization status changes
Specifications:
- API
- Controller
Usage
The kustomize-controller is part of a composable GitOps toolkit and depends on source-controller to acquire the Kubernetes manifests from Git repositories and S3 compatible storage buckets. Install the toolkit controllers
Download the flux CLI:
curl -s https://toolkit.fluxcd.io/install.sh
Install the toolkit controllers in the flux-system namespace:
flux install