summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Levsen <holger@layer-acht.org>2017-11-21 21:08:54 +0000
committerHolger Levsen <holger@layer-acht.org>2017-11-21 21:08:54 +0000
commitd43174a98c41bc6a91028f574a51acc6a2ea46e9 (patch)
tree06b95e6ea2bfdc6137dca79c8b7d1bcea80d6e7d
parent0e382bfd6fb24f1f082a3e3f56dd0c5aea91d8d4 (diff)
downloadjenkins.debian.net-d43174a98c41bc6a91028f574a51acc6a2ea46e9.tar.xz
reproducible Arch Linux: also do one build 398 days in the future
Signed-off-by: Holger Levsen <holger@layer-acht.org>
-rw-r--r--TODO7
-rwxr-xr-xbin/reproducible_build_archlinux_pkg.sh17
-rwxr-xr-xbin/reproducible_common.sh3
3 files changed, 22 insertions, 5 deletions
diff --git a/TODO b/TODO
index bf75579b..9b31de98 100644
--- a/TODO
+++ b/TODO
@@ -322,6 +322,13 @@ See link:https://jenkins.debian.net/userContent/about.html["about jenkins.debian
==== reproducible Arch Linux
+* cleanup below…
+* build in /srv/workspace instead of /tmp
+* do 2nd build on pb4
+* < Foxboron> the multilib builds are failing because multilib-devel isn't installed. Thats the base-devel for multilib packages.
+** -> disable multilib for now?
+* extract .BUILDINFO files and submit them to buildinfo.debian.net^wbuildinfo.reproducible-builds.org
+
* https://bugs.archlinux.org/task/50086 - pacman doesnt create reproducible packages yet
* describe archlinux setup…!
* maintenance job:
diff --git a/bin/reproducible_build_archlinux_pkg.sh b/bin/reproducible_build_archlinux_pkg.sh
index 89ca4e98..ed082dd1 100755
--- a/bin/reproducible_build_archlinux_pkg.sh
+++ b/bin/reproducible_build_archlinux_pkg.sh
@@ -222,7 +222,7 @@ second_build() {
remote_build() {
local BUILDNR=$1
- local NODE=$ARCHLINUX_BUILD_NODE
+ local NODE=$2
local FQDN=$NODE.debian.net
local PORT=22
set +e
@@ -322,10 +322,21 @@ SRCPACKAGE=""
choose_package
# build package twice
mkdir b1 b2
-remote_build 1
+# currently there are two Arch Linux build nodes… let's keep things simple
+N1="profitbricks-build3-amd64"
+N2="profitbricks-build4-amd64"
+# if random number between 0 and 1 is greater than 1…
+if [ $(( ( $RANDOM % 2 ) )) -gt 0 ] ; then
+ NODE1=$N1
+ NODE2=$N2
+else
+ NODE1=$N2
+ NODE2=$N1
+fi
+remote_build $NODE1
# only do the 2nd build if the 1st produced results
if [ ! -z "$(ls $TMPDIR/b1/$SRCPACKAGE/*.pkg.tar.xz 2>/dev/null|| true)" ] ; then
- remote_build 2
+ remote_build $NODE2
cd $TMPDIR/b1/$SRCPACKAGE
for ARTIFACT in *.pkg.tar.xz ; do
[ -f $ARTIFACT ] || continue
diff --git a/bin/reproducible_common.sh b/bin/reproducible_common.sh
index fa6324bd..490c00af 100755
--- a/bin/reproducible_common.sh
+++ b/bin/reproducible_common.sh
@@ -47,7 +47,6 @@ BUILD_ENV_VARS="ARCH NUM_CPU CPU_MODEL DATETIME KERNEL" # these also needs to be
USERTAGS="toolchain infrastructure timestamps fileordering buildpath username hostname uname randomness buildinfo cpu signatures environment umask ftbfs locale"
# common settings for testing Arch Linux
-ARCHLINUX_BUILD_NODE=profitbricks-build3-amd64
ARCHLINUX_REPOS="core extra multilib community"
ARCHLINUX_PKGS=/srv/reproducible-results/archlinux_pkgs
@@ -464,7 +463,7 @@ write_variation_table() {
else
write_page "<tr><td>CPU type</td><td>$(cat /proc/cpuinfo|grep 'model name'|head -1|cut -d ":" -f2-)</td><td>same for both builds</td></tr>"
write_page "<tr><td>/bin/sh</td><td colspan=\"2\"> is not yet varied between rebuilds of $1.</td></tr>"
- if [ "$1" != "FreeBSD" ] ; then
+ if [ "$1" != "FreeBSD" ] && [ "$1" != "Arch Linux" ] ; then
write_page "<tr><td>year, month, date</td><td>today ($DATE)</td><td>same for both builds (currently, work in progress)</td></tr>"
else
write_page "<tr><td>year, month, date</td><td>today ($DATE)</td><td>398 days in the future ($FUTURE)</td></tr>"