Polycrate CLI 0.35.1¶
Release-Datum: 14. April 2026
Typ: Patch (Bugfix)
Highlights¶
Behebt einen kritischen Bug, bei dem der Kubernetes API-Server alle Operator-Finalizer mit dem polycrate_* Format (eingeführt in 0.35.0) ablehnt, da diese keine gültigen Fully Qualified Domain Names sind. Alle Finalizer verwenden jetzt das korrekte polycrate.io/ Format. Bestehende Objekte mit alten oder defekten Finalizern werden beim nächsten Reconcile automatisch migriert.
Artefakte¶
Docker Images¶
CLI Downloads¶
| Plattform | Architektur | Download |
|---|---|---|
| Linux | amd64 | Download |
| Linux | arm64 | Download |
| macOS | amd64 | Download |
| macOS | arm64 (Apple Silicon) | Download |
Installation & Update¶
Bugfixes¶
Operator Finalizer-Namen korrigiert¶
Die in 0.35.0 eingeführte Label-Migration (Spec 148) hatte versehentlich auch Finalizer-Namen auf das polycrate_* Format umgestellt. Im Gegensatz zu Labels müssen Kubernetes-Finalizer aber vollqualifizierte Domain-Namen sein — das polycrate_* Format wird vom API-Server rejected.
Symptom: Reconciler error im Operator-Log bei jedem Reconcile-Zyklus:
"Finalizer" is invalid: metadata.finalizers[0]: Invalid value: "polycrate_k8sapp_discovery_cleanup": a]
qualified name must consist of alphanumeric characters, '-', '_' or '.', and must start and end with
an alphanumeric character (e.g. 'MyName' or 'my.name' or '123-abc', regex used for validation is
'([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]') with an optional DNS subdomain prefix and '/' (e.g.
'example.com/MyName')
Fix: Alle 10 betroffenen Finalizer-Konstanten auf das polycrate.io/<resource>-<purpose> Format korrigiert:
| Controller | Alt (broken) | Neu (valid) |
|---|---|---|
| K8sApp Discovery | polycrate_k8sapp_discovery_cleanup | polycrate.io/k8sapp-discovery-cleanup |
| K8sApp Controller | polycrate_k8sapp_finalizer | polycrate.io/k8sapp-finalizer |
| K8sApp Label Discovery | polycrate_k8sapp_label_discovery_cleanup | polycrate.io/k8sapp-label-discovery-cleanup |
| S3Bucket | polycrate_s3bucket_finalizer | polycrate.io/s3bucket-finalizer |
| K8sVolume | polycrate_k8svolume_finalizer | polycrate.io/k8svolume-finalizer |
| Host | polycrate_host_cleanup | polycrate.io/host-cleanup |
| Backup | polycrate_backup_finalizer | polycrate.io/backup-finalizer |
| Certificate | polycrate_certificate_finalizer | polycrate.io/certificate-finalizer |
| Endpoint | polycrate_endpoint_finalizer | polycrate.io/endpoint-finalizer |
| BackupSchedule | polycrate_backupschedule_finalizer | polycrate.io/backupschedule-finalizer |
3-Generationen-Migration: Jeder Reconciler erkennt und migriert automatisch drei Finalizer-Formate:
- V1 (pre-0.35.0):
<resource>.polycrate.io/<purpose>— valides altes Format - V2 (0.35.0):
polycrate_<resource>_<purpose>— broken Format, wird migriert - V3 (0.35.1+):
polycrate.io/<resource>-<purpose>— neues korrektes Format
polycrate-operator Block¶
Der polycrate-operator Block wurde auf Version 0.3.55 aktualisiert (app_version: 0.35.1):
polycrate pull cargo.ayedo.cloud/ayedo/k8s/polycrate-operator
polycrate run polycrate-operator install
Jetzt aktualisieren¶
Oder laden Sie die Binaries direkt vom PolyHub herunter.