FluxCD

Definition

FluxCD is a continuous delivery tool for Kubernetes that automates the deployment of application updates to a Kubernetes cluster. It works by monitoring version control repositories for changes and applying them to the cluster, ensuring that the desired state defined in the repository is reflected in the cluster. FluxCD supports GitOps practices, enabling teams to manage infrastructure and application updates using Git as the single source of truth.

Secure Settings Example

apiVersion: source.toolkit.fluxcd.io/v1beta2
kind: GitRepository
metadata:
  name: secure-repo
  namespace: flux-system
spec:
  interval: 1m
  url: ssh://git@github.com/secure-org/secure-repo.git
  secretRef:
    name: git-ssh-key
  verification:
    mode: head
    secretRef:
      name: cosign-key

Insecure Settings Example

apiVersion: source.toolkit.fluxcd.io/v1beta2
kind: GitRepository
metadata:
  name: insecure-repo
  namespace: flux-system
spec:
  interval: 1m
  url: https://github.com/insecure-org/insecure-repo.git
  # No secretRef for authentication
  verification:
    mode: none