Skip to main content

Was Workflows sind

Workflows sind YAML-Dateien, die der Serverhost während der Vorbereitung oder beim Cleanup eines Servers ausführt. Sie kopieren Template-Dateien, laden konfigurierte Plugins herunter, wenden Configurators an, verwalten Cache-Dateien und entfernen temporäre Laufzeitverzeichnisse. Workflow-Dateien liegen in workflows/. Die Workflow-ID besteht aus Namespace und Dateiname ohne .yml, zum Beispiel internal/setup für workflows/internal/setup.yml.

Standard-Workflows

Jeder Serverhost erstellt beim ersten Start die Standard-Workflow-Dateien: Servergruppen und persistente Server speichern ihre Workflows in der Basiskonfiguration:
Das Dashboard verwaltet die üblichen Standardwerte für dich. Bearbeite Workflow-Dateien direkt nur, wenn du eigene Vorbereitung, Backups, Uploads oder Cleanup-Schritte brauchst.

Workflow-Struktur

Ein Workflow hat einen lesbaren name, optionale variables und eine steps-Liste. Jeder Step hat einen name, einen uses-Action-Identifier, optionale if- und async-Einstellungen und Action-Parameter unter with.
Variablen sind hilfreich, wenn mehrere Steps denselben Pfad oder Wert verwenden:

Runtime-Werte

Workflow-Ausdrücke verwenden {{ ... }}-Syntax. Die wichtigsten Werte sind:

Häufige Actions

simplecloud/copy

Kopiert eine Datei oder ein Verzeichnis.

simplecloud/delete

Löscht eine Datei oder ein Verzeichnis.
Optionale Felder sind force und min-age, zum Beispiel 10m, 2h oder 7d.

simplecloud/foreach

Führt verschachtelte Steps für jedes Element einer Liste aus.

simplecloud/load-plugins

Lädt konfigurierte Plugins von Modrinth, Hangar, Spigot oder direkten URLs herunter und kopiert sie in das Plugin-Verzeichnis des Servers.

simplecloud/configurate

Wendet einen Configurator aus options/configurators/ an.
Siehe Configurators für das Configurator-Dateiformat.

Archive und Uploads

Nutze simplecloud/compress, simplecloud/decompress und simplecloud/upload für Backups oder externe Speicher-Workflows.

Bedingungen und Async-Steps

Nutze if, um einen Step nur auszuführen, wenn eine Bedingung passt. Bedingungen unterstützen Vergleiche, &&, ||, exists(...), !exists(...) und value(path, default).
Setze async: true nur für unabhängige Steps. Der Workflow wartet auf asynchrone Arbeit, bevor er Erfolg oder Fehler meldet.

Fehlerbehebung

Prüfe die Workflow-Liste der Servergruppe oder des persistenten Servers. Die Workflow-ID muss zum Pfad unter workflows/ passen, zum Beispiel internal/setup.
Stelle sicher, dass die YAML-Datei name und steps enthält und dass jeder Step einen uses-Action-Identifier hat.
Verwende Syntax wie {{ runtime.name }} oder {{ vars.name }}. Prozent-Platzhalter wie %server-dir% gehören zu Configurators, nicht zu Workflows.
Prüfe den Quellpfad der betroffenen simplecloud/copy-Action und ob init-dir-if-missing für diesen Ordner aktiviert werden sollte.