Commit adfa7fb1 authored by Holger Levsen's avatar Holger Levsen
Browse files

r.d.n.: do pkgsync via systemd service with timer for riscv64

parent b7358b4e
Loading
Loading
Loading
Loading
+0 −6
Original line number Diff line number Diff line
pkg sync timers
	run every 6h +- 30min, 2.5h after dinstall
	https://www.freedesktop.org/software/systemd/man/latest/systemd.timer.html#RandomizedDelaySec=
	+ a big AccuracySec=


rebuilderd backup
 unit or script which stops and disables the rebuilded service 
  and which woud be run by cron...
+9 −19
Original line number Diff line number Diff line
@@ -6,11 +6,12 @@
set -e
set -o pipefail		# see eg http://petereisentraut.blogspot.com/2010/11/pipefail.html

ARCH=$1
JQQUERY='.[] | select(.architecture != "all")'
#
# choose correct port
#
case $1 in
case $ARCH in
	all)		PORT=8489
			JQQUERY='.[] | select(.architecture = "all")'
			;;
@@ -29,21 +30,10 @@ case $1 in
			;;
esac

ARCH=$1
shift

# REBUILDERD_COOKIE_PATH could be set by service
export REBUILDERD_COOKIE_PATH=/srv/rebuilderd/$ARCH/.auth-cookie
while true ; do
# REBUILDERD_COOKIE_PATH is be set by service
/opt/usr/bin/rebuildctl -H http://127.0.0.1:$PORT pkgs sync-profile \
	--sync-config /opt/etc/rebuilderd-sync-${ARCH}.conf debian-main \
	--print-json \
	| jq "$JQQUERY" \
	| jq -s \
	| /opt/usr/bin/rebuildctl -H http://127.0.0.1:$PORT pkgs sync-stdin debian main
	ST=$(shuf -i 150-210 -n 1)
	echo sleeping ${ST}m now
	sleep ${ST}m
done

+9 −0
Original line number Diff line number Diff line
[Unit]
Description=Periodically import packages to be rebuild by rebuilderd

[Service]
Environment="REBUILDERD_COOKIE_PATH=/srv/rebuilderd/%i/.auth-cookie"
ExecStart=/srv/jenkins/bin/rebuilderd_pkgsync.sh %i
RemainAfterExit=no
Type=oneshot
+10 −0
Original line number Diff line number Diff line
[Unit]
Description=Periodically import packages to be rebuild by rebuilderd

[Timer]
# dinstall runs 1|7|13|19:52 UTC - see https://salsa.debian.org/ftp-team/dak/blob/master/config/debian/crontab
OnCalendar=3,9,15,21
RandomizedDelaySec=1200

[Install]
WantedBy=timers.target
+9 −2
Original line number Diff line number Diff line
@@ -780,6 +780,12 @@ deploy_rebuilderd_services() {
						sudo ln -sf rebuilderd@.service rebuilderd@${i}.service
						sudo systemctl enable rebuilderd@${i}.service
					done
				elif [ "$1" = "pkgsync" ] ; then
					for i in $2 ; do
						sudo ln -sf rebuilderd-pkgsync@.service rebuilderd-pkgsync@${i}.service
						sudo ln -sf rebuilderd-pkgsync@.timer rebuilderd-pkgsync@${i}.timer
						sudo systemctl enable rebuilderd-pkgsync@${i}.service
					done
				fi
				cd -
}
@@ -798,6 +804,7 @@ case $HOSTNAME in
	riscv64*)				deploy_rebuilderd_services worker 3
						;;
	osuosl5*)				deploy_rebuilderd_services rebuilderd "all amd64 arm64 armhf i386 riscv64"
						deploy_rebuilderd_services pkgsync                               "riscv64"
						;;
	*) 					;;
esac