Zum Inhalt

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

docker pull cargo.ayedo.cloud/library/polycrate:0.29.15

CLI Downloads

Plattform Architektur Download
Linux amd64 Download
Linux arm64 Download
macOS amd64 Download
macOS arm64 Download

Installation & Update

polycrate update 0.29.15

Installationsanleitung

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)

Spezifikation

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)

Alle Releases