Zum Inhalt

Polycrate API 0.11.6

Release-Datum: 14. Januar 2026
Typ: Bugfix Release

Highlights

Dieses Release behebt kritische API-Validierungsfehler, die Updates von K8sApps und Hosts über den Operator verhinderten, und aktualisiert das Base-Image auf polycrate-cli 0.29.7.


Artefakte

Docker Images

docker pull cargo.ayedo.cloud/polycrate/polycrate-api:0.11.6

Installation & Update

# Block-Konfiguration aktualisieren
polycrate run polycrate-api install

Installationsanleitung


Bugfixes

K8sApp Block UniqueValidator Fix

Problem: Beim Update einer K8sApp über die API trat folgender Fehler auf:

{"block": ["Kubernetes App with this block already exists."]}

Ursache: Das block-Feld ist ein OneToOneField. Django REST Framework fügt automatisch einen UniqueValidator hinzu, der bei Updates den aktuellen Datensatz nicht ausschließt.

Lösung: Der K8sAppSerializer überschreibt jetzt das block-Feld mit einer benutzerdefinierten Validierung, die den aktuellen Datensatz bei Updates ausschließt:

def validate_block(self, value):
    existing = K8sApp.objects.filter(block=value)
    if self.instance:
        existing = existing.exclude(pk=self.instance.pk)
    if existing.exists():
        raise serializers.ValidationError("...")
    return value

DRF UniqueValidator Dokumentation

Host UniqueConstraint Fix

Problem: Beim Update eines Hosts über die API trat ein 400-Fehler auf.

Ursache: Das Host-Model hat zwei UniqueConstraint für (name, workspace) und (hostname, workspace). DRF validiert diese ohne den aktuellen Datensatz auszuschließen.

Lösung: Der HostSerializer überschreibt die validate()-Methode und schließt bei Updates den aktuellen Datensatz aus.


Updates

Base-Image auf polycrate-cli 0.29.8

Das Docker-Image basiert jetzt auf cargo.ayedo.cloud/library/polycrate:0.29.8.

Änderungen in polycrate-cli 0.29.8: - Verbessert: Alle 42 API-Client-Funktionen zeigen Response-Body bei Fehlern

Polycrate CLI 0.29.8 Release Notes


polycrate-api Block

Der polycrate-api Block wurde auf Version 0.5.7 aktualisiert:

polycrate pull cargo.ayedo.cloud/ayedo/k8s/polycrate-api
polycrate run polycrate-api install

Migration

Keine Migration erforderlich. Das Update kann ohne Datenbankänderungen durchgeführt werden.


Weitere Informationen