From a9ef6cca87d28cd33c220343af33b584473e0a67 Mon Sep 17 00:00:00 2001 From: Holger Levsen Date: Sat, 5 Dec 2015 20:28:33 +0100 Subject: start planning a tool to enable users to debug job runs --- TODO | 11 ++++++++++- bin/reproducible_build.sh | 4 ++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/TODO b/TODO index 9e6ddf34..83664ac9 100644 --- a/TODO +++ b/TODO @@ -124,13 +124,22 @@ properties: *** publish forked livescreenshot plugin and send pull request for h01ger's bugfix *** see ssh://git.debian.org/git/users/holger/livescreenshot-plugin.git and 0b407b70025 there +=== debugging job runs made easy + +---- + < h01ger> | i think the jenkins-debug-job script should be a python script + < h01ger> | and j-j-b or another yaml parser can supply job configuration knowledge to that script + < h01ger> | \o/ + < h01ger> | and that python script can also first determine whether the environment is as needed for the job, and if not, complain verbosely+helpfully and exit +---- + == Improve existing tests === reproducible builds This is about Debian, below are more todo entries for other projects… -* make reproducible_build.sh rock solid again and get rid off "set -x # # to debug diffopscpe/schroot problems" +* make reproducible_build.sh rock solid again and get rid off "set -x # # to debug diffoscoppe/schroot problems" ** add check if package to be build has been blacklisted since scheduling and abort ** fix: "DIFFOSCOPE='E: Failed to change to directory /tmp: Permission denied' - maybe by making sure the cause is gone… https://jenkins.debian.net/job/reproducible_builder_amd64_14/909/ is an example for that *** make maintenance job detect and reschedule logs with: 'E: 10mount: error: Directory '.*' does not exist' diff --git a/bin/reproducible_build.sh b/bin/reproducible_build.sh index 238b95c3..5c21ce31 100755 --- a/bin/reproducible_build.sh +++ b/bin/reproducible_build.sh @@ -155,7 +155,7 @@ diff_copy_buildlogs() { elif [ $FTBFS -eq 0 ] ; then echo "Warning: No second build log, what happened?" | tee -a $RBUILDLOG fi - set -x # # to debug diffopscpe/schroot problems + set -x # # to debug diffoscope/schroot problems echo "Compressing the 1st log..." gzip -9cvn b1/build.log > $BASE/logs/$SUITE/$ARCH/${SRCPACKAGE}_${EVERSION}.build1.log.gz chmod 644 $BASE/logs/$SUITE/$ARCH/${SRCPACKAGE}_${EVERSION}.build1.log.gz @@ -330,7 +330,7 @@ call_diffoscope_on_changes_files() { # there is no extra diffoscope-schroot for experimental ( because we specical case ghc enough already ) DBDSUITE="unstable" fi - set -x # to debug diffopscpe/schroot problems + set -x # to debug diffoscope/schroot problems # TEMP is recognized by python's tempfile module to create temp stuff inside local TEMP=$(mktemp --tmpdir=$TMPDIR -d dbd-tmp-XXXXXXX) DIFFOSCOPE="$(schroot --directory $TMPDIR -c source:jenkins-reproducible-${DBDSUITE}-diffoscope diffoscope -- --version 2>&1 || true)" -- cgit v1.2.3-54-g00ecf