diff options
-rw-r--r-- | TODO | 2 | ||||
-rwxr-xr-x | bin/reproducible_build_arch_pkg.sh | 7 | ||||
-rwxr-xr-x | bin/reproducible_common.sh | 19 |
3 files changed, 15 insertions, 13 deletions
@@ -293,7 +293,7 @@ properties: ** needs to download bootstrap.tar.gz sig and verify * use regular maintenace job to update the arch schroot: 'schroot --directory /tmp -c source:jenkins-reproducible-arch -u root -- pacman -Syu --noconfirm' * arch build.sh: -** introduce variations: USER, TZ, LANG, LC_ALL, umask +** introduce variations: USER ** 'makepkg --skippgpcheck' should be replaced by 'makepkg' and 'echo "keyserver-options auto-key-retrieve" >> ~/.gnupg/gpg.conf' *** this should make this obselete: 'schroot --directory /tmp -c source:jenkins-reproducible-arch -- grep ^validpgpkeys= $PKG/PKGBUILD|cut -d "'" -f2|xargs schroot --directory /tmp -c source:jenkins-reproducible-arch -- gpg --recv-keys' * create a working scheduler job diff --git a/bin/reproducible_build_arch_pkg.sh b/bin/reproducible_build_arch_pkg.sh index bb6e16a5..1b2c8539 100755 --- a/bin/reproducible_build_arch_pkg.sh +++ b/bin/reproducible_build_arch_pkg.sh @@ -52,6 +52,8 @@ first_build() { echo "MAKEFLAGS=-j$NUM_CPU" | schroot --run-session -c $SESSION --directory /tmp -u root -- tee -a /etc/makepkg.conf schroot --run-session -c $SESSION --directory /tmp -- mkdir $BUILDDIR schroot --run-session -c $SESSION --directory /tmp -- cp -r /var/abs/core/$SRCPACKAGE $BUILDDIR/ + # just set timezone in the 1st build + echo 'export TZ="/usr/share/zoneinfo/Etc/GMT+12"' | schroot --run-session -c $SESSION --directory /tmp -- tee -a /var/lib/jenkins/.bashrc schroot --run-session -c $SESSION --directory $BUILDDIR/$SRCPACKAGE -- bash -c makepkg --syncdeps --noconfirm --skippgpcheck 2>&1 | tee -a $LOG schroot --end-session -c $SESSION if ! "$DEBUG" ; then set +x ; fi @@ -72,6 +74,11 @@ second_build() { echo "MAKEFLAGS=-j$NEW_NUM_CPU" | schroot --run-session -c $SESSION --directory /tmp -u root -- tee -a /etc/makepkg.conf schroot --run-session -c $SESSION --directory /tmp -- mkdir $BUILDDIR schroot --run-session -c $SESSION --directory /tmp -- cp -r /var/abs/core/$SRCPACKAGE $BUILDDIR/ + # add more variations in the 2nd build: TZ, LANG, LC_ALL, umask + echo 'export TZ="/usr/share/zoneinfo/Etc/GMT-14"' | schroot --run-session -c $SESSION --directory /tmp -- tee -a /var/lib/jenkins/.bashrc + echo 'export LANG="fr_CH.UTF-8"' | schroot --run-session -c $SESSION --directory /tmp -- tee -a /var/lib/jenkins/.bashrc + echo 'export LC_ALL="fr_CH.UTF-8' | schroot --run-session -c $SESSION --directory /tmp -- tee -a /var/lib/jenkins/.bashrc + echo 'umask 0002' | schroot --run-session -c $SESSION --directory /tmp -- tee -a /var/lib/jenkins/.bashrc schroot --run-session -c $SESSION --directory $BUILDDIR/$SRCPACKAGE -- bash -c makepkg --syncdeps --noconfirm --skippgpcheck 2>&1 | tee -a $LOG schroot --end-session -c $SESSION if ! "$DEBUG" ; then set +x ; fi diff --git a/bin/reproducible_common.sh b/bin/reproducible_common.sh index 81e58191..63fce79b 100755 --- a/bin/reproducible_common.sh +++ b/bin/reproducible_common.sh @@ -326,14 +326,13 @@ write_explaination_table() { if [ "$1" != "FreeBSD" ] && [ "$1" != "Archlinux" ] ; then write_page "<tr><td>env CAPTURE_ENVIRONMENT</td><td><em>not set</em></td><td>CAPTURE_ENVIRONMENT=\"I capture the environment\"</td></tr>" fi - if [ "$1" != "Archlinux" ] ; then - write_page "<tr><td>env TZ</td><td>TZ=\"/usr/share/zoneinfo/Etc/GMT+12\"</td><td>TZ=\"/usr/share/zoneinfo/Etc/GMT-14\"</td></tr>" - write_page "<tr><td>env LANG</td><td>LANG=\"en_GB.UTF-8\"</td><td>LANG=\"fr_CH.UTF-8\"</td></tr>" - write_page "<tr><td>env LC_ALL</td><td><em>not set</em></td><td>LC_ALL=\"fr_CH.UTF-8\"</td></tr>" + write_page "<tr><td>env TZ</td><td>TZ=\"/usr/share/zoneinfo/Etc/GMT+12\"</td><td>TZ=\"/usr/share/zoneinfo/Etc/GMT-14\"</td></tr>" + if [ "$1" = "Archlinux" ] ; then + write_page "<tr><td>env LANG</td><td>LANG<em>not set</em></td><td>LANG=\"fr_CH.UTF-8\"</td></tr>" else - write_page "<tr><td>env TZ</td><td colspan=\"2\"> is not yet varied between rebuilds of $1.</td></tr>" - write_page "<tr><td>env LANG</td><td colspan=\"2\"> is not yet varied between rebuilds of $1.</td></tr>" - write_page "<tr><td>env LC_ALL</td><td colspan=\"2\"> is not yet varied between rebuilds of $1.</td></tr>" + write_page "<tr><td>env LANG</td><td>LANG=\"en_GB.UTF-8\"</td><td>LANG=\"fr_CH.UTF-8\"</td></tr>" + fi + write_page "<tr><td>env LC_ALL</td><td><em>not set</em></td><td>LC_ALL=\"fr_CH.UTF-8\"</td></tr>" fi if [ "$1" != "FreeBSD" ] && [ "$1" != "Archlinux" ] ; then write_page "<tr><td>env PATH</td><td>PATH=\"/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:\"</td><td>PATH=\"/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path\"</td></tr>" @@ -364,11 +363,7 @@ write_explaination_table() { else write_page "<tr><td>kernel version</td><td colspan=\"2\"> is not yet varied between rebuilds of $1.</td></tr>" fi - if [ "$1" != "Archlinux" ] ; then - write_page "<tr><td>umask</td><td>0022<td>0002</td><tr>" - else - write_page "<tr><td>umask</td><td colspan=\"2\"> is not yet varied between rebuilds of $1.</td></tr>" - fi + write_page "<tr><td>umask</td><td>0022<td>0002</td><tr>" else write_page "<tr><td>FreeBSD kernel version</td><td colspan=\"2\"> is not yet varied between rebuilds of $1.</td></tr>" write_page "<tr><td>umask</td><td colspan=\"2\"> is not yet varied between rebuilds of $1.</td><tr>" |