[Git][qa/jenkins.debian.net][master] more bits for arm64.r.d.n
Holger Levsen (@holger)
gitlab at salsa.debian.org
Tue Jan 21 19:42:49 GMT 2025
Holger Levsen pushed to branch master at Debian QA / jenkins.debian.net
Commits:
62837a27 by Holger Levsen at 2025-01-21T20:42:38+01:00
more bits for arm64.r.d.n
Signed-off-by: Holger Levsen <holger at layer-acht.org>
- - - - -
1 changed file:
- + hosts/osuosl5-amd64/var/www/html/index_arm64.html
Changes:
=====================================
hosts/osuosl5-amd64/var/www/html/index_arm64.html
=====================================
@@ -0,0 +1,217 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="utf-8">
+ <title>
+ arm64.reproduce.debian.net - trixie (arch:arm64)
+ </title>
+ <style>
+ body {
+ font-family: sans-serif;
+ font-size: 18pt;
+ }
+ h1 {
+ font-size: 24pt;
+ }
+ h3 {
+ font-size: 18pt;
+ }
+
+ #search-results {
+ margin: 18pt 0;
+ }
+
+ pre {
+ margin: 0;
+ }
+
+ #search-results pre {
+ margin: 12pt 0;
+ }
+
+ .status {
+ font-weight: bold;
+ }
+
+ .good {
+ color: green;
+ }
+
+ .bad {
+ color: red;
+ }
+
+ .unknown {
+ color: #957fff;
+ }
+
+ footer {
+ font-size: 12pt;
+ margin: 30pt 0;
+ }
+ </style>
+ <script>
+ document.addEventListener('DOMContentLoaded', function() {
+ // package search
+ function spanWith(text) {
+ let s = document.createElement('span');
+ s.textContent = text;
+ return s;
+ }
+
+ function linkTo(href, text) {
+ let a = document.createElement('a');
+ a.href = href;
+ a.textContent = text;
+ return a;
+ }
+
+ function searchPkgs(query) {
+ let div = document.getElementById('search-results');
+ let url = '/api/v0/pkgs/list?' + new URLSearchParams({
+ name: query,
+ distro: 'debian',
+ });
+ fetch(url)
+ .then(response => response.json())
+ .then(data => {
+ // clear children
+ div.innerHTML = '';
+
+ data.map(pkg => {
+ let build_id = pkg.build_id;
+ let r = document.createElement('pre');
+
+ r.appendChild(spanWith('['));
+ let status = pkg['status'];
+ let statusSpan = spanWith(status);
+ statusSpan.className += ' status';
+ if (status == 'GOOD') {
+ statusSpan.className += ' good';
+ } else if (status == 'BAD') {
+ statusSpan.className += ' bad';
+ } else {
+ statusSpan.className += ' unknown';
+ }
+ r.appendChild(statusSpan);
+ r.appendChild(spanWith(`] ${pkg['name']} ${pkg['version']}\t\t`));
+
+ if (build_id) {
+ r.appendChild(spanWith(' ['));
+ r.appendChild(linkTo(`/api/v0/builds/${build_id}/log`, 'log'));
+ r.appendChild(spanWith(']'));
+ }
+
+ if (pkg.has_attestation) {
+ r.appendChild(spanWith(' ['));
+ r.appendChild(linkTo(`/api/v0/builds/${build_id}/attestation`, 'attestation'));
+ r.appendChild(spanWith(']'));
+ }
+
+ if (pkg.has_diffoscope) {
+ r.appendChild(spanWith(' ['));
+ r.appendChild(linkTo(`/api/v0/builds/${build_id}/diffoscope`, 'diffoscope'));
+ r.appendChild(spanWith(']'));
+ }
+
+ div.appendChild(r);
+ });
+ });
+ }
+
+ if (location.hash) {
+ searchPkgs(location.hash.substr(1));
+ }
+
+ document.getElementById('search').addEventListener('submit', function(e) {
+ e.preventDefault();
+ let query = document.getElementById('search-query').value;
+ location.href = `#${query}`;
+ searchPkgs(query);
+ });
+
+ // display stats
+ function updateStats(data) {
+ let div = document.getElementById('stats');
+ // clear children
+ div.innerHTML = '';
+ // add rows
+ data.map(row => {
+ let r = document.createElement('pre');
+ let key = row[0] + ': ';
+ r.textContent = key.padEnd(20) + row[1];
+ div.appendChild(r);
+ });
+ }
+
+ function fetchStats() {
+ fetch('/api/v0/dashboard')
+ .then(response => response.json())
+ .then(data => {
+ let div = document.getElementById('stats');
+ let main = data['suites']['main'];
+
+ let good = main['good'];
+ let bad = main['bad'];
+ let unknown = main['unknown'];
+
+ updateStats([
+ ['good', good],
+ ['bad', bad],
+ ['unknown', unknown],
+ ['build progress', (100 / (good + unknown + bad) * (good + bad)).toFixed(2) + '%'],
+ ['repro', (100 / (good + bad) * good).toFixed(2) + '%'],
+ ]);
+ });
+ }
+
+ setInterval(fetchStats, 60 * 1000);
+ fetchStats();
+ });
+ </script>
+ </head>
+ <body>
+ <img src="/stats/rb.png" align="right">
+ <h1>
+ arm64.reproduce.debian.net
+ </h1>
+ <h3>
+ trixie (arch:arm64)
+ </h3>
+
+ <div id="stats">Loading stats...</div>
+
+ <div>
+ <h3>Binary package search</h3>
+ <form id="search">
+ <input type="text" id="search-query" placeholder="2ping">
+ <input type="submit" value="Search">
+ </form>
+ </div>
+ <div id="search-results">
+ </div>
+
+ <footer>
+ pew pew, <a href="https://github.com/kpcyrd/rebuilderd">rebuilderd</a> using <a href="https://tracker.debian.org/pkg/devscripts">debrebuild</a> (with <a href="https://tracker.debian.org/pkg/sbuild">sbuild+unshare</a> as backend) to reproduce what Debian distributes via <code><a href="https://deb.debian.org/debian/dists/">deb.debian.org</a></code>. ♥️
+ <br/>
+ <a href="https://reproduce.debian.net">https://reproduce.debian.net</a> / <a href="https://amd64.reproduce.debian.net">amd64</a> / arm64 / <a href="https://i386.reproduce.debian.net">i386</a>
+ <br/>
+ <a href="/stats/">Statistics about BAD packages</a> on arm64.
+ <br/>
+ <a href="/api/v0/pkgs/list">/api/v0/pkgs/list</a> (JSON)
+ <br/>
+ <code>
+ # How to judge your own systen:
+ <br/>
+ sudo apt install <a href="https://tracker.debian.org/rust-debian-repro-status">debian-repro-status</a> ; debian-repro-status
+ </code>
+ <br/>
+ <small>
+ <hr/>
+ This setup is in it's infancy, though by now everything except rebuilderd itself is in trixie. Still, please don't consider any URLs as stable here, and more to the point, especially don't take any numbers here seriously, unless...!?!
+ <br/>Oh, and in case you are wondering why we are doing this, then hopefully the <a href="https://reproducible-builds.org">Reproducible Builds website</a> will explain why this is useful.
+ <!--#config timefmt="%Y-%m-%d" --><br/>Static content last modified: <!--#echo var="date_gmt" -->
+ </small>
+ </footer>
+ </body>
+</html>
View it on GitLab: https://salsa.debian.org/qa/jenkins.debian.net/-/commit/62837a27992de775da2ddaa99100769f3306572c
--
View it on GitLab: https://salsa.debian.org/qa/jenkins.debian.net/-/commit/62837a27992de775da2ddaa99100769f3306572c
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/20250121/dad8bbd9/attachment-0001.htm>
More information about the Qa-jenkins-scm
mailing list