Zum Inhalt

Polycrate API 0.11.3

Release-Datum: 9. Januar 2026
Typ: Patch Release

Highlights

  • K8sCluster Workspace UUID Filter - Cluster-Suche funktioniert jetzt mit Workspace-UUIDs (nicht nur Namen)

Artefakte

Docker Images

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

Installation & Update

# Block-Konfiguration aktualisieren
polycrate run polycrate-api install

Installationsanleitung

Änderungen

Fix: K8sCluster Workspace UUID Filter

Der K8sClusterFilter akzeptierte nur Workspace-Namen für den workspace Query-Parameter. Der Polycrate Operator sendet jedoch Workspace-UUIDs.

Problem:

Der Operator versuchte bei jedem Reconcile ein neues Cluster zu erstellen, obwohl bereits eines existiert:

django.db.utils.IntegrityError: duplicate key value violates unique constraint "unique_k8s_cluster_per_workspace"
DETAIL: Key (name, workspace_id)=(cluster-name, 20e2e564-...) already exists.

Lösung:

Neue filter_workspace() Methode erkennt automatisch ob der Wert eine UUID oder ein Name ist:

def filter_workspace(self, queryset, name, value):
    """Filter by workspace name (icontains) or UUID (exact match)."""
    import uuid
    try:
        workspace_uuid = uuid.UUID(value)
        return queryset.filter(workspace__id=workspace_uuid)
    except (ValueError, AttributeError):
        return queryset.filter(workspace__name__icontains=value)

Betroffene Datei: src/k8s/views.py

Migration

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

Abhängigkeit

Dieses Release ist Voraussetzung für Polycrate CLI 0.29.4. Der Operator benötigt diese Änderung für korrekte Cluster-Erkennung.

Vollständiger Changelog

CHANGELOG.poly