flux2
flux2 copied to clipboard
fix: ensure `flux check` returns non-zero exit code on failure
Fixes #5220 by returning a non-zero exist code for failed checks.
Hey @matheuscscp 👋
I've done some refactoring to separate business and presentation logic. Let me know what you think.
Some examples logs:
- Success complete
$ flux check
► Checking flux pre-requisites
✔ flux 0.0.0-dev.0 is a development build
► Checking kubernetes pre-requisites
✔ kubernetes 1.32.0>=1.30.0-0
► Checking flux installation status
✔ distribution: flux-v2.4.0
✔ bootstrapped: true
► Checking flux controllers
✔ ghcr.io/fluxcd/helm-controller:v1.1.0
✔ ghcr.io/fluxcd/kustomize-controller:v1.4.0
✔ ghcr.io/fluxcd/notification-controller:v1.4.0
✔ ghcr.io/fluxcd/source-controller:v1.4.1
► Checking flux crds
✔ alerts.notification.toolkit.fluxcd.io/v1beta3
✔ buckets.source.toolkit.fluxcd.io/v1
✔ gitrepositories.source.toolkit.fluxcd.io/v1
✔ helmcharts.source.toolkit.fluxcd.io/v1
✔ helmreleases.helm.toolkit.fluxcd.io/v2
✔ helmrepositories.source.toolkit.fluxcd.io/v1
✔ kustomizations.kustomize.toolkit.fluxcd.io/v1
✔ ocirepositories.source.toolkit.fluxcd.io/v1beta2
✔ providers.notification.toolkit.fluxcd.io/v1beta3
✔ receivers.notification.toolkit.fluxcd.io/v1
► All checks passed
- Success pre
$ flux check --pre
► Checking flux pre-requisites
✔ flux 0.0.0-dev.0 is a development build
► Checking kubernetes pre-requisites
✔ kubernetes 1.32.0>=1.30.0-0
► All pre-installation checks passed
- Failure complete
$ flux check
► Checking flux pre-requisites
✔ flux 0.0.0-dev.0 is a development build
► Checking kubernetes pre-requisites
✔ kubernetes 1.30.7+orb1>=1.30.0-0
► Checking flux installation status
✗ error getting cluster info: customresourcedefinitions.apiextensions.k8s.io "gitrepositories.source.toolkit.fluxcd.io" not found
► Checking flux controllers
✗ no controllers found in the 'flux-system' namespace with the label selector 'app.kubernetes.io/part-of=flux'
► Checking flux crds
✗ no crds found with the label selector 'app.kubernetes.io/part-of=flux'
✗ checks failed
- Failure pre
► Checking flux pre-requisites
✔ flux 0.0.0-dev.0 is a development build
► Checking kubernetes pre-requisites
✔ kubernetes 1.30.7+orb1>=1.30.0-0
► All pre-installation checks passed
Hi @h3nryc0ding, was the 4th output a mistake on copy-paste?
- Failure pre
► Checking flux pre-requisites ✔ flux 0.0.0-dev.0 is a development build ► Checking kubernetes pre-requisites ✔ kubernetes 1.30.7+orb1>=1.30.0-0 ► All pre-installation checks passed