Zum Inhalt

Polycrate 0.29.2

Veröffentlicht am: 2026-01-06

Highlights

Bugfix-Release mit wichtigen Fixes für den Polycrate Operator (Loglevel, Metriken-ID), Self-Reference Block Panics und fehlende Workspace-Flags bei polycrate pull/push Alias-Commands.


Artefakte

Docker Images

# Multi-arch Image (linux/amd64, linux/arm64)
docker pull cargo.ayedo.cloud/library/polycrate:0.29.2
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.2

# Neuinstallation siehe Dokumentation

Installationsanleitung | Update-Anleitung


Bugfixes

Operator: Loglevel wird respektiert

Der Operator verwendete bisher zap.UseDevMode(true), was immer DEBUG-Logging aktivierte. Jetzt wird der --loglevel Flag korrekt respektiert:

  • Loglevel 1 (default): Nur INFO, WARN, ERROR
  • Loglevel 2: DEBUG-Meldungen sichtbar
  • Loglevel 3: Maximale Verbosität

Operator-Dokumentation

Operator: Metriken verwenden API ID

Die Prometheus-Metriken des Operators (polycrate_io_endpoint_id) verwendeten bisher die Kubernetes UID statt der Polycrate API ID. Dies führte zu Mismatches bei der Korrelation von Metriken mit API-Daten.

Fix: Metriken verwenden jetzt status.api_id aus der Endpoint-CR.

Self-Reference Block Panic

Ein Block mit from: Stanza die auf sich selbst verweist, führte zu einem Panic beim Ausführen einer Action:

# VORHER: Panic
- name: my-block
  from: my-block  # ← Selbstreferenz!

Fix: Selbstreferenz wird jetzt erkannt und mit einer klaren Fehlermeldung abgebrochen:

Error: block 'my-block' references itself in 'from:' stanza - circular reference not allowed

Pull/Push Alias Commands

Die Alias-Commands polycrate pull und polycrate push hatten keine Workspace-Flags (-w, --workspace) registriert, was zu einem Panic führte:

# VORHER: Panic
polycrate pull cargo.ayedo.cloud/ayedo/k8s/my-block

Fix: AddWorkspaceFlags() zu beiden Alias-Commands hinzugefügt.

Secrets Registry Merge

Die registry Stanza aus secrets.poly wird jetzt korrekt in die Workspace-Konfiguration gemerged, inklusive Proxy-Credentials.

Workspace-Verschlüsselung

Build: ldflags korrigiert

Die Go ldflags in der Build-Konfiguration zeigten auf den falschen Pfad (main.version statt polycrate/cmd.version), weshalb polycrate version immer "latest" zurückgab.


Technische Details

Dependency Resolution Fix

Die Loop-Logik in ResolveBlockDependencies() wurde korrigiert:

  • Vorher: missing-- Counter konnte durch bereits resolved Blocks negativ werden
  • Nachher: allResolved Flag mit Max-Iterations-Schutz gegen Endlosschleifen
// Neue Logik mit besserer Fehlermeldung bei zirkulären Referenzen
if iterations > maxIterations {
    return fmt.Errorf("dependency resolution failed after %d iterations. Unresolved blocks: %v", iterations, unresolved)
}

polycrate-operator Block

Der polycrate-operator Block wurde auf Version 0.3.4 aktualisiert:

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

Weitere Informationen