From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christopher Baines Subject: Automatically building packages affected by submitted patches Date: Fri, 01 Mar 2019 21:08:31 +0000 Message-ID: <87tvgmfgkw.fsf@cbaines.net> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([209.51.188.92]:56919) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gzpXL-0001Nj-Na for guix-devel@gnu.org; Fri, 01 Mar 2019 16:17:44 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gzpOk-00086P-O5 for guix-devel@gnu.org; Fri, 01 Mar 2019 16:08:52 -0500 Received: from li622-129.members.linode.com ([212.71.249.129]:57038 helo=mira.cbaines.net) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gzpOk-0007vs-Ch for guix-devel@gnu.org; Fri, 01 Mar 2019 16:08:50 -0500 Received: from localhost (cpc102582-walt20-2-0-cust14.13-2.cable.virginm.net [86.27.34.15]) by mira.cbaines.net (Postfix) with ESMTPSA id F091916C8E for ; Fri, 1 Mar 2019 21:08:33 +0000 (GMT) Received: from capella (localhost [127.0.0.1]) by localhost (OpenSMTPD) with ESMTP id b2cf8676 for ; Fri, 1 Mar 2019 21:08:33 +0000 (UTC) List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: guix-devel@gnu.org --=-=-= Content-Type: text/plain Hey, In short, following on from some previous emails about Patchwork [1] and tracking and inspecting how Guix changes over time [2], I've got to the point where I have a very rough setup for building packages changed by patches sent to the guix-patches mailing list. 1: http://lists.gnu.org/archive/html/guix-devel/2018-10/msg00638.html 2: https://lists.gnu.org/archive/html/guix-devel/2019-02/msg00089.html If you want to see this in action, assuming for a given patch series that all goes to plan, patches sent to the guix-patches mailing list as normal should appear in the Patchwork web interface [3], and after some processing, a specification should be inserted in to this Cuirass instances [4] which builds the packages affected by the patch series. 3: https://patchwork.cbaines.net/project/guix-patches/list/ 4: https://cuirass.cbaines.net/ For a specific example, here [5] is series 700 (a Patchwork id). There are a number of intermediate steps, but this is the specification in Cuirass [6]. 5: https://patchwork.cbaines.net/project/guix-patches/list/?series=700 6: https://cuirass.cbaines.net/jobset/series-700 If you want to see how this is held together at the moment, the main script can be found here [7]. That script repeatedly in a loop: - Looks at patch series in the Patchwork database that have been processed through the patchwork-test-series job in Laminar. - Gets the recorded commits for the base commit and head commit. - Fetches the list of affected packages from the Guix Data Service. - Assuming the list is available, ensures that a Cuirass specification exists to build the affected packages. 7: https://laminar.cbaines.net/cfg/scripts/guix-patchwork-helper This is very much an initial prototype, and from this I've got a load of ideas about how better to set things up. In terms of features I'd like to work towards next, the main thing on my mind is doing something useful with the data from building these packages. With the goal of displaying a check in Patchwork about the build status of the affected packages, I need to compare what's been build by my Cuirass instance, with what https://ci.guix.info/ has built. To do this, my current plan is to have the Guix Data Service monitor a number of Cuirass instances somehow, extract information from them and store it. You'd then be able to get a comparison for the build status using the results gathered from the two Cuirass instances from the Guix Data Service. Going back to some of the aims I have with this, I think something like this could help people review and test there own patch submissions, as well as assisting those taking the time to review patches that others have submitted. There's a few more related things on my mind, but I'll end this email here. Chris --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQKTBAEBCgB9FiEEPonu50WOcg2XVOCyXiijOwuE9XcFAlx5n09fFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcACgkQXiijOwuE 9Xefbg/+OuniYQlSwmTfYwpVhnMew+KHB79zc6WOHeCXVqdlKwaZK1KmSOX6n5cQ ZM43ry08EDVA9IRF4WRN02qjsSSPF0dgLulZBtKYrKCAP5LfGOlLs0VX1B48CNCM rowJvDW0CGB/Y85kJzJIDyxpIvsGwBJr6C4RKPWKzZybnWLbOFKTNYZOctYRcOAR EIilPuOy5Fl0KLU2RDR4jod3GCPVFbpMuvCAQQNVVgXv5XeyMUfGsbPRobleFzA5 NiVyYCJIKoE4v2Sg9kLlOGzpkMi5EIrEf8RuTMdoTlnVNQweI7/jB7ycuf4g3zfz vek8np0cD0mnE1V/2iyup4K5cYLTpizavDmoLW9Rm4GtmMuGhV3aZG119bGslW3h OfMjqfPxOKFOMZS+QKuD+8TC4APNB8QkQA/STMdhg7JH09BKkdmIYQ96ZsJQ63Uc LX3fd+638hc2GISUFUk0Yx2esCOIOv0do56b/J2tarVLlOC9KN0phNanG2RT71k0 kPpDrnC1QKTa7ZLEK96STEa8i8yWPT1ZDxhf1DZLsBQhpKSORLjjJVV0NsSITEzN pUjcnXdeug+N4E9R9NYXqV36Hfn75sgsDlknfJC7y9VBHhnaflTn5vgWL3LQOUz8 mAL3if1icIHhvx6Jgu0HqMVxfgzQeBD6B7MvIUHUUQ6tKHOM1xo= =06Fh -----END PGP SIGNATURE----- --=-=-=--