Skip to content

fluxcd/kustomize-controller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

3d87349 · Sep 27, 2024
Sep 26, 2024
Sep 25, 2024
Sep 26, 2024
Sep 27, 2024
Mar 30, 2023
Sep 27, 2024
Aug 15, 2024
Mar 29, 2023
Jun 11, 2024
May 6, 2024
Apr 20, 2020
Apr 20, 2020
Aug 15, 2024
Aug 15, 2024
Apr 15, 2020
Nov 30, 2020
Sep 13, 2024
Mar 29, 2023
Mar 31, 2023
Sep 26, 2024
Sep 26, 2024
Sep 25, 2024

Repository files navigation

kustomize-controller

CII Best Practices e2e report license release

The kustomize-controller is a Flux component, specialized in running continuous delivery pipelines for infrastructure and workloads defined with Kubernetes manifests and assembled with Kustomize.

The cluster desired state is described through a Kubernetes Custom Resource named Kustomization. Based on the creation, mutation or removal of a Kustomization resource in the cluster, the controller performs actions to reconcile the cluster current state with the desired state.

overview

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 SDK
  • decrypts Kubernetes secrets with Mozilla SOPS and KMS
  • validates the generated manifests with Kubernetes server-side apply dry-run
  • detects drift between the desired and state and cluster state
  • corrects drift by patching objects with Kubernetes server-side apply
  • 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

Guides

Roadmap

The roadmap for the Flux family of projects can be found at https://fluxcd.io/roadmap/.

Contributing

This project is Apache 2.0 licensed and accepts contributions via GitHub pull requests. To start contributing please see the development guide.