Package: jenkins.debian.org
Severity: wishlist
Tags: patch

Hi!

Attached is the following:

  commit 4de26dd2adcabd2c59da4b9ab51784cc6d9cc99e
  Author: Chris Lamb <la...@debian.org>
  Date:   Sun Mar 11 22:55:44 2018 -0700
  
      reproducible Debian: Also generate and save JSON output
      from diffoscope to make automatic categorisation easier.
  
   bin/reproducible_build.sh | 10 +++++++++-
   1 file changed, 9 insertions(+), 1 deletion(-)


You can also pull from the "generate-diffoscope-json" branch via 
https://github.com/lamby/jenkins.debian.net:

  https://github.com/lamby/jenkins.debian.net/commits/generate-diffoscope-json


Best wishes,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      la...@debian.org / chris-lamb.co.uk
       `-
>From 4de26dd2adcabd2c59da4b9ab51784cc6d9cc99e Mon Sep 17 00:00:00 2001
From: Chris Lamb <la...@debian.org>
Date: Sun, 11 Mar 2018 22:55:44 -0700
Subject: [PATCH] reproducible Debian: Also generate and save JSON output from
 diffoscope to make automatic categorisation easier.

---
 bin/reproducible_build.sh | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/bin/reproducible_build.sh b/bin/reproducible_build.sh
index 96acd93d..7b89bc7f 100755
--- a/bin/reproducible_build.sh
+++ b/bin/reproducible_build.sh
@@ -50,6 +50,7 @@ exit_early_if_debian_is_broken() {
 create_results_dirs() {
 	mkdir -vp $DEBIAN_BASE/dbd/${SUITE}/${ARCH}
 	mkdir -vp $DEBIAN_BASE/dbdtxt/${SUITE}/${ARCH}
+	mkdir -vp $DEBIAN_BASE/dbdjson/${SUITE}/${ARCH}
 	mkdir -vp $DEBIAN_BASE/logs/${SUITE}/${ARCH}
 	mkdir -vp $DEBIAN_BASE/logdiffs/${SUITE}/${ARCH}
 	mkdir -vp $DEBIAN_BASE/rbuild/${SUITE}/${ARCH}
@@ -300,6 +301,10 @@ handle_ftbr() {
 		mv ./$DBDTXT $DEBIAN_BASE/dbdtxt/$SUITE/$ARCH/
 		gzip -9n $DEBIAN_BASE/dbdtxt/$SUITE/$ARCH/$DBDTXT
 	fi
+	if [ -f ./$DBDJSON ] ; then
+		mv ./$DBDJSON $DEBIAN_BASE/dbdjson/$SUITE/$ARCH/
+		gzip -9n $DEBIAN_BASE/dbdjson/$SUITE/$ARCH/$DBDJSON
+	fi
 	calculate_build_duration
 	update_db_and_html "unreproducible"
 }
@@ -396,6 +401,7 @@ call_diffoscope_on_changes_files() {
 		-- sh -c "export TMPDIR=$TEMP ; diffoscope \
 			--html $TMPDIR/${DBDREPORT} \
 			--text $TMPDIR/$DBDTXT \
+			--json $TMPDIR/$DBDJSON \
 			--profile=- \
 			$TMPDIR/b1/${CHANGES} \
 			$TMPDIR/b2/${CHANGES}" \
@@ -403,7 +409,7 @@ call_diffoscope_on_changes_files() {
 	RESULT=$?
 	LOG_RESULT=$(grep '^E: 15binfmt: update-binfmts: unable to open' $TMPLOG || true)
 	if [ ! -z "$LOG_RESULT" ] ; then
-		rm -f $TMPLOG $TMPDIR/${DBDREPORT} $TMPDIR/$DBDTXT
+		rm -f $TMPLOG $TMPDIR/${DBDREPORT} $TMPDIR/$DBDTXT $TMPDIR/$DBDJSON
 		echo "$(date -u) - schroot jenkins-reproducible-${DBDSUITE}-diffoscope not available, will sleep 2min and retry."
 		sleep 2m
 		# remember to also modify the retry diffoscope call 15 lines above
@@ -413,6 +419,7 @@ call_diffoscope_on_changes_files() {
 			-- sh -c "export TMPDIR=$TEMP ; diffoscope \
 				--html $TMPDIR/${DBDREPORT} \
 				--text $TMPDIR/$DBDTXT \
+				--json $TMPDIR/$DBDJSON \
 				--profile=- \
 				$TMPDIR/b1/${CHANGES} \
 				$TMPDIR/b2/${CHANGES}" \
@@ -562,6 +569,7 @@ get_source_package() {
 	EVERSION="$(echo $VERSION | cut -d ':' -f2)"  # EPOCH_FREE_VERSION is too long
 	DBDREPORT="${SRCPACKAGE}_${EVERSION}.diffoscope.html"
 	DBDTXT="${SRCPACKAGE}_${EVERSION}.diffoscope.txt"
+	DBDJSON="${SRCPACKAGE}_${EVERSION}.diffoscope.json"
 	BUILDINFO="${SRCPACKAGE}_${EVERSION}_${ARCH}.buildinfo"
 	BUILDINFO_SIGNED="${BUILDINFO}.asc"
 
-- 
2.16.2

Reply via email to