35 lines
1 KiB
Bash
35 lines
1 KiB
Bash
|
|
#!/usr/bin/env bash
|
||
|
|
set -euo pipefail
|
||
|
|
|
||
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||
|
|
ROOT="$(dirname "$SCRIPT_DIR")"
|
||
|
|
COMPOSE="$ROOT/compose/docker-compose.yml"
|
||
|
|
|
||
|
|
if [ -z "${1:-}" ]; then
|
||
|
|
echo "Verwendung: $0 <workflow.json | verzeichnis/>"
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
|
||
|
|
SOURCE="$1"
|
||
|
|
|
||
|
|
if [ -d "$SOURCE" ]; then
|
||
|
|
# Verzeichnis: alle JSON-Dateien importieren
|
||
|
|
echo "[import-workflow] Importiere alle Workflows aus: $SOURCE"
|
||
|
|
for f in "$SOURCE"/*.json; do
|
||
|
|
[ -f "$f" ] || continue
|
||
|
|
DEST="$ROOT/imports/workflows/$(basename "$f")"
|
||
|
|
cp "$f" "$DEST"
|
||
|
|
echo "[import-workflow] → $(basename "$f")"
|
||
|
|
docker compose -f "$COMPOSE" exec n8n \
|
||
|
|
n8n import:workflow --input="/imports/workflows/$(basename "$f")"
|
||
|
|
done
|
||
|
|
else
|
||
|
|
# Einzelne Datei
|
||
|
|
DEST="$ROOT/imports/workflows/$(basename "$SOURCE")"
|
||
|
|
cp "$SOURCE" "$DEST"
|
||
|
|
echo "[import-workflow] Importiere: $(basename "$SOURCE")"
|
||
|
|
docker compose -f "$COMPOSE" exec n8n \
|
||
|
|
n8n import:workflow --input="/imports/workflows/$(basename "$SOURCE")"
|
||
|
|
fi
|
||
|
|
|
||
|
|
echo "[import-workflow] Fertig."
|