Zum Inhalt

Polycrate 0.29.6

Veröffentlicht am: 2026-01-14

Highlights

Kritisches Bugfix-Release: Der Operator konnte K8sApp-Objekte nicht mehr zur API synchronisieren aufgrund eines JSON-Deserialisierungsfehlers.


Artefakte

Docker Images

# Multi-arch Image (linux/amd64, linux/arm64)
docker pull cargo.ayedo.cloud/library/polycrate:0.29.6
docker pull cargo.ayedo.cloud/library/polycrate:latest

CLI Downloads

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

Installation & Update

# Bestehende Installation aktualisieren
polycrate update 0.29.6

# Neuinstallation siehe Dokumentation

Installationsanleitung | Update-Anleitung


Bugfixes

K8sApp API Sync JSON Deserialisierungsfehler

Der Operator konnte K8sApp-Objekte nicht zur API synchronisieren und lieferte folgende Fehlermeldung:

json: cannot unmarshal object into Go struct field K8sApp.workspace of type *uuid.UUID

Ursache: Der generierte API-Client (pkg/api/client.gen.go) hatte eine veraltete Typdefinition für das workspace-Feld:

// VORHER (Bug):
Workspace *openapi_types.UUID `json:"workspace"`

// Die API gibt aber ein vollständiges Objekt zurück:
// { "id": "...", "name": "...", "url": "..." }

Fix: API-Client mit dem aktuellen OpenAPI-Schema aus polycrate-api 0.11.5 neu generiert:

// NACHHER (Fix):
Workspace *WorkspaceSimple `json:"workspace,omitempty"`

Das WorkspaceSimple-Struct enthält alle Felder, die die API zurückgibt (id, name, display_name, url, etc.).

Technische Spezifikation

Operator-Controller Anpassungen

Zusätzlich wurden alle Operator-Controller an die Breaking Changes in polycrate-api 0.11.5 angepasst:

  • Name-Felder wurden aus mehreren Request-Structs entfernt
  • Entfernte Felder werden nun in Metadata oder Annotations gespeichert
  • K8sAppInstance API wurde komplett entfernt (deprecated)

Verbesserungen

polycrate-operator: Image Tag aus app_version

Der polycrate-operator Block verwendet jetzt automatisch block.app_version für das Docker-Image. Keine manuelle Aktualisierung von image_tag mehr nötig:

# VORHER: Manuell bei jedem Release
config:
  image_tag: "0.29.5"  # Musste manuell aktualisiert werden

# NACHHER: Automatisch aus app_version
# image_tag wird automatisch von block.app_version abgeleitet
# Optional überschreibbar via config.image_tag

polycrate-operator Block

Der polycrate-operator Block wird mit diesem Release auf Version 0.3.11 aktualisiert:

# Block aktualisieren
polycrate pull cargo.ayedo.cloud/ayedo/k8s/polycrate-operator

# Operator neu installieren
polycrate run polycrate-operator install

Migration

Keine Breaking Changes. Einfaches Update:

polycrate update 0.29.6
polycrate pull cargo.ayedo.cloud/ayedo/k8s/polycrate-operator
polycrate run polycrate-operator install

Nach dem Update können alle K8sApp-Objekte wieder korrekt zur API synchronisiert werden.


Weitere Informationen