[Qa-jenkins-scm] [Git][qa/jenkins.debian.net][master] reproducible Archlinux: create pages per state

Holger Levsen gitlab at salsa.debian.org
Wed Sep 26 00:14:23 BST 2018


Holger Levsen pushed to branch master at Debian QA / jenkins.debian.net


Commits:
5a7a797c by Holger Levsen at 2018-09-25T23:14:13Z
reproducible Archlinux: create pages per state

Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -


1 changed file:

- bin/reproducible_html_archlinux.sh


Changes:

=====================================
bin/reproducible_html_archlinux.sh
=====================================
@@ -14,7 +14,7 @@ common_init "$@"
 #
 # analyse results to create the webpage
 #
-echo "$(date -u) - starting to analyse build results."
+echo "$(date -u) - starting."
 DATE=$(date -u +'%Y-%m-%d')
 YESTERDAY=$(date '+%Y-%m-%d' -d "-1 day")
 MEMBERS_FTBFS="0 1 2 3 4"
@@ -156,26 +156,24 @@ archlinux_page_header(){
 	      <div class="page-content">
 	
 	EOF
-	write_page_intro 'Arch Linux'
-	write_variation_table 'Arch Linux'
 }
 
 archlinux_page_footer(){
 	write_page "</div></div>"
 	write_page_footer 'Arch Linux'
 	echo "$(date -u) - enjoy $REPRODUCIBLE_URL/archlinux/$PAGE"
+	publish_page archlinux
 }
 
 single_main_page(){
 	#
 	# write out the actual webpage
 	#
-	cd $ARCHBASE
 	PAGE=archlinux.html
-	archlinux_page_header $PAGE
+	archlinux_page_header
+	write_page_intro 'Arch Linux'
 	write_page "    <table><tr><th>repository</th><th>all source packages</th><th>reproducible packages</th><th>unreproducible packages</th><th>packages failing to build</th><th>packages in depwait state</th><th>packages download problems</th><th>blacklisted</th><th>unknown state</th></tr>"
 	cat $HTML_REPOSTATS >> $PAGE
-	rm $HTML_REPOSTATS > /dev/null
 	write_page "    </table>"
 	# include graphs
 	write_page '<p style="clear:both;">'
@@ -184,32 +182,49 @@ single_main_page(){
 	done
 	write_page '</p><p style="clear:both;"><center>'
 	write_page "<a href=\"/archlinux/archlinux.png\"><img src=\"/archlinux/archlinux.png\" alt=\"total Arch Linux stats\"></a></p>"
-	archlinux_page_footer $PAGE
+	write_variation_table 'Arch Linux'
+	archlinux_page_footer
 }
 
 repository_pages(){
 	for REPOSITORY in $ARCHLINUX_REPOS ; do
-		cd $ARCHBASE
 		PAGE=archlinux_$REPOSITORY.html
 		echo "$(date -u) - starting to write page for $REPOSITORY'."
-		archlinux_page_header $PAGE
-		# prepare stats per repository
+		archlinux_page_header
+		write_page "    <table><tr><th>repository</th><th>source package</th><th>version</th><th>test result</th><th>test date<br />test duration</th><th>1st build log<br />2nd build log</th></tr>"
 		SUITE="archlinux_$REPOSITORY"
 		REPO_PKGS=$(query_db "SELECT s.name FROM sources AS s JOIN results AS r ON s.id=r.package_id WHERE s.architecture='x86_64' AND s.suite='$SUITE' ORDER BY r.status")
-		# packages table header
-		write_page "    <table><tr><th>repository</th><th>source package</th><th>version</th><th>test result</th><th>test date<br />test duration</th><th>1st build log<br />2nd build log</th></tr>"
-		# output all HTML snipplets
 		for PKG in $REPO_PKGS ; do
-			cat $REPOSITORY/$PKG/pkg.html >> $PAGE 2>/dev/null || true
+			cat $ARCHBASE/$REPOSITORY/$PKG/pkg.html >> $PAGE 2>/dev/null || true
 		done
 		write_page "    </table>"
-		archlinux_page_footer $PAGE
+		archlinux_page_footer
 	done
 }
 
+state_pages(){
+	for STATE in FTBFS FTBR DEPWAIT 404 GOOD BLACKLISTED UNKNOWN ; do
+		PAGE=archlinux_state_$STATE.html
+		echo "$(date -u) - starting to write page for state $STATE'."
+		archlinux_page_header
+		write_page "    <table><tr><th>repository</th><th>source package</th><th>version</th><th>test result</th><th>test date<br />test duration</th><th>1st build log<br />2nd build log</th></tr>"
+		for REPOSITORY in $ARCHLINUX_REPOS ; do
+			SUITE="archlinux_$REPOSITORY"
+			STATE_PKGS=$(query_db "SELECT s.name FROM sources AS s JOIN results AS r ON s.id=r.package_id WHERE s.architecture='x86_64' AND s.suite='$SUITE' AND r.status LIKE '$STATE%' ORDER BY s.suite,r.status")
+			for PKG in $STATE_PKGS ; do
+				cat $ARCHBASE/$REPOSITORY/$PKG/pkg.html >> $PAGE 2>/dev/null || true
+			done
+		done
+		write_page "    </table>"
+		archlinux_page_footer
+	done
+}
 
 repostats
 single_main_page
 repository_pages
+state_pages
+rm $HTML_REPOSTATS > /dev/null
+echo "$(date -u) - all done."
 
 # vim: set sw=0 noet :



View it on GitLab: https://salsa.debian.org/qa/jenkins.debian.net/commit/5a7a797ccc4d79eefa8da7d0cab560f411afa3be

-- 
View it on GitLab: https://salsa.debian.org/qa/jenkins.debian.net/commit/5a7a797ccc4d79eefa8da7d0cab560f411afa3be
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/qa-jenkins-scm/attachments/20180925/26398b9c/attachment-0001.html>


More information about the Qa-jenkins-scm mailing list