Déclaratif
Pipelines, ordre des étapes, workspace Helm et hooks dans la config — pas d’arbres shell ad hoc dans le code.
Playbooks YAML versionnés pour down, up et reset ordonnés — hooks, notifications et dry-run par défaut.
$ curl -fsSL https://get.kzero.hermesrodriguez.com/install.sh | sh $ kzero --print-sample-config > ./kzero.yaml # adjust $ kzero analyze $ kzero down # dry-run when run.mode: dry-run
curl -fsSL https://get.kzero.hermesrodriguez.com/install.sh | sh
Pipelines, ordre des étapes, workspace Helm et hooks dans la config — pas d’arbres shell ad hoc dans le code.
dry-run et analyze avant live ; preflight checks ; run.api_watchdog et pipeline.stalled détectent perte d’API et pipelines bloqués.
Logs horodatés, notify Slack/webhook, releases signées Cosign et SBOMs — pour bastions et CI, pas de boutons magiques.
D’une API malade à un down → up / reset ordonné : YAML déclaratif sur un hôte qui atteint le cluster hors bande.

kzero v1.1.0 — kzero diff, étapes job/cronjob natives, Helm SDK v4 ; contrat stable v1.0 inchangé.kzero v1.1.0
Compare l’état désiré de pipelines.up ou pipelines.down au cluster (--phase up|down). Code de sortie 2 en cas de dérive.
Réfs compactes toujours natives : CronJob suspend/resume ; Job delete en down et create depuis manifest en up.
Le chemin Helm natif utilise helm.sh/helm/v4 ; le CLI helm v3 hôte reste OK avec run.execution: shell.
Interpréteur opt-in pour hooks de phase, pre/post par étape, custom et scripts release .sh. Défaut /bin/sh ; doctor vérifie l’interpréteur si des hooks sont configurés.
Le retry live et ErrTransient shell correspondent à connection lost / http2: client connection lost.
Si omis, workloads et Helm SDK utilisent native. Garder les releases .sh avec run.execution: shell ou auto.
Config 1, Kubernetes 2, executor 3, notify 4 — adaptés à cron et CI.
Smoke testing/kind produit pour down/up live ; motifs PVC/StatefulSet documentés.
Doctor de preflight, completion shell et plugin kubectl dans le même set de release.
Bastion/cron est le chemin produit quand l’API est malade — pas l’automation in-cluster comme modèle primaire.
SIGINT/SIGTERM annulent down/up/reset/probe actifs — distinct de pipeline.stalled.
Si true, un POST notify échoué de pipeline.error ou pipeline.stalled fait échouer le pipeline.
run.api_watchdog sonde l’API en live ; après fail_after, l’étape active est annulée.
release.* via helm.sh/helm/v3 sans binaire helm hôte quand execution est native ou auto.
Cosign keyless pour ghcr.io/hrodrig/kzero plus SBOMs SPDX et CycloneDX.
Exemple de reset plateforme complet :kzero-selfhosted/full-reset-example
| Dépôt | Rôle |
|---|---|
| hrodrig/kzero | CLI, moteur, SPEC, releases, image container |
| hrodrig/kzero-selfhosted | Bastion, cron, exemples, kind e2e (pin 0.1.15) |