Polycrate CLI 0.29.15¶
Release-Datum: 23. Januar 2026
Typ: Bugfix
Highlights¶
Diese Version behebt den Root Cause eines kritischen Bugs, bei dem Endpoints mit tls: false in der API nicht korrekt in die Kubernetes CRD übernommen wurden.
Artefakte¶
Docker Images¶
CLI Downloads¶
| Plattform | Architektur | Download |
|---|---|---|
| Linux | amd64 | Download |
| Linux | arm64 | Download |
| macOS | amd64 | Download |
| macOS | arm64 | Download |
Installation & Update¶
Bugfixes¶
Endpoint TLS Serialization Fix (Root Cause)¶
Problem: Endpoints mit tls: false in der API wurden nicht korrekt in die CRD übernommen - der Wert blieb immer true.
Root Cause: Die CRD-Definition hatte eine Kombination aus +kubebuilder:default=true und omitempty für das TLS-Feld. Bei TLS=false (Go Zero-Value für bool) wurde das Feld wegen omitempty nicht ins JSON serialisiert. Kubernetes wendete dann den Default true an.
Fix: - omitempty vom TLS-Feld entfernt → false wird explizit serialisiert - +kubebuilder:default=false hinzugefügt → Keine "Required value" Fehler - Protocol-Default von https auf http geändert (konsistent mit TLS=false)
Erweitertes Endpoint-Check Logging¶
Debug-Logs für Endpoint-Checks zeigen jetzt den vollständigen URL sowie das Ergebnis des Checks:
Performing endpoint check
url: http://example.com:80/
protocol: http
tls: false
Endpoint check failed
url: http://example.com:80/
status_code: 404
error: Unexpected status code: 404
Dies erleichtert das Troubleshooting von Endpoint-Monitoring Problemen erheblich.
Breaking Changes¶
Neue Endpoints¶
Neue Endpoints bekommen jetzt folgende Defaults:
tls: false(vorher:true)protocol: http(vorher:https)
Für HTTPS-Endpoints muss tls: true explizit gesetzt werden.
Bestehende Endpoints¶
Bestehende Endpoints behalten ihre aktuellen Werte. Beim nächsten API-Sync wird tls: false korrekt persistiert (wenn die API diesen Wert liefert).
polycrate-operator Block¶
Der polycrate-operator Block wurde auf Version 0.3.30 aktualisiert:
polycrate pull cargo.ayedo.cloud/ayedo/k8s/polycrate-operator
polycrate run polycrate-operator deploy
Wichtig: Nach dem Update werden die neuen CRDs automatisch installiert. Bestehende Endpoint-CRs mit falschem TLS-Wert werden beim nächsten API-Sync korrigiert.
Verifikation¶
Nach dem Update können Sie prüfen ob der Fix wirkt:
# CRD prüfen - kein "default: true" mehr
kubectl get crd endpoints.polycrate.io -o yaml | grep -A5 "tls:"
# Endpoint prüfen nach Sync
kubectl get endpoint.polycrate.io <name> -n polycrate -o jsonpath='{.spec.tls}'
Changelog¶
- FIX: Endpoint TLS=false wird jetzt korrekt in CRD persistiert
- FIX: CRD-Definition korrigiert (omitempty entfernt, default=false)
- DEBUG: Erweitertes Endpoint-Check Logging (URL, Protocol, TLS, Status, Error)
- CHANGE: Neue Default-Werte für TLS (false) und Protocol (http)