[Qa-jenkins-scm] [jenkins.debian.net] 06/06: reproducible coreboot: build with no payloads

Holger Levsen holger at moszumanska.debian.org
Wed Jun 10 17:12:33 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 e0a362d6a20f202573e368d149360ddbe387517b
Author: Holger Levsen <holger at layer-acht.org>
Date:   Wed Jun 10 19:12:05 2015 +0200

    reproducible coreboot: build with no payloads
---
 TODO                          |  5 +++--
 bin/reproducible_coreboot.sh  |  6 +++---
 bin/reproducible_scheduler.py | 39 +++++++++++++++++++++++++++++++++------
 3 files changed, 39 insertions(+), 11 deletions(-)

diff --git a/TODO b/TODO
index 4d619f3..d5aae09 100644
--- a/TODO
+++ b/TODO
@@ -235,9 +235,10 @@ egrep -R -l '(debbindiff had trouble comparing|maybe there is still )' /var/lib/
 
 * coreboot
 ** add more variations: domain+hostname, uid+gid, USER, UTS namespace
-** split into two jobs, one to build the toolchain, the other to test, keep the git repo and update it. run both jobs weekly.
+** split into two jobs? one to build the toolchain, the other to test, keep the git repo and update it. run both jobs weekly.
 *** call script with "init" or "run-tests"
-*** not sure how to best keep the git repo and the toolchain (not on tmpfs) while building in tmpfs...
+*** not sure how to best keep the git repo and the toolchain (not on tmpfs) while building in tmpfs... maybe just do it in one job...
+** build the docs?
 
 * openwrt
 ----
diff --git a/bin/reproducible_coreboot.sh b/bin/reproducible_coreboot.sh
index 7b41f8d..a925a5e 100755
--- a/bin/reproducible_coreboot.sh
+++ b/bin/reproducible_coreboot.sh
@@ -146,7 +146,7 @@ sed -i "s#cpus=1#cpus=$NUM_CPU#" util/abuild/abuild
 sed -i 's#USE_XARGS=1#USE_XARGS=0#g' util/abuild/abuild
 # actually build everything
 nice ionice -c 3 \
-	bash util/abuild/abuild || true # don't fail the full job just because some targets fail
+	bash util/abuild/abuild --payloads none || true # don't fail the full job just because some targets fail
 
 cd coreboot-builds
 for i in * ; do
@@ -175,7 +175,7 @@ NEW_NUM_CPU=$(echo $NUM_CPU-1|bc)
 sed -i "s#cpus=$NUM_CPU#cpus=$NEW_NUM_CPU#" util/abuild/abuild
 nice ionice -c 3 \
 	linux64 --uname-2.6 \
-	bash util/abuild/abuild || true # don't fail the full job just because some targets fail
+	bash util/abuild/abuild --payloads none || true # don't fail the full job just because some targets fail
 
 # reset environment to default values again
 export LANG="en_GB.UTF-8"
@@ -225,7 +225,7 @@ cat > $PAGE <<- EOF
 EOF
 write_page "       <h1>Reproducible Coreboot</h1>"
 write_page "       <p><em>Reproducible builds</em> enable anyone to reproduce bit by bit identical binary packages from a given source, so that anyone can verify that a given binary derived from the source it was said to be derived. There is a lot more information about <a href=\"https://wiki.debian.org/ReproducibleBuilds\">reproducible builds on the Debian wiki</a> and on <a href=\"https://reproducible.debian.net\">https://reproducible.debian.net</a>. The wiki has a lot more information [...]
-write_page "        <em>Reproducible Coreboot</em> is an effort to apply this to coreboot. Thus each coreboot.rom is build twice, with a few varitations added and then those two ROMs are compared using <a href=\"https://tracker.debian.org/debbindiff\">debbindiff</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>"
+write_page "        <em>Reproducible Coreboot</em> is an effort to apply this to coreboot. Thus each coreboot.rom is build twice (without payloads), with a few varitations added and then those two ROMs are compared using <a href=\"https://tracker.debian.org/debbindiff\">debbindiff</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>"
 write_page "       <p>There is a monthly run <a href=\"https://jenkins.debian.net/view/reproducible/job/reproducible_coreboot/\">jenkins job</a> to test the <code>master</code> branch of <a href=\"https://review.coreboot.org/p/coreboot.git\">coreboot.git</a>. Currently this job is triggered more often though, because this is still under development and brand new. The jenkins job is simply running <a href=\"http://anonscm.debian.org/cgit/qa/jenkins.debian.net.git/tree/bin/reproducible_cor [...]
 write_page "<p><pre>"
 echo -n "$COREBOOT" >> $PAGE
diff --git a/bin/reproducible_scheduler.py b/bin/reproducible_scheduler.py
index 85e3d60..4a60fe0 100755
--- a/bin/reproducible_scheduler.py
+++ b/bin/reproducible_scheduler.py
@@ -304,12 +304,39 @@ def scheduler():
     # update the scheduled page
     generate_schedule()  # from reproducible_html_indexes
     # build the kgb message text
-    message = 'Scheduled in ' + '+'.join(SUITES) + ': ' + \
-              add_up_numbers(untested) + ' new and untested packages, ' + \
-              add_up_numbers(new) + ' packages with new versions and ' + \
-              add_up_numbers(old) + ' old packages with the same version, ' + \
-              'for ' + str(total) + ' or ' + \
-              '+'.join([str(now_queued_here[x]) for x in SUITES]) + ' packages in total.'
+    message = 'Scheduled in ' + '+'.join(SUITES) + ': '
+    msgs = 0
+    if add_up_numbers(untested) != '0':
+      msg_untested = add_up_numbers(untested) + ' new and untested packages'
+      msgs += 1
+    else:
+      msg_untested = ''
+    if add_up_numbers(new) != '0':
+      msg_versions = add_up_numbers(new) + ' packages with new versions'
+      msgs += 1
+    else:
+      msg_versions = ''
+    if add_up_numbers(old) != '0':
+      msg_old = add_up_numbers(old) + ' old packages with the same version'
+      msgs += 1
+    else:
+      msg_old = ''
+    if len(msg_untested) != 0
+      message += msg_untested
+      if msgs == 2:
+        message += ' and'
+      else:
+        message += ','
+    if len(msg_versions) != 0
+      message += msg_versions
+      if msgs == 3:
+        message += ' and'
+      else:
+        message += ','
+    if len(msg_old) != 0
+      message += msg_old + ','
+    message += 'for ' + str(total) + ' or ' + \
+               '+'.join([str(now_queued_here[x]) for x in SUITES]) + ' packages in total.'
     log.info('\n\n\n')
     log.info(message)
     # only notifiy irc if there were packages scheduled in any suite

-- 
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