diff options
author | Holger Levsen <holger@layer-acht.org> | 2015-10-17 00:15:09 +0200 |
---|---|---|
committer | Holger Levsen <holger@layer-acht.org> | 2015-10-17 00:15:09 +0200 |
commit | 1b5f590d2eb0da9d22048a8de4aec94957dd976f (patch) | |
tree | 8fbc72effc3335e57811f689c30be6ff6edda9a2 | |
parent | 0d26aab123485864777d3dc50850f5d2f7faa853 (diff) | |
download | jenkins.debian.net-1b5f590d2eb0da9d22048a8de4aec94957dd976f.tar.xz |
reproducible arch: briefly explain what this is about
-rw-r--r-- | TODO | 10 | ||||
-rwxr-xr-x | bin/reproducible_common.sh | 11 | ||||
-rwxr-xr-x | bin/reproducible_html_archlinux.sh | 2 |
3 files changed, 16 insertions, 7 deletions
@@ -293,16 +293,16 @@ properties: ==== reproducible Arch Linux * create a job, to bootstrap an arch schroot: done. needs to be made idempotent. +** BOOTSTRAP_TAR_GZ=2015.08.01/archlinux-bootstrap-2015.08.01-x86_64.tar.gz needs to be replaced with a future proof filename +** 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' -* created another job (WIP), to build a single package +* arch build.sh: ** introduce variations: USER, TZ, LANG, LC_ALL, umask +** '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 ** idea: reschedule reverse build depends too * more random notes: -** BOOTSTRAP_TAR_GZ=2015.08.01/archlinux-bootstrap-2015.08.01-x86_64.tar.gz needs to be replaced with a future proof filename -** download bootstrap.tar.gz sig and verify -** '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' ** patch pacman to create .buildinfo files - or better: wait ** rename arch scripts and jobs to archlinux diff --git a/bin/reproducible_common.sh b/bin/reproducible_common.sh index 567e88a5..baa9bba5 100755 --- a/bin/reproducible_common.sh +++ b/bin/reproducible_common.sh @@ -283,8 +283,15 @@ write_page_intro() { local PROJECTURL="https://github.com/freebsd/freebsd.git" local BUILD_ENVIRONMENT=", which via ssh triggers a build on a FreeBSD 10.1 system" local BRANCH="release/10.2.0" + elif [ "$1" = "Archlinux" ] ; then + write_page " <em>Reproducible $1</em> is an effort to apply this to $1. Thus $1 packages are build twice, with a few varitations added and then the resulting packages from the two builds are then compared using <a href=\"https://tracker.debian.org/diffoscope\">diffoscope</a>. Please note that the toolchain is not varied at all as the rebuild happens on exactly the same system. More variations are expected to be seen in the wild.</p>" + local PROJECTNAME="Archlinux" + fi + if [ "$1" != "Archlinux" ] ; then + write_page " <p>There is a weekly run <a href=\"https://jenkins.debian.net/view/reproducible/job/reproducible_$PROJECTNAME/\">jenkins job</a> to test the <code>$BRANCH</code> branch of <a href=\"$PROJECTURL\">$PROJECTNAME.git</a>. Currently this job is triggered more often though, because this is still under development and brand new. The jenkins job is running <a href=\"http://anonscm.debian.org/cgit/qa/jenkins.debian.net.git/tree/bin/reproducible_$PROJECTNAME.sh\">reproducible_$PROJECTNAME.sh</a>$BUILD_ENVIRONMENT and this script is solely responsible for creating this page. Feel invited to join <code>#debian-reproducible</code> (on irc.oftc.net) to request job runs whenever sensible. Patches and other <a href=\"mailto:reproducible-builds@lists.alioth.debian.org\">feedback</a> are very much appreciated - if you want to help, please start by looking at the <a href=\"$JENKINS_URL/userContent/todo.html#_reproducible_$(echo $1|tr '[:upper:]' '[:lower:]')\">ToDo list for $1</a>, you might find something easy to contribute.</p>" + else + write_page " <p>This is brand new and the test setup needs to be explained here.</p>" fi - write_page " <p>There is a weekly run <a href=\"https://jenkins.debian.net/view/reproducible/job/reproducible_$PROJECTNAME/\">jenkins job</a> to test the <code>$BRANCH</code> branch of <a href=\"$PROJECTURL\">$PROJECTNAME.git</a>. Currently this job is triggered more often though, because this is still under development and brand new. The jenkins job is running <a href=\"http://anonscm.debian.org/cgit/qa/jenkins.debian.net.git/tree/bin/reproducible_$PROJECTNAME.sh\">reproducible_$PROJECTNAME.sh</a>$BUILD_ENVIRONMENT and this script is solely responsible for creating this page. Feel invited to join <code>#debian-reproducible</code> (on irc.oftc.net) to request job runs whenever sensible. Patches and other <a href=\"mailto:reproducible-builds@lists.alioth.debian.org\">feedback</a> are very much appreciated - if you want to help, please start by looking at the <a href=\"$JENKINS_URL/userContent/todo.html#_reproducible_$(echo $1|tr '[:upper:]' '[:lower:]')\">ToDo list for $1</a>, you might find something easy to contribute.</p>" } write_page_footer() { @@ -295,6 +302,8 @@ write_page_footer() { write_page "NetBSD® is a registered trademark of The NetBSD Foundation, Inc." elif [ "$1" = "FreeBSD" ] ; then write_page "FreeBSD is a registered trademark of The FreeBSD Foundation. The FreeBSD logo and The Power to Serve are trademarks of The FreeBSD Foundation." + elif [ "$1" = "Archlinux" ] ; then + write_page "The <a href=\"https://www.archlinux.org\">Arch Linux</a> name and logo are recognized trademarks. Some rights reserved. The registered trademark Linux® is used pursuant to a sublicense from LMI, the exclusive licensee of Linus Torvalds, owner of the mark on a world-wide basis." fi write_page "</p></body></html>" } diff --git a/bin/reproducible_html_archlinux.sh b/bin/reproducible_html_archlinux.sh index b1a99152..345547c6 100755 --- a/bin/reproducible_html_archlinux.sh +++ b/bin/reproducible_html_archlinux.sh @@ -25,8 +25,8 @@ cat > $PAGE <<- EOF <title>Repoducible Archlinux ?</title> </head> <body> - <p>This is work in progress and brand new…</p> EOF +write_page_intro Archlinux write_page "<table><tr><th>source package</th><th>test date</th><th>1st build log</th><th>2nd build log</th><th>diffoscope output for binary packages</th></tr>" for PKG in $(find $ARCHBASE/* -maxdepth 1 -type d -exec basename {} \;) ; do write_page " <tr>" |