[Qa-jenkins-scm] [jenkins.debian.net] 01/01: reproducible debian armhf: also test experimental

Holger Levsen holger at moszumanska.debian.org
Fri Dec 18 19:47:40 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 1269c81ffaeb537053318fed6469a51f935bf3b2
Author: Holger Levsen <holger at layer-acht.org>
Date:   Fri Dec 18 20:47:16 2015 +0100

    reproducible debian armhf: also test experimental
---
 bin/reproducible_blacklist.sh      |  4 ++--
 bin/reproducible_common.py         |  2 +-
 bin/reproducible_common.sh         |  4 ++--
 bin/reproducible_html_dashboard.sh | 17 +++++++++--------
 bin/reproducible_html_indexes.py   |  4 ++--
 bin/reproducible_html_notes.py     |  2 +-
 bin/reproducible_html_packages.py  |  6 +++---
 bin/reproducible_maintenance.sh    |  4 ++--
 bin/reproducible_scheduler.py      | 16 ++++++++--------
 9 files changed, 30 insertions(+), 29 deletions(-)

diff --git a/bin/reproducible_blacklist.sh b/bin/reproducible_blacklist.sh
index 355aa7b..a22b48f 100755
--- a/bin/reproducible_blacklist.sh
+++ b/bin/reproducible_blacklist.sh
@@ -69,8 +69,8 @@ case $SUITE in
 	sid) 	echo "WARNING: sid has been renamed to unstable."
 		SUITE=unstable
 		;;
-	unstable) ;;
-	testing|experimental)	if [ "$ARCH" = "armhf" ] ; then echo "Only unstable is tested for $ARCH, exiting." ; exit 0 ; fi
+	unstable|experimental) ;;
+	testing)	if [ "$ARCH" = "armhf" ] ; then echo "Testing is not yet tested on $ARCH, exiting." ; exit 0 ; fi
 				;;
 	*)	echo "$SUITE is not a valid suite".
 		explain_syntax
diff --git a/bin/reproducible_common.py b/bin/reproducible_common.py
index 47dc4fe..e4aa900 100755
--- a/bin/reproducible_common.py
+++ b/bin/reproducible_common.py
@@ -299,7 +299,7 @@ def _gen_links(suite, arch):
             continue
         html += link[1].format(suite=suite, arch=arch) + '\n'
     for i in SUITES:  # suite links
-        if arch == 'armhf' and i != 'unstable':
+        if arch == 'armhf' and i == 'testing':
             continue
         html += '<li><a href="/' + i + '/index_suite_' + arch + '_stats.html">suite: ' + i + '</a></li>'
     if arch == 'amd64':
diff --git a/bin/reproducible_common.sh b/bin/reproducible_common.sh
index f623706..2dfdca7 100755
--- a/bin/reproducible_common.sh
+++ b/bin/reproducible_common.sh
@@ -253,8 +253,8 @@ write_page_header() {
 		done
 		if [ "$TARGET" = "suite_stats" ] ; then
 			for i in $SUITES ; do
-				if [ "$i" != "unstable" ] && [ "$ARCH" = "armhf" ] ; then
-					# only unstable is tested on armhf atm
+				if [ "$i" = "testing" ] && [ "$ARCH" = "armhf" ] ; then
+					# only unstable and experimental are tested on armhf atm
 					continue
 				fi
 				write_page "<li><a href=\"/$i/index_suite_${ARCH}_stats.html\">suite: $i</a></li>"
diff --git a/bin/reproducible_html_dashboard.sh b/bin/reproducible_html_dashboard.sh
index c0784fb..a621193 100755
--- a/bin/reproducible_html_dashboard.sh
+++ b/bin/reproducible_html_dashboard.sh
@@ -294,12 +294,12 @@ write_build_performance_stats() {
 	fi
 	write_page "<table class=\"main\"><tr><th colspan=\"2\">Build statistics for $ARCH</th></tr>"
 	AGE_UNSTABLE=$(sqlite3 -init ${INIT} ${PACKAGES_DB} "SELECT CAST(max(oldest_reproducible, oldest_unreproducible, oldest_FTBFS) AS INTEGER) FROM ${TABLE[2]} WHERE suite='unstable' AND architecture='$ARCH' AND datum='$DATE'")
+	AGE_EXPERIMENTAL=$(sqlite3 -init ${INIT} ${PACKAGES_DB} "SELECT CAST(max(oldest_reproducible, oldest_unreproducible, oldest_FTBFS) AS INTEGER) FROM ${TABLE[2]} WHERE suite='experimental' AND architecture='$ARCH' AND datum='$DATE'")
 	if [ "$ARCH" != "armhf" ] ; then
 		AGE_TESTING=$(sqlite3 -init ${INIT} ${PACKAGES_DB} "SELECT CAST(max(oldest_reproducible, oldest_unreproducible, oldest_FTBFS) AS INTEGER) FROM ${TABLE[2]} WHERE suite='testing' AND architecture='$ARCH' AND datum='$DATE'")
-		AGE_EXPERIMENTAL=$(sqlite3 -init ${INIT} ${PACKAGES_DB} "SELECT CAST(max(oldest_reproducible, oldest_unreproducible, oldest_FTBFS) AS INTEGER) FROM ${TABLE[2]} WHERE suite='experimental' AND architecture='$ARCH' AND datum='$DATE'")
 		write_page "<tr><td>oldest $ARCH build result in testing / unstable / experimental</td><td>$AGE_TESTING / $AGE_UNSTABLE / $AGE_EXPERIMENTAL days</td></tr>"
 	else
-		write_page "<tr><td>oldest $ARCH build result in unstable </td><td>$AGE_UNSTABLE days</td></tr>"
+		write_page "<tr><td>oldest $ARCH build result in unstable / experimental </td><td>$AGE_UNSTABLE / $AGE_EXPERIMENTAL days</td></tr>"
 	fi
 	RESULT=$(sqlite3 -init ${INIT} ${PACKAGES_DB} "SELECT CAST(AVG(r.build_duration) AS INTEGER) FROM results AS r JOIN sources AS s ON r.package_id=s.id WHERE r.build_duration!='' AND r.build_duration!='0' AND r.build_date LIKE '%$DATE%' AND s.architecture='$ARCH'")
 	MIN=$(echo $RESULT/60|bc)
@@ -324,7 +324,7 @@ write_suite_table() {
 	write_page "<p>"
 	write_page "<table class=\"main\"><tr><th>suite</th><th>all sources packages</th><th>reproducible packages</th><th>unreproducible packages</th><th>packages failing to build</th><th>other packages</th></tr>"
 	for SUITE in $SUITES ; do
-		if [ "$ARCH" = "armhf" ] && [ "$SUITE" != "unstable" ] ; then
+		if [ "$ARCH" = "armhf" ] && [ "$SUITE" = "testing" ] ; then
 			continue
 		fi
 		gather_suite_arch_stats
@@ -494,10 +494,11 @@ create_dashboard_page() {
 	write_page "</p><p style=\"clear:both;\">"
 	write_page " <hr />"
 	write_suite_table
-	SUITE="unstable"
-	write_page " <a href=\"/$SUITE/index_suite_${ARCH}_stats.html\"><img src=\"/$SUITE/$ARCH/${TABLE[0]}.png\" class=\"overview\" alt=\"$SUITE/$ARCH stats\"></a>"
+	for SUITE in unstable experimental ; do
+		write_page " <a href=\"/$SUITE/index_suite_${ARCH}_stats.html\"><img src=\"/$SUITE/$ARCH/${TABLE[0]}.png\" class=\"halfview\" alt=\"$SUITE/$ARCH stats\"></a>"
+		write_page " <a href=\"/$SUITE/$ARCH/${TABLE[2]}.png\"><img src=\"/$SUITE/$ARCH/${TABLE[2]}.png\" class=\"halfview\" alt=\"age of oldest reproducible build result in $SUITE/$ARCH\"></a>"
+	done
 	write_page " <a href=\"/${TABLE[1]}_$ARCH.png\"><img src=\"/${TABLE[1]}_$ARCH.png\" class=\"overview\" alt=\"${MAINLABEL[$i]}\"></a>"
-	write_page " <a href=\"/$SUITE/$ARCH/${TABLE[2]}.png\"><img src=\"/$SUITE/$ARCH/${TABLE[2]}.png\" class=\"overview\" alt=\"age of oldest reproducible build result in $SUITE/$ARCH\"></a>"
 	write_build_performance_stats
 	write_page "</p><p style=\"clear:both;\">"
 	write_page " <hr />"
@@ -517,8 +518,8 @@ update_bug_stats
 update_notes_stats
 for ARCH in ${ARCHS} ; do
 	for SUITE in $SUITES ; do
-		if [ "$SUITE" != "unstable" ] && [ "$ARCH" = "armhf" ] ; then
-			# we only test unstable on armhf atm
+		if [ "$SUITE" = "testing" ] && [ "$ARCH" = "armhf" ] ; then
+			# we only test unstable and experimental on armhf atm
 			continue
 		fi
 		update_suite_arch_stats
diff --git a/bin/reproducible_html_indexes.py b/bin/reproducible_html_indexes.py
index e79c04c..6923798 100755
--- a/bin/reproducible_html_indexes.py
+++ b/bin/reproducible_html_indexes.py
@@ -512,7 +512,7 @@ def build_page(page, suite=None, arch=None):
             else:
                 for suite in SUITES:
                     for arch in ARCHS:
-                        if arch == 'armhf' and suite != 'unstable':
+                        if arch == 'armhf' and suite == 'testing':
                             continue
                         log.debug('global page §' + section['db_status'] +
                                   ' in ' + page + ' for ' + suite + '/' + arch)
@@ -539,7 +539,7 @@ bugs = get_bugs() # this variable should not be global, else merely importing _h
 if __name__ == '__main__':
     for arch in ARCHS:
         for suite in SUITES:
-            if arch == 'armhf' and suite != 'unstable':
+            if arch == 'armhf' and suite == 'testing':
                 continue
             for page in pages.keys():
                 if 'global' not in pages[page] or not pages[page]['global']:
diff --git a/bin/reproducible_html_notes.py b/bin/reproducible_html_notes.py
index ec44ae1..320f75a 100755
--- a/bin/reproducible_html_notes.py
+++ b/bin/reproducible_html_notes.py
@@ -439,7 +439,7 @@ if __name__ == '__main__':
     gen_packages_html([Package(x) for x in notes])
     for suite in SUITES:
         for arch in ARCHS:
-            if arch == 'armhf' and suite != 'unstable':
+            if arch == 'armhf' and suite == 'testing':
                 continue
             build_page('notes', suite, arch)
             build_page('no_notes', suite, arch)
diff --git a/bin/reproducible_html_packages.py b/bin/reproducible_html_packages.py
index 52aca92..7d6db71 100755
--- a/bin/reproducible_html_packages.py
+++ b/bin/reproducible_html_packages.py
@@ -172,7 +172,7 @@ def gen_suites_links(package, current_suite, current_arch):
         html += tab + '<li>{}\n'.format(a)
         html += tab + '<ul class="children">\n'
         for s in SUITES:
-            if a == 'armhf' and s != 'unstable':
+            if a == 'armhf' and s == 'testing':
                 continue
             status = package.get_status(s, a)
             if not status:  # The package is not available in that suite/arch
@@ -249,7 +249,7 @@ def gen_packages_html(packages, no_clean=False):
         pkg = package.name
         for suite in SUITES:
             for arch in ARCHS:
-                if arch == 'armhf' and suite != 'unstable':
+                if arch == 'armhf' and suite == 'testing':
                     continue
                 status = package.get_status(suite, arch)
                 version = package.get_tested_version(suite, arch)
@@ -306,7 +306,7 @@ def gen_all_rb_pkg_pages(no_clean=False):
 def purge_old_pages():
     for suite in SUITES:
         for arch in ARCHS:
-            if arch == 'armhf' and suite != 'unstable':
+            if arch == 'armhf' and suite == 'testing':
                 continue
             log.info('Removing old pages from ' + suite + '/' + arch + '.')
             try:
diff --git a/bin/reproducible_maintenance.sh b/bin/reproducible_maintenance.sh
index 8f8a2b3..ba777dd 100755
--- a/bin/reproducible_maintenance.sh
+++ b/bin/reproducible_maintenance.sh
@@ -51,7 +51,7 @@ if [ ! -z "$http_proxy" ] ; then
 	pbuilder_http_proxy="--http-proxy $http_proxy"
 fi
 for s in $SUITES ; do
-	if [ "$ARCH" = "armhf" ] && [ "$s" != "unstable" ] ; then
+	if [ "$ARCH" = "armhf" ] && [ "$s" = "testing" ] ; then
 		continue
 	fi
 	#
@@ -177,7 +177,7 @@ if [ "$HOSTNAME" = "$MAINNODE" ] ; then
 		REASON="maintenance reschedule: reschedule builds which failed due to network errors"
 		for SUITE in $(echo $FAILED_BUILDS | sed "s# #\n#g" | cut -d "/" -f8 | sort -u) ; do
 			for ARCH in $(echo $FAILED_BUILDS | sed "s# #\n#g" | cut -d "/" -f9 | sort -u) ; do
-				if [ "$ARCH" = "armhf" ] && [ "$SUITE" != "unstable" ] ; then
+				if [ "$ARCH" = "armhf" ] && [ "$SUITE" = "testing" ] ; then
 					continue
 				fi
 				CANDIDATES=$(for PKG in $(echo $FAILED_BUILDS | sed "s# #\n#g" | grep "/$SUITE/$ARCH/" | cut -d "/" -f10 | cut -d "_" -f1) ; do echo "$PKG" ; done)
diff --git a/bin/reproducible_scheduler.py b/bin/reproducible_scheduler.py
index d9fd9a9..003d3ad 100755
--- a/bin/reproducible_scheduler.py
+++ b/bin/reproducible_scheduler.py
@@ -73,7 +73,7 @@ LIMITS = {
         'armhf': {
             'testing': {'*': 0},
             'unstable': {'*': 250},
-            'experimental': {'*': 0},
+            'experimental': {'*': 250},
         },
     },
     'new': {
@@ -85,7 +85,7 @@ LIMITS = {
         'armhf': {
             'testing': {1: (100, 0), 2: (200, 0), '*': 0},
             'unstable': {1: (100, 75), 2: (200, 60), '*': 45},
-            'experimental': {1: (100, 0), 2: (200, 0), '*': 0},
+            'experimental': {1: (100, 75), 2: (200, 60), '*': 45},
         },
     },
     'ftbfs+depwait': {
@@ -97,7 +97,7 @@ LIMITS = {
         'armhf': {
             'testing': {1: (250, 0), 2: (350, 0), '*': 0},
             'unstable': {1: (250, 12), 2: (350, 6), '*': 0},
-            'experimental': {1: (250, 0), 2: (350, 0), '*': 0},
+            'experimental': {1: (250, 12), 2: (350, 6), '*': 0},
         }
     },
     'old': {
@@ -109,7 +109,7 @@ LIMITS = {
         'armhf': {
             'testing': {1: (300, 0), 2: (400, 0), '*': 0},
             'unstable': {1: (300, 250), 2: (400, 200), '*': 0},
-            'experimental': {1: (300, 0), 2: (400, 0), '*': 0},
+            'experimental': {1: (300, 20), 2: (400, 10), '*': 0},
         }
     }
 }
@@ -172,7 +172,7 @@ def update_sources(suite):
     sources = lzma.decompress(urlopen(remotefile).read()).decode('utf8')
     log.debug('\tdownloaded')
     for arch in ARCHS:
-        if arch == 'armhf' and suite != 'unstable':
+        if arch == 'armhf' and suite == 'testing':
             continue
         else:
             log.info('Updating sources db for %s/%s...', suite, arch)
@@ -313,7 +313,7 @@ def add_up_numbers(packages, arch):
     if packages_sum == '0+0+0':
         packages_sum = '0'
     elif arch == 'armhf':
-        packages_sum = str(len(packages['unstable']))
+        packages_sum = str(len(packages['unstable']))+'+'+str(len(packages['experimental']))
     return packages_sum
 
 
@@ -497,7 +497,7 @@ def scheduler(arch):
         if suite not in priotized_suite_order:
             priotized_suite_order.append(suite)
     for suite in priotized_suite_order:
-        if arch == 'armhf' and suite != 'unstable':
+        if arch == 'armhf' and suite == 'testing':
             now_queued_here[suite] = 0
             continue
         query = 'SELECT count(*) ' \
@@ -519,7 +519,7 @@ def scheduler(arch):
     if arch != 'armhf':
         message = 'Scheduled in ' + '+'.join(SUITES) + ' (' + arch + '): '
     else:
-        message = 'Scheduled in unstable (' + arch + '): '
+        message = 'Scheduled in unstable+experimental (' + arch + '): '
     if msg_untested:
         message += msg_untested
         message += ' and ' if msg_new and not msg_old_ftbfs_and_depwait and not msg_old else ''

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