#!/bin/sh

set -e
set -u

BASE="/srv/snapshot.debian.org"
PATH="/usr/bin:/bin:$BASE/bin"
export TZ=UTC
umask 022

CONFIG="$BASE/etc/snapshot.conf"


if [ "${2:-""}" = "-v" ] ; then
	verbose="--verbose"
else
	verbose=""
fi

archive="${1:-""}"

#IGNORES="--ignore /Archive-Update-in-Progress-stabile.debian.org --ignore /Archive-Update-Required-stabile.debian.org"
case "$archive" in
	"debian"|"debian-security"|"debian-volatile"|"debian-archive"|"debian-backports"|"debian-ports")
		force_slow_flag="$BASE/FORCE-SLOW-$archive"
		if [ -e "$force_slow_flag" ]; then
			quick=""
		else
			quick="--quick"
		fi
		snapshot import --config "$CONFIG" --archive "$archive" --path /srv/mirrors/"$archive" $quick $verbose
		rm -f "$force_slow_flag"
		#snapshot dumpall --config "$CONFIG"
		"$BASE"/code/misc/dump-tools/add-new-dumps-to-git -c "$CONFIG" -b "$BASE"/dumps-git

		ssh -i "$BASE"/.ssh/id-trigger -f stabile sync-incremental < /dev/null > /dev/null 2>&1 &

		snapshot index --config "$CONFIG" --quick $verbose

		ls -l "$BASE"/fuse/.ctrl-reload-database > /dev/null 2>&1 || true

		;;
	*)
		echo "No/Unknown archive given: archive" >&2
		exit 1
esac

