[Qa-jenkins-scm] [jenkins.debian.net] 02/02: reproducible archlinux: stop using hardcoded list of core packages, update the list every 2 days

Holger Levsen holger at moszumanska.debian.org
Thu Dec 10 11:46:40 UTC 2015


This is an automated email from the git hooks/post-receive script.

holger pushed a commit to branch master
in repository jenkins.debian.net.

commit fb343c4e5f700071a5238e21a3d198a476f26d47
Author: Holger Levsen <holger at layer-acht.org>
Date:   Thu Dec 10 12:42:38 2015 +0100

    reproducible archlinux: stop using hardcoded list of core packages, update the list every 2 days
---
 bin/reproducible_build_archlinux_pkg.sh | 23 ++++++++++++++++-------
 1 file changed, 16 insertions(+), 7 deletions(-)

diff --git a/bin/reproducible_build_archlinux_pkg.sh b/bin/reproducible_build_archlinux_pkg.sh
index 7fea6dc..70ce14b 100755
--- a/bin/reproducible_build_archlinux_pkg.sh
+++ b/bin/reproducible_build_archlinux_pkg.sh
@@ -27,6 +27,7 @@ cleanup_all() {
 		rm $TMPDIR -r
 		echo "$(date -u) - $TMPDIR deleted."
 	fi
+	rm -f $DUMMY > /dev/null || true
 }
 
 handle_remote_error() {
@@ -39,13 +40,18 @@ handle_remote_error() {
 }
 
 choose_package() {
-	#SESSION="arch-scheduler-$RANDOM"
-	#schroot --begin-session --session-name=$SESSION -c jenkins-reproducible-arch
-	#PACKAGES="$(schroot --run-session -c $SESSION --directory /var/abs/core -- ls -1|sort -R|xargs echo)"
-	#schroot --end-session -c $SESSION
-	#SRCPACKAGE=""
-	PACKAGES="acl archlinux-keyring attr autoconf automake b43-fwcutter bash binutils bison bridge-utils btrfs-progs bzip2 ca-certificates ca-certificates-cacert coreutils cracklib crda cronie cryptsetup curl dash db dbus dhcpcd dialog diffutils ding-libs dmraid dnssec-anchors dosfstools e2fsprogs ed efibootmgr efivar elfutils expat fakeroot file filesystem findutils flex gawk gcc gdbm gettext glib2 glibc gmp gnupg gnutls gpgme gpm grep groff grub gssproxy gzip hdparm hwids iana-etc ifensla [...]
-	for PKG in $PACKAGES ; do
+	# every 2 days we check for new archlinux packages
+	touch -d "$(date -d '2 days ago' '+%Y-%m-%d') 00:00 UTC"
+	if [ ! -f $ARCHLINUX_PKGS ] || [ $DUMMY -nt $ARCHLINUX_PKGS ] ; then
+		local SESSION="archlinux-scheduler-$RANDOM"
+		schroot --begin-session --session-name=$SESSION -c jenkins-reproducible-arch
+		schroot --run-session -c $SESSION --directory /var/abs/core -- ls -1|sort -R|xargs echo > $ARCHLINUX_PKGS
+		schroot --end-session -c $SESSION
+	fi
+	rm $DUMMY > /dev/null
+	echo "$(date -u ) - these packages are known to us:"
+	cat $ARCHLINUX_PKGS
+	for PKG in $(cat $ARCHLINUX_PKGS) ; do
 		# build package if it has never build or at least a week ago
 		if [ ! -d $BASE/archlinux/$PKG ] || [ ! -z $(find $BASE/archlinux/ -name $PKG -mtime +6) ] ; then
 			SRCPACKAGE=$PKG
@@ -174,6 +180,8 @@ cd $TMPDIR
 DATE=$(date -u +'%Y-%m-%d %H:%M')
 START=$(date +'%s')
 BUILDER="${JOB_NAME#reproducible_builder_}/${BUILD_ID}"
+ARCHLINUX_PKGS=/srv/reproducible-results/.archlinux_pkgs
+DUMMY=$(mktemp -t archlinux-dummy-XXXXXXXX)
 
 #
 # determine mode
@@ -204,6 +212,7 @@ fi
 #
 delay_start # randomize start times
 # first, we need to choose a package…
+SRCPACKAGE=""
 choose_package
 # build package twice
 mkdir b1 b2

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/qa/jenkins.debian.net.git



More information about the Qa-jenkins-scm mailing list