[Qa-jenkins-scm] [jenkins.debian.net] 01/01: reproducible Arch Linux: remove all rb-unknown-1 pseudo version handling, drop crazy scheduler, schedule up to 300 known versions
Holger Levsen
holger at layer-acht.org
Thu Dec 7 14:18:19 UTC 2017
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 bd8629cbbf3562dc0626ae0296501995376e9dcf
Author: Holger Levsen <holger at layer-acht.org>
Date: Thu Dec 7 14:18:13 2017 +0000
reproducible Arch Linux: remove all rb-unknown-1 pseudo version handling, drop crazy scheduler, schedule up to 300 known versions
Signed-off-by: Holger Levsen <holger at layer-acht.org>
---
bin/reproducible_archlinux_scheduler.sh | 34 +++++++++------------------------
1 file changed, 9 insertions(+), 25 deletions(-)
diff --git a/bin/reproducible_archlinux_scheduler.sh b/bin/reproducible_archlinux_scheduler.sh
index fb0cc32..b403fd6 100755
--- a/bin/reproducible_archlinux_scheduler.sh
+++ b/bin/reproducible_archlinux_scheduler.sh
@@ -43,23 +43,20 @@ update_archlinux_repositories() {
echo "$(date -u ) - scheduling new package $REPO/$pkgbase... "
mkdir -p $BASE/archlinux/$REPO/$pkgbase
touch $BASE/archlinux/$REPO/$pkgbase/pkg.needs_build
- elif [ -z "$(ls $BASE/archlinux/$REPO/$pkgbase/)" ] ; then
+ elif [ ! -f $BASE/archlinux/$REPO/$pkgbase/pkg.needs_build ] ; then
+ VERSION=$(cat $BASE/archlinux/$REPO/$pkgbase/pkg.version 2>/dev/null)
+ if [ "$(schroot --run-session -c $SESSION --directory /var/tmp -- vercmp $version $VERSION)" = "1" ] ; then
+ # schedule packages where an updated version is availble
+ echo $REPO/$pkgbase >> $UPDATED
+ echo "$(date -u ) - we know about $REPO/$pkgbase $VERSION, but the repo has $version, so rescheduling... "
+ touch $BASE/archlinux/$REPO/$pkgbase/pkg.needs_build
+ fi
+ else
# schedule packages we already know about
# (but only until 300 packages are scheduled in total)
if [ $(find $BASE/archlinux/ -name pkg.needs_build | wc -l ) -le 300 ] ; then
touch $BASE/archlinux/$REPO/$pkgbase/pkg.needs_build
fi
- else
- # if version isn't temporary pseudo version...
- VERSION=$(cat $BASE/archlinux/$REPO/$pkgbase/pkg.version 2>/dev/null || echo 0.rb-unknown-1)
- if [ "$VERSION" != "0.rb-unknown-1" ] && [ ! -f $BASE/archlinux/$REPO/$pkgbase/pkg.needs_build ] ; then
- if [ "$(schroot --run-session -c $SESSION --directory /var/tmp -- vercmp $version $VERSION)" = "1" ] ; then
- # schedule packages where an updated version is availble
- echo $REPO/$pkgbase >> $UPDATED
- echo "$(date -u ) - we know about $REPO/$pkgbase $VERSION, but the repo has $version, so rescheduling... "
- touch $BASE/archlinux/$REPO/$pkgbase/pkg.needs_build
- fi
- fi
fi
printf '%s %s\n' "$pkgbase" "$version" >> $TMPPKGLIST
done
@@ -85,17 +82,4 @@ echo "$(date -u ) - Updating Arch Linux repositories."
update_archlinux_repositories
echo "$(date -u ) - Done updating Arch Linux repositories."
-# crazy cleanup unknowns scheduler,
-# makes sure that 100 packages with version 0.rb-unknown-1 are scheduled...
-# (so can be removed when we cleared this backlog)
-cd $BASE/archlinux
-echo "$(date -u) - currently $(find $BASE/archlinux/ -name pkg.needs_build | wc -l ) packages scheduled."
-for i in $(grep -B 2 0.rb-unknown-1 archlinux.html | xargs echo | sed -s 's# -- #\n#g' | cut -d '>' -f2-|cut -d '<' -f1-3|sed -s 's#</td> <td>#/#g'|head -100) ; do
- #if [ -z "$(grep UNKNOWN $i/pkg.state)" ] ; then
- touch $i/pkg.needs_build
- rm $i/pkg.version || true
- #fi
-done
-echo "$(date -u) - After running the crazy scheduler, $(find $BASE/archlinux/ -name pkg.needs_build | wc -l ) packages scheduled."
-
# vim: set sw=0 noet :
--
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