Zum Inhalt

Konfiguration

Workspace-Konfiguration

Ein Polycrate Workspace wird durch eine polycrate.yml Datei im Root-Verzeichnis konfiguriert.

Grundlegende Struktur

name: my-workspace
version: 1.0.0

blocks:
  - name: my-block
    source: hub.polycrate.io/my-block
    version: latest

settings:
  default_action: deploy

Block-Konfiguration

Blocks können individuell konfiguriert werden:

Block aus PolyHub

blocks:
  - name: kubernetes-cluster
    source: hub.polycrate.io/kubernetes/cluster
    version: 1.2.3
    config:
      provider: aws
      region: eu-central-1

Lokaler Block

blocks:
  - name: custom-block
    source: ./blocks/custom-block
    config:
      custom_setting: value

Action-Konfiguration

Actions werden innerhalb von Blocks definiert:

actions:
  deploy:
    description: "Deploy the application"
    steps:
      - ansible-playbook: deploy.yml

  destroy:
    description: "Destroy the infrastructure"
    steps:
      - ansible-playbook: destroy.yml

Umgebungsvariablen

Polycrate unterstützt Umgebungsvariablen für sensitive Daten:

env:
  - AWS_ACCESS_KEY_ID
  - AWS_SECRET_ACCESS_KEY
  - KUBERNETES_CONFIG

Diese können in einer .env Datei oder als Systemumgebungsvariablen definiert werden.

Container-Konfiguration

Konfigurieren Sie den Polycrate Container:

container:
  image: polycrate/polycrate:latest
  volumes:
    - ~/.kube:/root/.kube:ro
  ports:
    - 8080:8080

Best Practices

  • Versionierung: Verwenden Sie spezifische Versionen für Blocks
  • Secrets: Speichern Sie keine Secrets in der polycrate.yml
  • Dokumentation: Dokumentieren Sie Custom Actions
  • Testing: Testen Sie Actions in einer separaten Umgebung

Weitere Ressourcen