Files

20 lines
883 B
Bash
Raw Permalink Normal View History

#!/bin/bash
set -euo pipefail
mkdir -p /factorio/config /factorio/upgrade-backups
# A startup snapshot preserves the pre-upgrade saves. Keep the last five starts.
if compgen -G '/factorio/saves/*.zip' >/dev/null; then
backup="/factorio/upgrade-backups/$(date -u +%Y%m%dT%H%M%S)"
mkdir -p "$backup"
cp -a /factorio/saves/*.zip "$backup/"
mapfile -t old < <(find /factorio/upgrade-backups -mindepth 1 -maxdepth 1 -type d | sort -r | tail -n +6)
for path in "${old[@]}"; do rm -rf -- "$path"; done
fi
cp /settings/server-settings.json /factorio/config/server-settings.json
cp /settings/server-adminlist.json /factorio/config/server-adminlist.json
cp /credentials/rcon-password /factorio/config/rconpw
chmod 600 /factorio/config/rconpw
# Upstream uses bash xtrace, which would otherwise log the RCON password.
exec 3>/dev/null
export BASH_XTRACEFD=3
exec /docker-entrypoint.sh