summaryrefslogtreecommitdiffstats
path: root/TODO
diff options
context:
space:
mode:
authorHolger Levsen <holger@layer-acht.org>2015-08-30 17:44:45 +0200
committerHolger Levsen <holger@layer-acht.org>2015-08-30 17:44:45 +0200
commitefa47a2fa9eddf50d74eb766b5f78a7e70d1b18d (patch)
tree03e6903e231c20a0452b06d19abce02aef28cff4 /TODO
parentb6f90f74c953fb582862dcef23afc38bc691249a (diff)
downloadjenkins.debian.net-efa47a2fa9eddf50d74eb766b5f78a7e70d1b18d.tar.xz
reproducible: first version of build script which supports remote building (but dont use that feature yet)
Diffstat (limited to 'TODO')
-rw-r--r--TODO20
1 files changed, 1 insertions, 19 deletions
diff --git a/TODO b/TODO
index e5bfab2f..2a79ae35 100644
--- a/TODO
+++ b/TODO
@@ -247,12 +247,11 @@ properties:
* open questions:
** save build-host in build_duration table too? (and change to saving the time of a single build, not both combined)
-** i believe "reproducible_build.sh 1" should immediatly move /srv/workspace/reproducible-builds/$NODE/$SUITE/$ARCH/$PKG/$VERSION to /srv/workspace/reproducible-builds/pending/$SUITE/$ARCH/$PKG/$VERSION (on the node) so it's only build once and so that we can detect stale builds
** maintenance is general, cleanup of started but interrupted builds...
* reproducible_build.sh behaviour change:
** called without param: behave as always
-** called with a single param, "1" or "2": do first or second build (as specified below)
+** called with the first param being "1" or "2" (and two more params, srcpkg and suite): do first or second build
** called with two params: $node1 and $node2 where the build should happen.
* reproducible_build.sh (with two params) will be still always be run on the main node, that is the one holding reproducible.db, so jenkins.d.n atm
@@ -276,23 +275,6 @@ properties:
** this script is run on all nodes, but each run is triggered by a single job running on the main node (jenkins atm), so the results can be captured in /srv/reproducible-results/node-information/$NODE and then eg be used by reproducible_html_dashboard.sh to create the table with the differences between 1st and 2nd build...
** /srv/reproducible-results/node-information/$NODE could also be read by reproducible_build.sh to determine the dpkg-architecture a node is captable of building, but I think we also want that info to be encoded in the build job names, so probably there's no need to read it...
-* how to build remotely, some terms and remarks:
-** main node = the one running reproducible_build.sh with two params, so jenkins.d.n atm
-** node = generic term for node1 or node2
-** please note the difference between /srv/workspace/reproducible-builds and /srv/workspace/reproducible-results and /srv/workspace/reproducible-builds/$NODE and /srv/workspace/reproducible-builds/pending and whether these are on a node or on the main node.
-
-
-1. reproducible_build.sh on main node determines what to build,
-2. downloads the sources, and put's the sha256sum of the .dsc file into /srv/workspace/reproducible-builds/$NODE/$SUITE/$ARCH/$PKG/$VERSION on the main node
-3. throws the source files away
-4. scp's /srv/workspace/reproducible-builds/$NODE/$SUITE/$ARCH/$PKG/$VERSION on the node where this should be build 1st
-5. runs "ssh $NODE1 /srv/jenkins/bin/reproducible_build.sh 1"
-6. this causes a 1st build, which downloads the sources as specified in /srv/workspace/reproducible-builds/$NODE/$SUITE/$ARCH/$PKG/$VERSION and compares the sha256sum and builds it and copies the result to /srv/workspace/reproducible-results/$NODE/$SUITE/$ARCH/$PKG/$VERSION and exits.
-7. reproducible_build.sh on the main node then tries to scp the result from $NODE:/srv/workspace/reproducible-results/$NODE...
-8. reproducible_build.sh on the main node then triggers the 2nd build as the 1st.
-9. voila
-
-
==== reproducible Debian armhf
* then: armhf building - run the job on jenkins.d.n and build1 on one host and build2 on another and then run debbindiff on jenkins.d.n…