[Git][qa/jenkins.debian.net][master] 2 commits: rdn: add support for graphing via v1 api from pull-184

Holger Levsen (@holger) gitlab at salsa.debian.org
Sun Aug 24 19:54:23 BST 2025



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


Commits:
14145e77 by Holger Levsen at 2025-08-24T20:47:35+02:00
rdn: add support for graphing via v1 api from pull-184

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

- - - - -
c232de0b by Jochen Sprickerhof at 2025-08-24T20:47:57+02:00
rdn: fix quotation

(cherry picked from commit 22364085dcd245c67a033bf68d798ae1db012a78)
Signed-off-by: Holger Levsen <holger at layer-acht.org>

- - - - -


3 changed files:

- bin/rebuilderd_graph.sh
- bin/rebuilderd_stats.py
- hosts/osuosl5-amd64/etc/cron.d/rebuilderd


Changes:

=====================================
bin/rebuilderd_graph.sh
=====================================
@@ -29,7 +29,6 @@ init_csv() {
 		echo "; date, good, unknown, bad" > $CSV
 	fi
 }
-init_csv
 
 #
 # update .csv if needed
@@ -42,12 +41,23 @@ update_csv_api0() {
 		echo "$TODAY, $GOOD, $UNKNOWN, $BAD" >> $CSV
 	fi
 }
-update_csv_api0
+
+update_csv_api1() {
+	if ! grep -q $TODAY $CSV ; then
+		TMPFILE=$(mktemp)
+		curl https://reproduce.debian.net/$ARCH/api/v1/dashboard?release=$RELEASE > $TMPFILE
+		GOOD=$(cat $TMPFILE |jq '.["good"]')
+		BAD=$(cat $TMPFILE |jq '.["bad"]')
+		UNKNOWN=$(cat $TMPFILE |jq '.["unknown"]')
+		echo "$TODAY, $GOOD, $UNKNOWN, $BAD" >> $CSV
+		rm $TMPFILE
+	fi
+}
 
 #
 # update png if needed
 #
-update_png_api0() {
+update_png_api() {
 	if [ ! -f $PNG ] || [ $DUMMY_FILE -nt $PNG ] ; then
 		XLABEL="reproduced arch:$ARCH packages in trixie"
 		GOOD=$(tail -1 $CSV | tr -d , | cut -d ' ' -f2)
@@ -59,7 +69,27 @@ update_png_api0() {
 		/srv/jenkins/bin/make_graph.py $CSV $PNG 3 "$XLABEL" "$YLABEL" $WIDTH $HEIGHT
 	fi
 }
-update_png_api0
+
+#
+# main
+#
+case $ARCH in
+	amd64-pull184)	if [ -z "$2" ] ; then
+				echo "need a release too."
+				exit 1
+			fi
+			RELEASE=$2
+			CSV=/srv/rebuilderd/$ARCH/stats/$RELEASE/rebuilderd.csv
+			PNG=/srv/rebuilderd/$ARCH/stats/$RELEASE/rb.png
+			init_csv
+			update_csv_api1
+			update_png_api
+			;;
+	*)		init_csv
+			update_csv_api0
+			update_png_api
+			;;
+esac
 
 #
 # cleanup


=====================================
bin/rebuilderd_stats.py
=====================================
@@ -151,7 +151,7 @@ def main() -> None:
     total = 0
     filter_release = ""
     if args.release:
-        filter_release = f"AND s.release = {args.release}"
+        filter_release = f"AND s.release = '{args.release}'"
     if cu.execute("SELECT COUNT(name) FROM sqlite_schema WHERE name = 'rebuild_artifacts'").fetchall()[0][0] == 1:
         sql = (
             "SELECT a.name, s.name, r.id, l.build_log, d.diffoscope_log"


=====================================
hosts/osuosl5-amd64/etc/cron.d/rebuilderd
=====================================
@@ -1,5 +1,5 @@
 MAILTO=root
 42 */3 * * * rebuilderd for arch in all amd64 arm64 armel armhf i386 ppc64el riscv64 ; do mkdir -p /srv/rebuilderd/$arch/stats/ && /srv/jenkins/bin/rebuilderd_stats.py $arch /srv/rebuilderd/$arch/rebuilderd.db --cache /srv/rebuilderd/$arch/stats/cache.pickle /srv/rebuilderd/$arch/stats/ ; done
-0 */3 * * * rebuilderd for arch in amd64-pull184 ; do for release in trixie trixie-proposed-updates trixie-updates trixie-security forky unstable ; do mkdir -p /srv/rebuilderd/$arch/stats/$release && /srv/jenkins/bin/rebuilderd_stats.py --release $release $arch /srv/rebuilderd/$arch/rebuilderd.db --cache /srv/rebuilderd/$arch/stats/cache.pickle /srv/rebuilderd/$arch/stats/$release ; done ; done
-23 0,6,12,18 * * * rebuilderd for arch in all amd64 amd64-pull184 arm64 armel armhf i386 ppc64el riscv64 ; do /srv/jenkins/bin/rebuilderd_graph.sh $arch ; done
+0 */3 * * * rebuilderd for arch in amd64-pull184 ; do for release in trixie trixie-proposed-updates trixie-updates trixie-security forky unstable ; do mkdir -p /srv/rebuilderd/$arch/stats/$release && /srv/jenkins/bin/rebuilderd_stats.py --release $release $arch /srv/rebuilderd/$arch/rebuilderd.db --cache /srv/rebuilderd/$arch/stats/cache.pickle /srv/rebuilderd/$arch/stats/$release ; /srv/jenkins/bin/rebuilderd_graph.sh $arch $release ; done ; done
+23 0,6,12,18 * * * rebuilderd for arch in all amd64 arm64 armel armhf i386 ppc64el riscv64 ; do /srv/jenkins/bin/rebuilderd_graph.sh $arch ; done
 



View it on GitLab: https://salsa.debian.org/qa/jenkins.debian.net/-/compare/4feb53605d0f1c4e7a8828697a63c14fb10b6518...c232de0ba69fda52b41d6e8b9225a0e63c6056e0

-- 
View it on GitLab: https://salsa.debian.org/qa/jenkins.debian.net/-/compare/4feb53605d0f1c4e7a8828697a63c14fb10b6518...c232de0ba69fda52b41d6e8b9225a0e63c6056e0
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/20250824/0548dae3/attachment-0001.htm>


More information about the Qa-jenkins-scm mailing list