home / containers / flux

Flux CLI

7.9k

GitOps CLI for bootstrapping Flux on Kubernetes, managing Flux resources, and inspecting reconciliation state.

$curl -s https://raw.githubusercontent.com/fluxcd/flux2/main/install/flux.sh | sudo bash
Language
Go
Stars
7,922
Category
Containers & K8s
Agent
Ready
Agent Compatibility
JSON Output
Agent Skill
MCP Support
AI Analysis

Flux CLI is the command line client for Flux, a GitOps toolkit for keeping Kubernetes clusters in sync with Git and OCI-sourced configuration. It bootstraps Flux onto clusters, manages Flux custom resources, and gives operators a shell surface for reconciliation, delivery checks, and manifest packaging.

What It Enables
  • Bootstrap Flux against GitHub, GitLab, Gitea, Bitbucket Server, or plain Git repositories, committing install and sync manifests as part of cluster setup.
  • Create, export, reconcile, suspend, resume, diff, and delete Flux sources, kustomizations, Helm releases, alerts, receivers, tenants, and image automation resources.
  • Check controller health, inspect events, logs, and resource trees, migrate Flux API versions, and push, pull, or list OCI artifacts that carry deployment manifests.
Agent Fit
  • The command set maps well to inspect-change-verify loops: check, get, events, logs, tree, reconcile, diff, and export can be chained around Kubernetes and GitOps automation.
  • Machine-readable output exists, but it is uneven: version -o json, tree ... -o json, and push artifact -o json are parseable, while many get and status commands still print tables or formatted logs.
  • Best fit for agents that already have kubeconfig, cluster RBAC, and repo or registry credentials; non-interactive flags like --silent, --yes, and --export help, but bootstrap, install, delete, and uninstall can still prompt by default.
Caveats
  • Useful operation depends on a reachable Kubernetes cluster plus repo or registry credentials, so the CLI is less self-contained than a hosted-service API client.
  • Many day-to-day inspect commands still return human-oriented tables or logs instead of consistent JSON, which adds parsing friction in unattended workflows.