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 inworkflows/. 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:
Workflow-Struktur
Ein Workflow hat einen lesbarenname, 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.
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.
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.
Archive und Uploads
Nutzesimplecloud/compress, simplecloud/decompress und simplecloud/upload für Backups oder externe Speicher-Workflows.
Bedingungen und Async-Steps
Nutzeif, um einen Step nur auszuführen, wenn eine Bedingung passt. Bedingungen unterstützen Vergleiche, &&, ||, exists(...), !exists(...) und value(path, default).
async: true nur für unabhängige Steps. Der Workflow wartet auf asynchrone Arbeit, bevor er Erfolg oder Fehler meldet.
Fehlerbehebung
Ein Workflow läuft nicht
Ein Workflow läuft nicht
Prüfe die Workflow-Liste der Servergruppe oder des persistenten Servers. Die Workflow-ID muss zum Pfad unter
workflows/ passen, zum Beispiel internal/setup.Ein Workflow kann nicht geladen werden
Ein Workflow kann nicht geladen werden
Stelle sicher, dass die YAML-Datei
name und steps enthält und dass jeder Step einen uses-Action-Identifier hat.Ein Wert wird nicht ersetzt
Ein Wert wird nicht ersetzt
Verwende Syntax wie
{{ runtime.name }} oder {{ vars.name }}. Prozent-Platzhalter wie %server-dir% gehören zu Configurators, nicht zu Workflows.Plugin- oder Template-Dateien fehlen
Plugin- oder Template-Dateien fehlen
Prüfe den Quellpfad der betroffenen
simplecloud/copy-Action und ob init-dir-if-missing für diesen Ordner aktiviert werden sollte.