Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 20528b60c5 | |||
| c610c06a0e |
@@ -1,4 +1,3 @@
|
|||||||
cat << 'EOF' > backup.sh
|
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
@@ -101,22 +100,23 @@ docker_backup() {
|
|||||||
output_dir="/tmp/invoice_archive_${timestamp}"
|
output_dir="/tmp/invoice_archive_${timestamp}"
|
||||||
remote_base="${output_dir}/${BASE_NAME}"
|
remote_base="${output_dir}/${BASE_NAME}"
|
||||||
|
|
||||||
# Führt das Skript im Container mit dem exakten Pfad aus
|
docker compose -f "$COMPOSE_FILE" exec -T app mkdir -p "$output_dir"
|
||||||
docker compose -f "$COMPOSE_FILE" exec -T app mkdir -p "$output_dir" && \
|
|
||||||
docker compose -f "$COMPOSE_FILE" exec -T app python3 /app/Web/modules/inventarsystem/backup_invoices.py \
|
docker compose -f "$COMPOSE_FILE" exec -T app python3 /app/Web/modules/inventarsystem/backup_invoices.py \
|
||||||
--archive-dir "$output_dir" \
|
--archive-dir "$output_dir" \
|
||||||
--base-name "$BASE_NAME" && \
|
--base-name "$BASE_NAME"
|
||||||
mkdir -p "$INVOICE_ARCHIVE_DIR" && \
|
|
||||||
docker cp "$app_container":"${remote_base}.jsonl" "$INVOICE_ARCHIVE_DIR/" && \
|
|
||||||
docker cp "$app_container":"${remote_base}.csv" "$INVOICE_ARCHIVE_DIR/" && \
|
|
||||||
docker cp "$app_container":"${remote_base}.meta.json" "$INVOICE_ARCHIVE_DIR/"
|
|
||||||
|
|
||||||
local backup_status=$?
|
if docker compose -f "$COMPOSE_FILE" exec -T app test -f "${remote_base}.jsonl"; then
|
||||||
|
mkdir -p "$INVOICE_ARCHIVE_DIR"
|
||||||
|
docker cp "$app_container":"${remote_base}.jsonl" "$INVOICE_ARCHIVE_DIR/"
|
||||||
|
docker cp "$app_container":"${remote_base}.csv" "$INVOICE_ARCHIVE_DIR/"
|
||||||
|
docker cp "$app_container":"${remote_base}.meta.json" "$INVOICE_ARCHIVE_DIR/"
|
||||||
|
else
|
||||||
|
echo "Info: Keine Backup-Dateien zum Kopieren gefunden (Datenbank ist leer). Ueberspringe Dateitransfer."
|
||||||
|
fi
|
||||||
|
|
||||||
# Aufräumen (läuft unabhängig vom Erfolg des Backups)
|
|
||||||
docker compose -f "$COMPOSE_FILE" exec -T app rm -rf "$output_dir"
|
docker compose -f "$COMPOSE_FILE" exec -T app rm -rf "$output_dir"
|
||||||
|
return 0
|
||||||
return $backup_status
|
|
||||||
}
|
}
|
||||||
|
|
||||||
main() {
|
main() {
|
||||||
@@ -164,5 +164,4 @@ main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
parse_args "$@"
|
parse_args "$@"
|
||||||
main
|
main
|
||||||
EOF
|
|
||||||
Reference in New Issue
Block a user