Zum Inhalt

Polycrate CLI 0.29.10

Datum: 20. Januar 2026
Typ: Feature & Security Release


Highlights

  • 🔒 Kubernetes Security Hardening: Operator-Image nach NIST SP 800-190, CIS Benchmark und NSA/CISA Guidelines gehärtet
  • 🌐 DNS-Validierung: Endpoint Discovery filtert nicht-auflösbare Hostnames automatisch
  • 🔧 Certificate/Backup Fix: Namen werden korrekt an API übermittelt (keine "Unnamed" Einträge mehr)
  • polycrate init: Neuer Alias für polycrate workspace init
  • 🔄 API-Kompatibilität: Schema-Updates für Organizations/Workspaces UUID-Arrays (API 0.11.21+)

Neue Features

Kubernetes Security Hardening

Das Polycrate Operator-Image wurde nach gängigen Sicherheitsstandards gehärtet:

Rootless-Image (Default):

# Neuer Default-Tag für Operator-Deployments
cargo.ayedo.cloud/library/polycrate:0.29.10-rootless

Security Features:

Feature Standard
Non-root User (UID 1000) NIST SP 800-190 §4.4.1, CIS 5.2.6
readOnlyRootFilesystem: true NIST SP 800-190 §4.4.2
allowPrivilegeEscalation: false CIS Benchmark 5.2.7
capabilities.drop: [ALL] NIST SP 800-190 §4.4.3, CIS 5.2.8
seccompProfile: RuntimeDefault NSA/CISA Hardening
NetworkPolicy Ingress/Egress NIST SP 800-190 §4.6.1, CIS 5.3.2

Neue Block-Konfiguration:

blocks:
  - name: polycrate-operator
    config:
      security:
        enabled: true              # Default: true
        run_as_non_root: true      # UID 1000
        read_only_root_filesystem: true
        drop_capabilities: true
        network_policy:
          enabled: true

Opt-out (falls nötig):

config:
  image_tag_suffix: ""    # Standard-Image statt rootless
  security:
    enabled: false        # Deaktiviert SecurityContext

Operator Security Dokumentation

polycrate init Alias

Neuer Kurzbefehl für die Workspace-Initialisierung:

# Vorher
polycrate workspace init --with-name my-project

# Nachher (identische Funktionalität)
polycrate init --with-name my-project

Verfügbare Flags:

--with-name          Name des Workspaces
--with-organization  Organisation des Workspaces
--with-ssh-keys      SSH-Keys erstellen (default: true)
--with-config        Config-Datei erstellen (default: true)

CLI-Referenz: init

DNS-Validierung für Endpoint Discovery

Der Operator validiert jetzt Hostnames per DNS-Lookup bevor sie als Endpoints an die API gemeldet werden:

Effekt: - Wildcard-Hostnames (*.example.com) werden automatisch übersprungen - Nicht-auflösbare Hostnames werden ignoriert - Konsistentes Verhalten zwischen API und Operator

Performance: - TTL-basiertes DNS-Caching (5 Minuten) - Minimaler Overhead durch Cache-Hits

Endpoint Discovery Dokumentation


Bugfixes

Certificate/Backup Name Validation

Zertifikate und Backups wurden im UI als "Unnamed" angezeigt, weil der Operator den Namen nicht korrekt an die API übermittelte.

Root Cause: - Operator sendete name nur in metadata, nicht als Top-Level Request-Feld - API (0.11.16+) erwartet name als Pflichtfeld

Fix: - buildCertificateRequest() und buildBackupRequest() senden jetzt name als Top-Level Feld - Korrespondiert mit API-Fix in polycrate-api 0.11.16

API Schema Kompatibilität

Die Filter Organizations und Workspaces wurden von String auf UUID-Array aktualisiert (API 0.11.21+):

// Vorher
Organization *string

// Nachher  
Organizations *[]openapi_types.UUID

polycrate-operator Block

Der polycrate-operator Block wurde auf Version 0.3.17 aktualisiert:

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

Änderungen: - SECURITY: Kubernetes Security Hardening (Rootless-Image, SecurityContext, NetworkPolicy) - Konfigurierbare parallele Reconciles (max_concurrent_reconciles: 4) - Neue security Config-Section für granulare Konfiguration


Artefakte

Docker Images

# Standard-Image
docker pull cargo.ayedo.cloud/library/polycrate:0.29.10

# Rootless-Image (empfohlen für Operator)
docker pull cargo.ayedo.cloud/library/polycrate:0.29.10-rootless

CLI Downloads

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

Installation & Update

polycrate update 0.29.10

Installationsanleitung


Abhängigkeiten

  • polycrate-api 0.11.21+: Erforderlich für Organizations/Workspaces UUID-Array Filter
  • polycrate-api 0.11.16+: Erforderlich für Certificate/Backup Name Validation