The GitOps Toolkit Kustomize reconciler
Go to file
dependabot[bot] f3262b15a4
build(deps): bump the ci group with 2 updates
Bumps the ci group with 2 updates: [korthout/backport-action](https://github.com/korthout/backport-action) and [anchore/sbom-action](https://github.com/anchore/sbom-action).


Updates `korthout/backport-action` from 2.3.0 to 2.4.0
- [Release notes](https://github.com/korthout/backport-action/releases)
- [Commits](addffea45a...79b9f245a4)

Updates `anchore/sbom-action` from 0.15.4 to 0.15.5
- [Release notes](https://github.com/anchore/sbom-action/releases)
- [Commits](41f7a6c033...24b0d52385)

---
updated-dependencies:
- dependency-name: korthout/backport-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ci
- dependency-name: anchore/sbom-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: ci
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-23 14:31:29 +00:00
.github build(deps): bump the ci group with 2 updates 2024-01-23 14:31:29 +00:00
api Update source-controller to v1.2.2 2023-12-11 16:50:05 +02:00
config Release v1.2.0 2023-12-11 18:03:37 +02:00
docs Update README.md 2023-09-28 15:05:45 -04:00
hack Version API generated docs 2023-03-30 19:42:21 +05:30
internal Log HTTP errors to provide faster feedback 2023-12-13 11:47:30 +01:00
tests/fuzz Align go.mod version with Kubernetes (Go 1.20) 2023-06-26 19:20:13 +03:00
.gitignore Move `controllers` to `internal/controllers` 2023-03-29 12:27:05 +03:00
.goreleaser.yaml Add SLSA3 generators to release workflow 2023-06-22 15:16:34 +03:00
CHANGELOG.md Add changelog entry for v1.2.1 2023-12-14 19:53:20 +05:30
CODE_OF_CONDUCT.md Release v0.0.1-alpha.1 2020-04-20 15:11:11 +03:00
DCO Release v0.0.1-alpha.1 2020-04-20 15:11:11 +03:00
DEVELOPMENT.md update to new doc links structure 2022-08-30 15:26:51 +02:00
Dockerfile build: update `tonistiigi/xx` to 1.3.0 2023-12-11 09:08:00 +01:00
LICENSE Initial commit 2020-04-15 08:57:39 +03:00
MAINTAINERS Share fluxcd/flux2 maintainer 2020-11-30 13:31:53 +00:00
Makefile sops: move to `github.com/getsops/sops/v3` 2023-08-25 15:04:12 +02:00
PROJECT Promote Kustomization API to v1 2023-03-29 16:29:05 +03:00
README.md api/docs: various nits and typos 2023-03-31 17:23:46 +02:00
go.mod build(deps): bump github.com/cloudflare/circl from 1.3.6 to 1.3.7 2024-01-08 16:55:09 +00:00
go.sum build(deps): bump github.com/cloudflare/circl from 1.3.6 to 1.3.7 2024-01-08 16:55:09 +00:00
main.go Setup field for manager overrides on KustomizationReconciler struct and build up the disallow list to include these 2023-11-28 08:22:26 +00:00

README.md

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.