[Git][reproducible-builds/reproducible-presentations][master] dc24 rb artifacts talk: wip, basically done

Holger Levsen (@holger) gitlab at salsa.debian.org
Fri Aug 2 06:16:17 UTC 2024



Holger Levsen pushed to branch master at Reproducible Builds / reproducible-presentations


Commits:
ae42affc by Holger Levsen at 2024-08-02T15:15:53+09:00
dc24 rb artifacts talk: wip, basically done

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

- - - - -


2 changed files:

- 2024-08-02-preserving-other-build-artifacts/index.html
- − 2024-08-02-preserving-other-build-artifacts/todo


Changes:

=====================================
2024-08-02-preserving-other-build-artifacts/index.html
=====================================
@@ -189,10 +189,9 @@
          <section data-background="images/debconf24.svg" data-background-size="15%" data-background-position="93% 9%" data-transition="none">
         <h3>About you</h3>
         <ul>
-          <li class="fragment">Who has seen my talk about Reproducible Builds on Monday?</li>
+          <li class="fragment">Who has seen my talk about Reproducible Builds on Monday? (or another time)</li>
           <li class="fragment">Who knows something about the Debian archive kit (dak)?</li>
           <li class="fragment">Who knows something about Debian buildd infrastucture?</li>
-          <li class="fragment">Who knows how automatic debug packages work?</li>
           <li class="fragment">Who knows about dpkg-distaddfile?</li>
         </ul>
       </section>
@@ -200,8 +199,7 @@
          <section data-background="images/debconf24.svg" data-background-size="15%" data-background-position="93% 9%" data-transition="none">
         <h3>About this workshop</h3>
         <ul>
-          <li>I'll get to the topic at hand in two minutes.</li>
-          <li>how to preserve <i>other</i> build artifacts?</li>
+          <li>I'll get to the topic at hand (how to preserve <i>other</i> build artifacts?) in two minutes.</li>
           <li>But first, some context.</li>
         </ul>
       </section>
@@ -248,16 +246,11 @@
         <ul>
           <li style="font-size: 80%">When is a build reproducible?</li>
           <li style="font-size: 80%">[...] The artifacts of a build are the parts of the build results that are the desired <b>primary output</b>.</li>
-          <li class="fragment">Build logs, autopkgtest results and other build artifacts are out of scope in this definition.</li>
+          <li class="fragment">Build logs, unit tesst results, autopkgtest results and other build artifacts are out of scope in this definition.</li>
 
         </ul>
       </section>
 
-      <section data-background="images/debconf24.svg" data-background-size="10%" data-background-position="93% 9%" data-transition="none">
-        <h3>CI results for Debian unstable, 20240727</h3>
-        <img src="images/stats_pkg_state_20240727.png">
-        </section>
-
       <section data-background="images/debconf24.svg" data-background-size="10%" data-background-position="93% 9%" data-transition="none">
         <h2>100%!</h2>
      	<ul>
@@ -268,6 +261,11 @@
 	</ul> 
 </section>
 
+      <section data-background="images/debconf24.svg" data-background-size="10%" data-background-position="93% 9%" data-transition="none">
+        <h3>CI results for Debian unstable, 20240727</h3>
+        <img src="images/stats_pkg_state_20240727.png">
+        </section>
+
       <section data-background="images/debconf24.svg" data-background-size="10%" data-background-position="93% 9%" data-transition="none">
         <h2>Debian policy</h2>
 	<ul>
@@ -340,15 +338,17 @@
 	<li>.deb files (and .changes and .buildinfo)</li>
 	<li>the one and only build logfile</li>
 	<li class="fragment">nothing else, so people who need those artifacts invented unreproducible work arounds and store these build artifacts in .deb files.</li>
+	<li class="fragment">or the workaround is to do a local build to have access to those artifacts. Thta's clumsy and time consuming.</li>
 	</ul> 
 </section>
 
       <section data-background="images/debconf24.svg" data-background-size="15%" data-background-position="93% 9%" data-transition="none">
-        <h2><small>https://wiki.debian.org/BuildArtifacts</small></h2>
+        <h1><small>https://wiki.debian.org/BuildArtifacts</small></h1>
      	<ul>
 	<li>.deb files (and .changes and .buildinfo)</li>
 	<li>the one and only build logfile</li>
 	<li>nothing else, so people who need those artifacts invented unreproducible work arounds and store these build artifacts in .deb files.</li>
+	<li>or the workaround is to do a local build to have access to those artifacts. Thta's clumsy and time consuming.</li>
 	</ul> 
 </section>
 
@@ -357,23 +357,43 @@
 </section>
 
       <section data-background="images/debconf24.svg" data-background-size="15%" data-background-position="93% 9%" data-transition="none">
-        <h2><small>https://wiki.debian.org/BuildArtifacts</small></h2>
+        <h2>packages including other build artifacts</h2>
      	<ul>
-	<li><code>src:binutils</code></li>
-	<li><code>src:gcc-X</code></li>
+	<li><code>src:binutils</code> builds <code>binutils-dev</code> unreproducibly.</li>
+	<li><code>src:gcc-X</code> builds  <code>gcc-X-test-results</code> unreproducibly. </li>
 	<li class="fragment">We cannot whitelist those packages forever, if we want 100% reproducible packages in Debian <code>testing</code> and <code>stable</code> eventually!</li>
+	<li class="fragment">Many thanks to Matthias Klose for writing https://wiki.debian.org/BuildArtifacts !</li>
+	</ul> 
+</section>
+
+      <section data-background="images/debconf24.svg" data-background-size="15%" data-background-position="93% 9%" data-transition="none">
+        <h2><small>other https://wiki.debian.org/BuildArtifacts</small></h2>
+     	<ul>
+	<li class="fragment">more than one build log.</li>
+	<li class="fragment">config.log, config.status	</li>
+	<li class="fragment">preprocessed source for compiler errors	</li>
+	<li class="fragment">test results (from unit tests during build, not autopkgtests)	</li>
+	<li class="fragment">dejagnu test logs	</li>
 	<li class="fragment">The wiki page has more usage examples, eg verbose build logs from GNOME packages. prepocessed sources in /tmp/cc*.out </li>
-	<li class="fragment">Many thanks to Matthias Klose for writing it. I do trust him that those artifacts are essential for maintaining those packages.</li>
 	</ul> 
 </section>
 
        <section data-background="images/debconf24.svg" data-background-size="15%" data-background-position="93% 9%" data-transition="none">
-        <h2>Preserving build artifacts </small></h2>
+        <h2>Preserving build artifacts, what doesn't work:</small></h2>
+     	<ul>
+	<li>salsa CI: we want the artifacts from real builds.</li>
+	<li class="fragment">autopkgtest mechanism is also not dealing with results from the builds, but from tests using the build results.</li>
+	
+	</ul> 
+</section>
+
+       <section data-background="images/debconf24.svg" data-background-size="15%" data-background-position="93% 9%" data-transition="none">
+        <h2>Preserving other build artifacts </small></h2>
      	<ul>
-        <li class="fragment">dpkg-distaddfile can be used to add files to debian/files so that they are referenced in the .changes files and thus included in upload. (Thanks to Julien Cristau for pointing this out.)</li>
-	<li class="fragment">Now we only need <code>dak</code> to accept those files and make them available somewhere. </li>
-	<li class="fragment">Easy.🥳🍾👍</li>
-	<li class="fragment">(Though this doesn't work for failed builds. But then we have nothing for those now neither.)</li>
+        <li class="fragment">dpkg-distaddfile can be used to add files to debian/files so that they are referenced in the .changes files and thus included in upload.</li>
+	<li class="fragment">files added via <code>dpkg-distaddfile</code> end up in the byhand queue, eg on <code>coccia.debian.org:/srv/ftp-master.debian.org/queue/byhand</code></li>
+	<li class="fragment">Now we only need <code>dak</code> to accept those files and make them available <i>somewhere</i>, outside the archive, like .buildinfo files... </li>
+	<li class="fragment"><small>(Though this doesn't work for failed builds. But then we have nothing for those now neither.)</small></li>
 	</ul> 
 </section>
 
@@ -381,9 +401,18 @@
         <h2>Preserving build artifacts, how to continue...</small></h2>
      	<ul>
 	<li>So we only need <code>dak</code> to accept those files and make them available somewhere... 💅</li>
-	<li class="fragment">Sounds like an easy plan and almost to good to be true.</li>
-	<li class="fragment">I'll send a mail to debian-devel at l.d.o with links to that wiki URL and this talk, to continue the discussion on the mailing list.</li>
-	<li class="fragment">I've also submitted another workshop on this topic for DebConf24 and both Matthias and myself will be there. AIUI this really needs the FTP team too.<li>
+	<li class="fragment">Almost sounds like an easy plan.</li>
+	<li class="fragment">Almost: <code>.buildinfo</code> files until this day are not made available to the public by the ftpmasters...</li>
+	
+	</ul> 
+</section>
+
+       <section data-background="images/debconf24.svg" data-background-size="15%" data-background-position="93% 9%" data-transition="none">
+        <h2>Timeline</small></h2>
+     	<ul>
+	<li>Can we have this for <code>experimental</code> now/soon?</li>
+	<li class="fragment">and for <code>unstable</code> directly after the trixie releasde?</li>
+	<li class="fragment">or even earlier for <code>unstable</code> too?</li>
 	
 	</ul> 
 </section>
@@ -405,7 +434,8 @@
           Thank you
           <br><small>… and all contributors out there!</small>
         </h1>
-        <p class="fragment">Any questions, suggestions, ...? 🤷</p>
+        <span class="fragment">Any questions, suggestions, ...? 🤷<br/>
+        <h3>https://wiki.debian.org/BuildArtifacts</h3></span>
 
         <h2>
           <small>Holger Levsen <holger at reproducible-builds.org><br>


=====================================
2024-08-02-preserving-other-build-artifacts/todo deleted
=====================================
@@ -1 +0,0 @@
-



View it on GitLab: https://salsa.debian.org/reproducible-builds/reproducible-presentations/-/commit/ae42affc70052bf9077515b727b56683bc138b8c

-- 
View it on GitLab: https://salsa.debian.org/reproducible-builds/reproducible-presentations/-/commit/ae42affc70052bf9077515b727b56683bc138b8c
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.reproducible-builds.org/pipermail/rb-commits/attachments/20240802/be151e0a/attachment.htm>


More information about the rb-commits mailing list