[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
branch master updated: website: Update draft post on the QA front-page.
From: |
Christopher Baines |
Subject: |
branch master updated: website: Update draft post on the QA front-page. |
Date: |
Sun, 13 Aug 2023 03:06:08 -0400 |
This is an automated email from the git hooks/post-receive script.
cbaines pushed a commit to branch master
in repository guix-artwork.
The following commit(s) were added to refs/heads/master by this push:
new 9af5f44 website: Update draft post on the QA front-page.
9af5f44 is described below
commit 9af5f44a1b2e73a247b437b4f13547bf0dd1b8fc
Author: Christopher Baines <mail@cbaines.net>
AuthorDate: Sun Aug 13 08:05:05 2023 +0100
website: Update draft post on the QA front-page.
* website/drafts/progress-on-the-qa-frontpage.md: Update.
* website/static/blog/img/qa-issue.png: New file.
* website/static/blog/img/qa-package-changes.png: New file.
---
website/drafts/progress-on-the-qa-frontpage.md | 104 ++++++++++++++++---------
website/static/blog/img/qa-issue.png | Bin 0 -> 209333 bytes
website/static/blog/img/qa-package-changes.png | Bin 0 -> 123268 bytes
3 files changed, 67 insertions(+), 37 deletions(-)
diff --git a/website/drafts/progress-on-the-qa-frontpage.md
b/website/drafts/progress-on-the-qa-frontpage.md
index 515b5af..9a897f0 100644
--- a/website/drafts/progress-on-the-qa-frontpage.md
+++ b/website/drafts/progress-on-the-qa-frontpage.md
@@ -1,10 +1,10 @@
-title: Progress so far on the Guix Quality Assurance (QA) frontpage
+title: A new Quality Assurance tool for Guix
author: Christopher Baines
tags: Continuous integration, Quality Assurance
date: 2023-07-12 16:30:00
---
-Maintaining and adding to Guix's collection of packages can be
+Maintaining and expanding Guix's collection of packages can be
complicated. As a distribution with around 22,000 packages, spanning
across around 7 architectures and with support for cross-compilation,
it's quite common for problems to occur when making changes.
@@ -20,7 +20,8 @@ This will differ from person to person, but these are some
common
concerns:
- Packages not building
- - Either now or in the future
+ - Either now or in the future (as is the case with so-called
+ [*time bombs*](https://issues.guix.gnu.org/56137))
- Packages building reproducibly
- Packages building on or for a specific architecture
@@ -33,10 +34,10 @@ concerns:
There's a range of tools to help maintain Guix. The [package
linters](https://guix.gnu.org/en/manual/en/html_node/Invoking-guix-lint.html)
are a set of simple tools, they cover basic things from the naming of
-packages to more complicated things like the validity of the home-page
-URL and the formatting of the package definition.
+packages to more complicated checkers like the validity of the
+home-page URL and the formatting of the package definition.
-The [guix
weather](https://guix.gnu.org/en/manual/en/html_node/Invoking-guix-weather.html)
+The [`guix
weather`](https://guix.gnu.org/en/manual/en/html_node/Invoking-guix-weather.html)
tool looks at substitute availability information and can indicate how
many substitutes are available for the current Guix and system. The
[guix
challenge](https://guix.gnu.org/en/manual/en/html_node/Invoking-guix-challenge.html)
@@ -48,54 +49,83 @@ For translations, [Guix uses
Weblate](https://guix.gnu.org/manual/en/html_node/Translating-Guix.html)
which can provide information on how many translations are available.
-## The QA Frontpage
+# The QA front-page
-Then there's the relatively new Quality Assurance (QA) frontpage, the
+Then there's the relatively new Quality Assurance (QA) front-page, the
aim of which is to bring together some of the existing Quality
Assurance related information, as well as new being a good place to do
additional QA tasks.
-The QA frontpage
+The QA front-page
[started](https://lists.gnu.org/archive/html/guix-devel/2022-09/msg00054.html)
-as a service to coordinate automated testing for patches, it queries
-the [data service](https://data.qa.guix.gnu.org/) to find out what
-derivations have changed and then submits builds for these derivations
-to the build coordinator behind
-[bordeaux.guix.gnu.org](https://bordeaux.guix.gnu.org/).
-
-A very similar process applies for non-master branches, the QA
-frontpage queries [issues.guix.gnu.org](https://issues.guix.gnu.org/)
-to find out which branch is going to be merged next, then queries the
-data service to find out what derivations have changed and just like
-for patches then submits builds for these changed derivations to the
-bordeaux.guix.gnu.org build coordinator.
-
-For both patches and branches the QA frontpage tries to display
-information about the effects of the changes. This is a work in
-progress though, and there's much more that the QA frontpage should be
-able to do to provide clearer descriptions of the changes and any
-problems that should be addressed.
+as a service to coordinate automated testing for patches. When a patch
+or patch series is submitted to guix-patches@gnu.org, it is
+automatically applied to create a branch; then once the information is
+available from the [Data Service](https://data.qa.guix.gnu.org/) about
+this branch, the QA frontpage web interface lets you view which
+packages were modified and submits builds for these changes to the
+[Build
Coordinator](https://guix.gnu.org/en/blog/2021/building-derivations-how-complicated-can-it-be/)
+behind
[bordeaux.guix.gnu.org](https://guix.gnu.org/en/blog/2021/substitutes-now-also-available-from-bordeauxguixgnuorg/)
+to provide build information about the modified packages.
+
+![QA issue page](/static/blog/img/qa-issue.png)
+
+A very similar process applies for branches other than the master
+branch, the QA front-page queries
+[issues.guix.gnu.org](https://issues.guix.gnu.org/) to find out which
+branch is going to be merged next, then follows the same process for
+patches.
+
+For both patches and branches the QA front-page displays information
+about the effects of the changes. When this information is available,
+it can assist with reviewing the changes and help get patches merged
+quicker. This is a work in progress though, and there's much more that
+the QA front-page should be able to do as providing clearer
+descriptions of the changes or any other problems that should be
+addressed.
+![QA package changes page](/static/blog/img/qa-package-changes.png)
# How to get involved?
There's plenty of ways to get involved or contribute to the QA
-frontpage.
+front-page.
-If you submit patches to Guix, the QA frontpage will attempt to apply
+If you submit patches to Guix, the QA front-page will attempt to apply
the patches and show what's changed. You can click through from
-issues.guix.gnu.org to qa.guix.gnu.org via the QA badge by the status
-of the issue.
+issues.guix.gnu.org to [qa.guix.gnu.org](https://qa.guix.gnu.org/) via
+the QA badge by the status of the issue.
-From the QA frontpage, you can also view the list of branches which
+From the QA front-page, you can also view the list of branches which
includes the requests for merging if they exist. Similar to the patch
-series, for the branch the QA frontpage can display information about
+series, for the branch the QA front-page can display information about
the package changes and substitute availability.
-There's also plenty of ways to contribute to the QA frontpage and
+There's also plenty of ways to contribute to the QA front-page and
connected tools. You can find some ideas and information on how to
run the service in the
[README](https://git.savannah.gnu.org/cgit/guix/qa-frontpage.git/tree/README.org)
and if you have any questions or patches, please email
-guix-devel@gnu.org.
-
-
+`guix-devel@gnu.org`.
+
+# Acknowledgments
+
+Thanks to Simon Tournier and Ludovic Courtès for providing feedback on
+an earlier draft of this post.
+
+#### About GNU Guix
+
+[GNU Guix](https://guix.gnu.org) is a transactional package manager
+and an advanced distribution of the GNU system that [respects user
+freedom](https://www.gnu.org/distros/free-system-distribution-guidelines.html).
+Guix can be used on top of any system running the Hurd or the Linux
+kernel, or it can be used as a standalone operating system
+distribution for i686, x86_64, ARMv7, AArch64 and POWER9 machines.
+
+In addition to standard package management features, Guix supports
+transactional upgrades and roll-backs, unprivileged package
+management, per-user profiles, and garbage collection. When used as a
+standalone GNU/Linux distribution, Guix offers a declarative,
+stateless approach to operating system configuration management. Guix
+is highly customizable and hackable through
+[Guile](https://www.gnu.org/software/guile) programming interfaces and
+extensions to the [Scheme](http://schemers.org) language.
diff --git a/website/static/blog/img/qa-issue.png
b/website/static/blog/img/qa-issue.png
new file mode 100644
index 0000000..db020e3
Binary files /dev/null and b/website/static/blog/img/qa-issue.png differ
diff --git a/website/static/blog/img/qa-package-changes.png
b/website/static/blog/img/qa-package-changes.png
new file mode 100644
index 0000000..ddd4cf2
Binary files /dev/null and b/website/static/blog/img/qa-package-changes.png
differ
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- branch master updated: website: Update draft post on the QA front-page.,
Christopher Baines <=