[libvirt PATCH 0/4] ci: run clang on Linux and parallelize more

I found out we do not run tests compiled with my preferred compiler [0]: https://www.redhat.com/archives/libvir-list/2020-July/msg01280.html Run it on Fedora 31 and Rawhide, to get some variety in the coverage. Corresponding libvirt-ci change: https://gitlab.com/libvirt/libvirt-ci/-/merge_requests/38 [0] although I haven't benchmarked the build time recently https://gitlab.com/jano.tomko/libvirt/-/pipelines/171846516 Ján Tomko (4): ci: refresh Dockerfiles ci: add a job for clang ci: run Cirrus-based builds sooner ci: use 'needs' more often .gitlab-ci.yml | 29 ++++++++++++++++++- ci/containers/libvirt-centos-7.Dockerfile | 1 - ci/containers/libvirt-centos-8.Dockerfile | 1 - .../libvirt-centos-stream.Dockerfile | 1 - ...libvirt-debian-10-cross-aarch64.Dockerfile | 1 - .../libvirt-debian-10-cross-armv6l.Dockerfile | 2 +- .../libvirt-debian-10-cross-armv7l.Dockerfile | 2 +- .../libvirt-debian-10-cross-i686.Dockerfile | 1 - .../libvirt-debian-10-cross-mips.Dockerfile | 1 - ...ibvirt-debian-10-cross-mips64el.Dockerfile | 1 - .../libvirt-debian-10-cross-mipsel.Dockerfile | 1 - ...libvirt-debian-10-cross-ppc64le.Dockerfile | 1 - .../libvirt-debian-10-cross-s390x.Dockerfile | 1 - ci/containers/libvirt-debian-10.Dockerfile | 1 - ...ibvirt-debian-sid-cross-aarch64.Dockerfile | 1 - ...libvirt-debian-sid-cross-armv6l.Dockerfile | 2 +- ...libvirt-debian-sid-cross-armv7l.Dockerfile | 2 +- .../libvirt-debian-sid-cross-i686.Dockerfile | 1 - ...bvirt-debian-sid-cross-mips64el.Dockerfile | 1 - ...libvirt-debian-sid-cross-mipsel.Dockerfile | 2 +- ...ibvirt-debian-sid-cross-ppc64le.Dockerfile | 1 - .../libvirt-debian-sid-cross-s390x.Dockerfile | 1 - ci/containers/libvirt-debian-sid.Dockerfile | 1 - ci/containers/libvirt-fedora-31.Dockerfile | 2 +- ci/containers/libvirt-fedora-32.Dockerfile | 2 +- .../libvirt-fedora-rawhide.Dockerfile | 2 +- ci/containers/libvirt-opensuse-151.Dockerfile | 1 - ci/containers/libvirt-ubuntu-1804.Dockerfile | 1 - ci/containers/libvirt-ubuntu-2004.Dockerfile | 1 - 29 files changed, 36 insertions(+), 29 deletions(-) -- 2.26.2

We dropped ncurses and added libnuma-dev on all debian archs as of libvirt-ci commit: commit 4717287565d81b747d3176332108fe0302de2669 projects: libvirt doesn't depend on ncurses Signed-off-by: Ján Tomko <jtomko@redhat.com> --- ci/containers/libvirt-centos-7.Dockerfile | 1 - ci/containers/libvirt-centos-8.Dockerfile | 1 - ci/containers/libvirt-centos-stream.Dockerfile | 1 - ci/containers/libvirt-debian-10-cross-aarch64.Dockerfile | 1 - ci/containers/libvirt-debian-10-cross-armv6l.Dockerfile | 2 +- ci/containers/libvirt-debian-10-cross-armv7l.Dockerfile | 2 +- ci/containers/libvirt-debian-10-cross-i686.Dockerfile | 1 - ci/containers/libvirt-debian-10-cross-mips.Dockerfile | 1 - ci/containers/libvirt-debian-10-cross-mips64el.Dockerfile | 1 - ci/containers/libvirt-debian-10-cross-mipsel.Dockerfile | 1 - ci/containers/libvirt-debian-10-cross-ppc64le.Dockerfile | 1 - ci/containers/libvirt-debian-10-cross-s390x.Dockerfile | 1 - ci/containers/libvirt-debian-10.Dockerfile | 1 - ci/containers/libvirt-debian-sid-cross-aarch64.Dockerfile | 1 - ci/containers/libvirt-debian-sid-cross-armv6l.Dockerfile | 2 +- ci/containers/libvirt-debian-sid-cross-armv7l.Dockerfile | 2 +- ci/containers/libvirt-debian-sid-cross-i686.Dockerfile | 1 - ci/containers/libvirt-debian-sid-cross-mips64el.Dockerfile | 1 - ci/containers/libvirt-debian-sid-cross-mipsel.Dockerfile | 2 +- ci/containers/libvirt-debian-sid-cross-ppc64le.Dockerfile | 1 - ci/containers/libvirt-debian-sid-cross-s390x.Dockerfile | 1 - ci/containers/libvirt-debian-sid.Dockerfile | 1 - ci/containers/libvirt-fedora-31.Dockerfile | 1 - ci/containers/libvirt-fedora-32.Dockerfile | 1 - ci/containers/libvirt-fedora-rawhide.Dockerfile | 1 - ci/containers/libvirt-opensuse-151.Dockerfile | 1 - ci/containers/libvirt-ubuntu-1804.Dockerfile | 1 - ci/containers/libvirt-ubuntu-2004.Dockerfile | 1 - 28 files changed, 5 insertions(+), 28 deletions(-) diff --git a/ci/containers/libvirt-centos-7.Dockerfile b/ci/containers/libvirt-centos-7.Dockerfile index 08d9386644..0054587542 100644 --- a/ci/containers/libvirt-centos-7.Dockerfile +++ b/ci/containers/libvirt-centos-7.Dockerfile @@ -87,7 +87,6 @@ WEiJKtQrZDJloqtyi/mmRa1VsV7RYR0VPJjhK/R8EQ7Ysshy\n\ lsof \ lvm2 \ make \ - ncurses-devel \ net-tools \ netcf-devel \ nfs-utils \ diff --git a/ci/containers/libvirt-centos-8.Dockerfile b/ci/containers/libvirt-centos-8.Dockerfile index 2ac825fc80..b5ce6fa2db 100644 --- a/ci/containers/libvirt-centos-8.Dockerfile +++ b/ci/containers/libvirt-centos-8.Dockerfile @@ -60,7 +60,6 @@ RUN dnf install 'dnf-command(config-manager)' -y && \ lvm2 \ make \ meson \ - ncurses-devel \ net-tools \ netcf-devel \ nfs-utils \ diff --git a/ci/containers/libvirt-centos-stream.Dockerfile b/ci/containers/libvirt-centos-stream.Dockerfile index e0025e2acb..8f8e089a25 100644 --- a/ci/containers/libvirt-centos-stream.Dockerfile +++ b/ci/containers/libvirt-centos-stream.Dockerfile @@ -61,7 +61,6 @@ RUN dnf install -y centos-release-stream && \ lvm2 \ make \ meson \ - ncurses-devel \ net-tools \ netcf-devel \ nfs-utils \ diff --git a/ci/containers/libvirt-debian-10-cross-aarch64.Dockerfile b/ci/containers/libvirt-debian-10-cross-aarch64.Dockerfile index 2d49f5e6e7..3013c4316d 100644 --- a/ci/containers/libvirt-debian-10-cross-aarch64.Dockerfile +++ b/ci/containers/libvirt-debian-10-cross-aarch64.Dockerfile @@ -90,7 +90,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:arm64 \ libgnutls28-dev:arm64 \ libiscsi-dev:arm64 \ - libncurses-dev:arm64 \ libnl-3-dev:arm64 \ libnl-route-3-dev:arm64 \ libnuma-dev:arm64 \ diff --git a/ci/containers/libvirt-debian-10-cross-armv6l.Dockerfile b/ci/containers/libvirt-debian-10-cross-armv6l.Dockerfile index f9d6ee4c9f..adc3ff345c 100644 --- a/ci/containers/libvirt-debian-10-cross-armv6l.Dockerfile +++ b/ci/containers/libvirt-debian-10-cross-armv6l.Dockerfile @@ -90,9 +90,9 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:armel \ libgnutls28-dev:armel \ libiscsi-dev:armel \ - libncurses-dev:armel \ libnl-3-dev:armel \ libnl-route-3-dev:armel \ + libnuma-dev:armel \ libparted-dev:armel \ libpcap0.8-dev:armel \ libpciaccess-dev:armel \ diff --git a/ci/containers/libvirt-debian-10-cross-armv7l.Dockerfile b/ci/containers/libvirt-debian-10-cross-armv7l.Dockerfile index f26e059535..f1fa703fef 100644 --- a/ci/containers/libvirt-debian-10-cross-armv7l.Dockerfile +++ b/ci/containers/libvirt-debian-10-cross-armv7l.Dockerfile @@ -90,9 +90,9 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:armhf \ libgnutls28-dev:armhf \ libiscsi-dev:armhf \ - libncurses-dev:armhf \ libnl-3-dev:armhf \ libnl-route-3-dev:armhf \ + libnuma-dev:armhf \ libparted-dev:armhf \ libpcap0.8-dev:armhf \ libpciaccess-dev:armhf \ diff --git a/ci/containers/libvirt-debian-10-cross-i686.Dockerfile b/ci/containers/libvirt-debian-10-cross-i686.Dockerfile index eaca5ee20b..81df3b1b09 100644 --- a/ci/containers/libvirt-debian-10-cross-i686.Dockerfile +++ b/ci/containers/libvirt-debian-10-cross-i686.Dockerfile @@ -90,7 +90,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:i386 \ libgnutls28-dev:i386 \ libiscsi-dev:i386 \ - libncurses-dev:i386 \ libnl-3-dev:i386 \ libnl-route-3-dev:i386 \ libnuma-dev:i386 \ diff --git a/ci/containers/libvirt-debian-10-cross-mips.Dockerfile b/ci/containers/libvirt-debian-10-cross-mips.Dockerfile index 7909471dcc..3cf42d1573 100644 --- a/ci/containers/libvirt-debian-10-cross-mips.Dockerfile +++ b/ci/containers/libvirt-debian-10-cross-mips.Dockerfile @@ -90,7 +90,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:mips \ libgnutls28-dev:mips \ libiscsi-dev:mips \ - libncurses-dev:mips \ libnl-3-dev:mips \ libnl-route-3-dev:mips \ libnuma-dev:mips \ diff --git a/ci/containers/libvirt-debian-10-cross-mips64el.Dockerfile b/ci/containers/libvirt-debian-10-cross-mips64el.Dockerfile index 0e8bb6f4fb..7cbd99800c 100644 --- a/ci/containers/libvirt-debian-10-cross-mips64el.Dockerfile +++ b/ci/containers/libvirt-debian-10-cross-mips64el.Dockerfile @@ -90,7 +90,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:mips64el \ libgnutls28-dev:mips64el \ libiscsi-dev:mips64el \ - libncurses-dev:mips64el \ libnl-3-dev:mips64el \ libnl-route-3-dev:mips64el \ libnuma-dev:mips64el \ diff --git a/ci/containers/libvirt-debian-10-cross-mipsel.Dockerfile b/ci/containers/libvirt-debian-10-cross-mipsel.Dockerfile index 9faf47dff1..609f3942ab 100644 --- a/ci/containers/libvirt-debian-10-cross-mipsel.Dockerfile +++ b/ci/containers/libvirt-debian-10-cross-mipsel.Dockerfile @@ -90,7 +90,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:mipsel \ libgnutls28-dev:mipsel \ libiscsi-dev:mipsel \ - libncurses-dev:mipsel \ libnl-3-dev:mipsel \ libnl-route-3-dev:mipsel \ libnuma-dev:mipsel \ diff --git a/ci/containers/libvirt-debian-10-cross-ppc64le.Dockerfile b/ci/containers/libvirt-debian-10-cross-ppc64le.Dockerfile index 68a438485d..f1c8bbd954 100644 --- a/ci/containers/libvirt-debian-10-cross-ppc64le.Dockerfile +++ b/ci/containers/libvirt-debian-10-cross-ppc64le.Dockerfile @@ -90,7 +90,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:ppc64el \ libgnutls28-dev:ppc64el \ libiscsi-dev:ppc64el \ - libncurses-dev:ppc64el \ libnl-3-dev:ppc64el \ libnl-route-3-dev:ppc64el \ libnuma-dev:ppc64el \ diff --git a/ci/containers/libvirt-debian-10-cross-s390x.Dockerfile b/ci/containers/libvirt-debian-10-cross-s390x.Dockerfile index 473ad32435..ddbab67dce 100644 --- a/ci/containers/libvirt-debian-10-cross-s390x.Dockerfile +++ b/ci/containers/libvirt-debian-10-cross-s390x.Dockerfile @@ -90,7 +90,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:s390x \ libgnutls28-dev:s390x \ libiscsi-dev:s390x \ - libncurses-dev:s390x \ libnl-3-dev:s390x \ libnl-route-3-dev:s390x \ libnuma-dev:s390x \ diff --git a/ci/containers/libvirt-debian-10.Dockerfile b/ci/containers/libvirt-debian-10.Dockerfile index e1c97f2bf0..1e9a434aca 100644 --- a/ci/containers/libvirt-debian-10.Dockerfile +++ b/ci/containers/libvirt-debian-10.Dockerfile @@ -42,7 +42,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev \ libgnutls28-dev \ libiscsi-dev \ - libncurses-dev \ libnetcf-dev \ libnl-3-dev \ libnl-route-3-dev \ diff --git a/ci/containers/libvirt-debian-sid-cross-aarch64.Dockerfile b/ci/containers/libvirt-debian-sid-cross-aarch64.Dockerfile index 9aedc67330..fb22273c87 100644 --- a/ci/containers/libvirt-debian-sid-cross-aarch64.Dockerfile +++ b/ci/containers/libvirt-debian-sid-cross-aarch64.Dockerfile @@ -90,7 +90,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:arm64 \ libgnutls28-dev:arm64 \ libiscsi-dev:arm64 \ - libncurses-dev:arm64 \ libnl-3-dev:arm64 \ libnl-route-3-dev:arm64 \ libnuma-dev:arm64 \ diff --git a/ci/containers/libvirt-debian-sid-cross-armv6l.Dockerfile b/ci/containers/libvirt-debian-sid-cross-armv6l.Dockerfile index 3f5ccba66a..e083fc7225 100644 --- a/ci/containers/libvirt-debian-sid-cross-armv6l.Dockerfile +++ b/ci/containers/libvirt-debian-sid-cross-armv6l.Dockerfile @@ -90,9 +90,9 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:armel \ libgnutls28-dev:armel \ libiscsi-dev:armel \ - libncurses-dev:armel \ libnl-3-dev:armel \ libnl-route-3-dev:armel \ + libnuma-dev:armel \ libparted-dev:armel \ libpcap0.8-dev:armel \ libpciaccess-dev:armel \ diff --git a/ci/containers/libvirt-debian-sid-cross-armv7l.Dockerfile b/ci/containers/libvirt-debian-sid-cross-armv7l.Dockerfile index f67f13cf85..b21af56204 100644 --- a/ci/containers/libvirt-debian-sid-cross-armv7l.Dockerfile +++ b/ci/containers/libvirt-debian-sid-cross-armv7l.Dockerfile @@ -90,9 +90,9 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:armhf \ libgnutls28-dev:armhf \ libiscsi-dev:armhf \ - libncurses-dev:armhf \ libnl-3-dev:armhf \ libnl-route-3-dev:armhf \ + libnuma-dev:armhf \ libparted-dev:armhf \ libpcap0.8-dev:armhf \ libpciaccess-dev:armhf \ diff --git a/ci/containers/libvirt-debian-sid-cross-i686.Dockerfile b/ci/containers/libvirt-debian-sid-cross-i686.Dockerfile index 0ed089f9ab..e18d6ce297 100644 --- a/ci/containers/libvirt-debian-sid-cross-i686.Dockerfile +++ b/ci/containers/libvirt-debian-sid-cross-i686.Dockerfile @@ -90,7 +90,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:i386 \ libgnutls28-dev:i386 \ libiscsi-dev:i386 \ - libncurses-dev:i386 \ libnl-3-dev:i386 \ libnl-route-3-dev:i386 \ libnuma-dev:i386 \ diff --git a/ci/containers/libvirt-debian-sid-cross-mips64el.Dockerfile b/ci/containers/libvirt-debian-sid-cross-mips64el.Dockerfile index cdafb2aef8..be51a11a3f 100644 --- a/ci/containers/libvirt-debian-sid-cross-mips64el.Dockerfile +++ b/ci/containers/libvirt-debian-sid-cross-mips64el.Dockerfile @@ -90,7 +90,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:mips64el \ libgnutls28-dev:mips64el \ libiscsi-dev:mips64el \ - libncurses-dev:mips64el \ libnl-3-dev:mips64el \ libnl-route-3-dev:mips64el \ libnuma-dev:mips64el \ diff --git a/ci/containers/libvirt-debian-sid-cross-mipsel.Dockerfile b/ci/containers/libvirt-debian-sid-cross-mipsel.Dockerfile index 532b70be3b..5d818ff05e 100644 --- a/ci/containers/libvirt-debian-sid-cross-mipsel.Dockerfile +++ b/ci/containers/libvirt-debian-sid-cross-mipsel.Dockerfile @@ -90,13 +90,13 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:mipsel \ libgnutls28-dev:mipsel \ libiscsi-dev:mipsel \ - libncurses-dev:mipsel \ libnl-3-dev:mipsel \ libnl-route-3-dev:mipsel \ libnuma-dev:mipsel \ libparted-dev:mipsel \ libpcap0.8-dev:mipsel \ libpciaccess-dev:mipsel \ + librbd-dev:mipsel \ libreadline-dev:mipsel \ libsanlock-dev:mipsel \ libsasl2-dev:mipsel \ diff --git a/ci/containers/libvirt-debian-sid-cross-ppc64le.Dockerfile b/ci/containers/libvirt-debian-sid-cross-ppc64le.Dockerfile index 8bc32873bc..ac103235a5 100644 --- a/ci/containers/libvirt-debian-sid-cross-ppc64le.Dockerfile +++ b/ci/containers/libvirt-debian-sid-cross-ppc64le.Dockerfile @@ -90,7 +90,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:ppc64el \ libgnutls28-dev:ppc64el \ libiscsi-dev:ppc64el \ - libncurses-dev:ppc64el \ libnl-3-dev:ppc64el \ libnl-route-3-dev:ppc64el \ libnuma-dev:ppc64el \ diff --git a/ci/containers/libvirt-debian-sid-cross-s390x.Dockerfile b/ci/containers/libvirt-debian-sid-cross-s390x.Dockerfile index 6a98b30326..b77ce2945c 100644 --- a/ci/containers/libvirt-debian-sid-cross-s390x.Dockerfile +++ b/ci/containers/libvirt-debian-sid-cross-s390x.Dockerfile @@ -90,7 +90,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev:s390x \ libgnutls28-dev:s390x \ libiscsi-dev:s390x \ - libncurses-dev:s390x \ libnl-3-dev:s390x \ libnl-route-3-dev:s390x \ libnuma-dev:s390x \ diff --git a/ci/containers/libvirt-debian-sid.Dockerfile b/ci/containers/libvirt-debian-sid.Dockerfile index b8ec601ef1..61840d8990 100644 --- a/ci/containers/libvirt-debian-sid.Dockerfile +++ b/ci/containers/libvirt-debian-sid.Dockerfile @@ -42,7 +42,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev \ libgnutls28-dev \ libiscsi-dev \ - libncurses-dev \ libnetcf-dev \ libnl-3-dev \ libnl-route-3-dev \ diff --git a/ci/containers/libvirt-fedora-31.Dockerfile b/ci/containers/libvirt-fedora-31.Dockerfile index 7b492d30c0..72e6ae3b69 100644 --- a/ci/containers/libvirt-fedora-31.Dockerfile +++ b/ci/containers/libvirt-fedora-31.Dockerfile @@ -58,7 +58,6 @@ RUN dnf update -y && \ lvm2 \ make \ meson \ - ncurses-devel \ net-tools \ netcf-devel \ nfs-utils \ diff --git a/ci/containers/libvirt-fedora-32.Dockerfile b/ci/containers/libvirt-fedora-32.Dockerfile index f208f82a2a..ea38a7f084 100644 --- a/ci/containers/libvirt-fedora-32.Dockerfile +++ b/ci/containers/libvirt-fedora-32.Dockerfile @@ -58,7 +58,6 @@ RUN dnf update -y && \ lvm2 \ make \ meson \ - ncurses-devel \ net-tools \ netcf-devel \ nfs-utils \ diff --git a/ci/containers/libvirt-fedora-rawhide.Dockerfile b/ci/containers/libvirt-fedora-rawhide.Dockerfile index 8e092744f6..6da9bc8f69 100644 --- a/ci/containers/libvirt-fedora-rawhide.Dockerfile +++ b/ci/containers/libvirt-fedora-rawhide.Dockerfile @@ -59,7 +59,6 @@ RUN dnf update -y --nogpgcheck fedora-gpg-keys && \ lvm2 \ make \ meson \ - ncurses-devel \ net-tools \ netcf-devel \ nfs-utils \ diff --git a/ci/containers/libvirt-opensuse-151.Dockerfile b/ci/containers/libvirt-opensuse-151.Dockerfile index 2ba408efb7..026f3a9dc2 100644 --- a/ci/containers/libvirt-opensuse-151.Dockerfile +++ b/ci/containers/libvirt-opensuse-151.Dockerfile @@ -59,7 +59,6 @@ RUN zypper update -y && \ lsof \ lvm2 \ make \ - ncurses-devel \ net-tools \ nfs-utils \ ninja \ diff --git a/ci/containers/libvirt-ubuntu-1804.Dockerfile b/ci/containers/libvirt-ubuntu-1804.Dockerfile index 9675130770..e538e33a21 100644 --- a/ci/containers/libvirt-ubuntu-1804.Dockerfile +++ b/ci/containers/libvirt-ubuntu-1804.Dockerfile @@ -42,7 +42,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglib2.0-dev \ libgnutls28-dev \ libiscsi-dev \ - libncurses5-dev \ libnetcf-dev \ libnl-3-dev \ libnl-route-3-dev \ diff --git a/ci/containers/libvirt-ubuntu-2004.Dockerfile b/ci/containers/libvirt-ubuntu-2004.Dockerfile index 2457e7a8db..a0aee78662 100644 --- a/ci/containers/libvirt-ubuntu-2004.Dockerfile +++ b/ci/containers/libvirt-ubuntu-2004.Dockerfile @@ -42,7 +42,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ libglusterfs-dev \ libgnutls28-dev \ libiscsi-dev \ - libncurses-dev \ libnetcf-dev \ libnl-3-dev \ libnl-route-3-dev \ -- 2.26.2

On Wed, 2020-07-29 at 01:36 +0200, Ján Tomko wrote:
We dropped ncurses and added libnuma-dev on all debian archs as of libvirt-ci commit:
commit 4717287565d81b747d3176332108fe0302de2669 projects: libvirt doesn't depend on ncurses
Signed-off-by: Ján Tomko <jtomko@redhat.com> --- ci/containers/libvirt-centos-7.Dockerfile | 1 - ci/containers/libvirt-centos-8.Dockerfile | 1 - ci/containers/libvirt-centos-stream.Dockerfile | 1 - ci/containers/libvirt-debian-10-cross-aarch64.Dockerfile | 1 - ci/containers/libvirt-debian-10-cross-armv6l.Dockerfile | 2 +- ci/containers/libvirt-debian-10-cross-armv7l.Dockerfile | 2 +- ci/containers/libvirt-debian-10-cross-i686.Dockerfile | 1 - ci/containers/libvirt-debian-10-cross-mips.Dockerfile | 1 - ci/containers/libvirt-debian-10-cross-mips64el.Dockerfile | 1 - ci/containers/libvirt-debian-10-cross-mipsel.Dockerfile | 1 - ci/containers/libvirt-debian-10-cross-ppc64le.Dockerfile | 1 - ci/containers/libvirt-debian-10-cross-s390x.Dockerfile | 1 - ci/containers/libvirt-debian-10.Dockerfile | 1 - ci/containers/libvirt-debian-sid-cross-aarch64.Dockerfile | 1 - ci/containers/libvirt-debian-sid-cross-armv6l.Dockerfile | 2 +- ci/containers/libvirt-debian-sid-cross-armv7l.Dockerfile | 2 +- ci/containers/libvirt-debian-sid-cross-i686.Dockerfile | 1 - ci/containers/libvirt-debian-sid-cross-mips64el.Dockerfile | 1 - ci/containers/libvirt-debian-sid-cross-mipsel.Dockerfile | 2 +- ci/containers/libvirt-debian-sid-cross-ppc64le.Dockerfile | 1 - ci/containers/libvirt-debian-sid-cross-s390x.Dockerfile | 1 - ci/containers/libvirt-debian-sid.Dockerfile | 1 - ci/containers/libvirt-fedora-31.Dockerfile | 1 - ci/containers/libvirt-fedora-32.Dockerfile | 1 - ci/containers/libvirt-fedora-rawhide.Dockerfile | 1 - ci/containers/libvirt-opensuse-151.Dockerfile | 1 - ci/containers/libvirt-ubuntu-1804.Dockerfile | 1 - ci/containers/libvirt-ubuntu-2004.Dockerfile | 1 - 28 files changed, 5 insertions(+), 28 deletions(-)
Reviewed-by: Andrea Bolognani <abologna@redhat.com> -- Andrea Bolognani / Red Hat / Virtualization

Out of the Linux distros we build on in the CI, clang is only available on Fedora. Add a job to Fedora 31 and Rawhide, to have coverage for clang on Linux as well. Includes a refresh of the Dockerfiles to commit TBD: https://gitlab.com/libvirt/libvirt-ci/-/merge_requests/38 Signed-off-by: Ján Tomko <jtomko@redhat.com> --- .gitlab-ci.yml | 16 +++++++++++++++- ci/containers/libvirt-fedora-31.Dockerfile | 1 + ci/containers/libvirt-fedora-32.Dockerfile | 1 + ci/containers/libvirt-fedora-rawhide.Dockerfile | 1 + 4 files changed, 18 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 702198ec8e..f61ad7151c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -52,7 +52,7 @@ stages: script: - mkdir build - cd build - - ../autogen.sh || (cat config.log && exit 1) + - ../autogen.sh CC=$CC || (cat config.log && exit 1) - $MAKE distcheck # Jobs that we delegate to Cirrus CI because they require an operating @@ -306,6 +306,20 @@ x64-fedora-rawhide: variables: NAME: fedora-rawhide +x64-fedora-31-clang: + <<: *native_build_job_definition + needs: ["x64-fedora-31-container"] + variables: + CC: clang + NAME: fedora-31 + +x64-fedora-rawhide-clang: + <<: *native_build_job_definition + needs: ["x64-fedora-rawhide-container"] + variables: + CC: clang + NAME: fedora-rawhide + x64-opensuse-151: <<: *native_build_job_definition variables: diff --git a/ci/containers/libvirt-fedora-31.Dockerfile b/ci/containers/libvirt-fedora-31.Dockerfile index 72e6ae3b69..84b19e7330 100644 --- a/ci/containers/libvirt-fedora-31.Dockerfile +++ b/ci/containers/libvirt-fedora-31.Dockerfile @@ -12,6 +12,7 @@ RUN dnf update -y && \ ca-certificates \ ccache \ chrony \ + clang \ cppi \ cyrus-sasl-devel \ dbus-devel \ diff --git a/ci/containers/libvirt-fedora-32.Dockerfile b/ci/containers/libvirt-fedora-32.Dockerfile index ea38a7f084..bbd7ff87a4 100644 --- a/ci/containers/libvirt-fedora-32.Dockerfile +++ b/ci/containers/libvirt-fedora-32.Dockerfile @@ -12,6 +12,7 @@ RUN dnf update -y && \ ca-certificates \ ccache \ chrony \ + clang \ cppi \ cyrus-sasl-devel \ dbus-devel \ diff --git a/ci/containers/libvirt-fedora-rawhide.Dockerfile b/ci/containers/libvirt-fedora-rawhide.Dockerfile index 6da9bc8f69..d362662f35 100644 --- a/ci/containers/libvirt-fedora-rawhide.Dockerfile +++ b/ci/containers/libvirt-fedora-rawhide.Dockerfile @@ -13,6 +13,7 @@ RUN dnf update -y --nogpgcheck fedora-gpg-keys && \ ca-certificates \ ccache \ chrony \ + clang \ cppi \ cyrus-sasl-devel \ dbus-devel \ -- 2.26.2

On Wed, 2020-07-29 at 01:36 +0200, Ján Tomko wrote:
Out of the Linux distros we build on in the CI, clang is only available on Fedora.
Uh? I guess you based this claim on https://repology.org/project/clang/versions but the information contained in that page is inaccurate: clang is actually also available on CentOS 7 3.4.2 (via EPEL) CentOS 8 9.0.1 Debian 10 7.0.1 Debian sid 10.0.1 openSUSE 15.1 7.0.1 Ubuntu 18.04 10.0.0 Ubuntu 20.04 10.0.0 Some of those versions might be too old to be useful, but claiming that clang is only available in Fedora is simply inaccurate.
Add a job to Fedora 31 and Rawhide, to have coverage for clang on Linux as well.
I get Rawhide, but why Fedora 31 instead of 32? The former is going to be EOL in a few months. Also, based on the above, do you think we should have clang builds on more platforms or are two Fedora builds giving us enough coverage?
Includes a refresh of the Dockerfiles to commit TBD: https://gitlab.com/libvirt/libvirt-ci/-/merge_requests/38
I would prefer the Dockerfile update to be its own commit.
+++ b/.gitlab-ci.yml @@ -52,7 +52,7 @@ stages: script: - mkdir build - cd build - - ../autogen.sh || (cat config.log && exit 1) + - ../autogen.sh CC=$CC || (cat config.log && exit 1)
Have you tried without this hunk? $CC is already defined in the container's environment and I would expect autogen.sh/configure to pick the value up, so I *think* it should work even without passing it explicitly...
+x64-fedora-31-clang: + <<: *native_build_job_definition + needs: ["x64-fedora-31-container"]
We haven't introduced this pattern yet, so please stick with the current approach for the moment and then switch these jobs over along with all the other ones in the follow-up commit.
+ variables: + CC: clang + NAME: fedora-31
Bikeshedding: I'd put NAME first. -- Andrea Bolognani / Red Hat / Virtualization

On a Wednesday in 2020, Andrea Bolognani wrote:
On Wed, 2020-07-29 at 01:36 +0200, Ján Tomko wrote:
Out of the Linux distros we build on in the CI, clang is only available on Fedora.
Uh? I guess you based this claim on
Yes.
but the information contained in that page is inaccurate: clang is actually also available on
CentOS 7 3.4.2 (via EPEL) CentOS 8 9.0.1 Debian 10 7.0.1 Debian sid 10.0.1 openSUSE 15.1 7.0.1 Ubuntu 18.04 10.0.0 Ubuntu 20.04 10.0.0
Some of those versions might be too old to be useful, but claiming that clang is only available in Fedora is simply inaccurate.
Add a job to Fedora 31 and Rawhide, to have coverage for clang on Linux as well.
I get Rawhide, but why Fedora 31 instead of 32? The former is going to be EOL in a few months.
Any Fedora release is, by definition, going to be EOL in a few months.
Also, based on the above, do you think we should have clang builds on more platforms or are two Fedora builds giving us enough coverage?
The intention was to use different versions of the compiler. If running it on the oldest still-supported Fedora interferes with your passion in purging releases that don't let us drop any code, I can replace it with a combination of: rawhide + centos 8 + debian 10 or rawhide + centos 8 + opensuse 15.1 (And thanks for pointing that out, my Gentoo box still defaults to clang7)
Includes a refresh of the Dockerfiles to commit TBD: https://gitlab.com/libvirt/libvirt-ci/-/merge_requests/38
I would prefer the Dockerfile update to be its own commit.
Yes.
+++ b/.gitlab-ci.yml @@ -52,7 +52,7 @@ stages: script: - mkdir build - cd build - - ../autogen.sh || (cat config.log && exit 1) + - ../autogen.sh CC=$CC || (cat config.log && exit 1)
Have you tried without this hunk?
No.
$CC is already defined in the container's environment and I would expect autogen.sh/configure to pick the value up, so I *think* it should work even without passing it explicitly...
+x64-fedora-31-clang: + <<: *native_build_job_definition + needs: ["x64-fedora-31-container"]
We haven't introduced this pattern yet, so please stick with the current approach for the moment and then switch these jobs over along with all the other ones in the follow-up commit.
+ variables: + CC: clang + NAME: fedora-31
Bikeshedding: I'd put NAME first.
/---\ Speaking of which, do you have a better suggestion for the job | | name? 'x86-fedora-rawh' is all that fits into the bubble on | , | the pipeline website. Almost as if it was designed for CI, | o-o | not CUT. Jano

On Wed, 2020-07-29 at 11:02 +0200, Ján Tomko wrote:
On a Wednesday in 2020, Andrea Bolognani wrote:
Also, based on the above, do you think we should have clang builds on more platforms or are two Fedora builds giving us enough coverage?
The intention was to use different versions of the compiler.
Makes sense when you spell it out :)
If running it on the oldest still-supported Fedora interferes with your passion in purging releases that don't let us drop any code, I can replace it with a combination of: rawhide + centos 8 + debian 10 or rawhide + centos 8 + opensuse 15.1
Either one looks fine. Maybe let's use Debian so that we don't put all eggs in RPM-based baskets ;)
+++ b/.gitlab-ci.yml @@ -52,7 +52,7 @@ stages: script: - mkdir build - cd build - - ../autogen.sh || (cat config.log && exit 1) + - ../autogen.sh CC=$CC || (cat config.log && exit 1)
Have you tried without this hunk?
No.
Can you please try? :)
+ variables: + CC: clang + NAME: fedora-31
Bikeshedding: I'd put NAME first.
/---\ Speaking of which, do you have a better suggestion for the job | | name? 'x86-fedora-rawh' is all that fits into the bubble on | , | the pipeline website. Almost as if it was designed for CI, | o-o | not CUT.
Unfortunately he bubble is simply too small to display a reasonable amount of information, so I don't think we can hope to fit everything in there. The "jobs" view presents all information, but its structure is less than ideal. Recently Cleber created this script for QEMU: https://lists.nongnu.org/archive/html/qemu-devel/2020-07/msg03106.html I wonder if we could build something like that, but which provides more detailed information, perhaps in a proper TUI... Such a tool might live under the Bichon umbrella, for example, since there's clearly some overlap in scope. -- Andrea Bolognani / Red Hat / Virtualization

Jobs using cirrus-run don't need to wait for any jobs from the container stage. Run them as soon as possible. Signed-off-by: Ján Tomko <jtomko@redhat.com> --- .gitlab-ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f61ad7151c..077465e436 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -337,6 +337,7 @@ x64-ubuntu-2004: x64-freebsd-12-build: <<: *cirrus_build_job_definition + needs: [] variables: NAME: freebsd-12 CIRRUS_VM_INSTANCE_TYPE: freebsd_instance @@ -346,6 +347,7 @@ x64-freebsd-12-build: x64-macos-1015-build: <<: *cirrus_build_job_definition + needs: [] variables: NAME: macos-1015 CIRRUS_VM_INSTANCE_TYPE: osx_instance -- 2.26.2

On Wed, 2020-07-29 at 01:36 +0200, Ján Tomko wrote:
x64-freebsd-12-build: <<: *cirrus_build_job_definition + needs: [] variables: NAME: freebsd-12 CIRRUS_VM_INSTANCE_TYPE: freebsd_instance
Since this applies to all Cirrus CI builds, we can set 'needs' in .cirrus_build_job_template and avoid the repetition. With that changed, Reviewed-by: Andrea Bolognani <abologna@redhat.com> -- Andrea Bolognani / Red Hat / Virtualization

Make the pipeline chart more interesting. Signed-off-by: Ján Tomko <jtomko@redhat.com> --- .gitlab-ci.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 077465e436..7d23ddfdf9 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -268,41 +268,49 @@ mingw64-fedora-rawhide-container: x64-debian-10: <<: *native_build_job_definition + needs: ["x64-debian-10-container"] variables: NAME: debian-10 x64-debian-sid: <<: *native_build_job_definition + needs: ["x64-debian-sid-container"] variables: NAME: debian-sid x64-centos-7: <<: *native_build_job_definition + needs: ["x64-centos-7-container"] variables: NAME: centos-7 x64-centos-8: <<: *native_build_job_definition + needs: ["x64-centos-8-container"] variables: NAME: centos-8 x64-centos-stream: <<: *native_build_job_definition + needs: ["x64-centos-stream-container"] variables: NAME: centos-stream x64-fedora-31: <<: *native_build_job_definition + needs: ["x64-fedora-31-container"] variables: NAME: fedora-31 x64-fedora-32: <<: *native_build_job_definition + needs: ["x64-fedora-32-container"] variables: NAME: fedora-32 x64-fedora-rawhide: <<: *native_build_job_definition + needs: ["x64-fedora-rawhide-container"] variables: NAME: fedora-rawhide @@ -322,6 +330,7 @@ x64-fedora-rawhide-clang: x64-opensuse-151: <<: *native_build_job_definition + needs: ["x64-opensuse-151-container"] variables: NAME: opensuse-151 @@ -433,6 +442,7 @@ mingw64-fedora-rawhide: website: stage: builds image: $CI_REGISTRY_IMAGE/ci-centos-8:latest + needs: ["x64-centos-8-container"] before_script: - *script_variables script: @@ -455,6 +465,7 @@ website: codestyle: stage: builds image: $CI_REGISTRY_IMAGE/ci-opensuse-151:latest + needs: ["x64-opensuse-151-container"] before_script: - *script_variables script: -- 2.26.2

On Wed, 2020-07-29 at 01:36 +0200, Ján Tomko wrote:
Make the pipeline chart more interesting.
Maybe include a short summary of the actual motivation here :)
+++ b/.gitlab-ci.yml @@ -268,41 +268,49 @@ mingw64-fedora-rawhide-container:
x64-debian-10: <<: *native_build_job_definition + needs: ["x64-debian-10-container"] variables: NAME: debian-10
Why are you limiting this change to a subset of the build jobs? It seems to me that this approach can be used for all of them, both native and cross. And please use the needs: - x64-debian-10-container syntax, since that's what we use for lists everywhere else. I also thought we could make this much nicer by using something like .native_build_job_template: &native_build_job_definition stage: builds image: $CI_REGISTRY_IMAGE/ci-$NAME:latest needs: - x64-$NAME-container ... .cross_build_default_job_template: &cross_build_job_definition stage: builds image: $CI_REGISTRY_IMAGE/ci-$NAME-cross-$CROSS:latest needs: - $CROSS-$NAME-container ... x64-debian-10: <<: *native_build_job_definition variables: NAME: debian-10 aarch64-debian-10: <<: *cross_build_job_definition variables: NAME: debian-10 CROSS: aarch64 but it turns out that GitLab doesn't support variable expansion inside of 'needs', so that's unfortunately not viable :( -- Andrea Bolognani / Red Hat / Virtualization

On a Wednesday in 2020, Andrea Bolognani wrote:
On Wed, 2020-07-29 at 01:36 +0200, Ján Tomko wrote:
Make the pipeline chart more interesting.
Maybe include a short summary of the actual motivation here :)
+++ b/.gitlab-ci.yml @@ -268,41 +268,49 @@ mingw64-fedora-rawhide-container:
x64-debian-10: <<: *native_build_job_definition + needs: ["x64-debian-10-container"] variables: NAME: debian-10
Why are you limiting this change to a subset of the build jobs?
It goes in line with the actual motivation mentioned in the commit message ;) That is: I wanted to get some parallelism running quickly without figuring out what the other jobs depend on or how to put it to writing efficiently in this beautiful, whitespace-based language.
It seems to me that this approach can be used for all of them, both native and cross.
And please use the
needs: - x64-debian-10-container
syntax, since that's what we use for lists everywhere else.
Oh, okay.
I also thought we could make this much nicer by using something like
.native_build_job_template: &native_build_job_definition stage: builds image: $CI_REGISTRY_IMAGE/ci-$NAME:latest needs: - x64-$NAME-container ...
.cross_build_default_job_template: &cross_build_job_definition stage: builds image: $CI_REGISTRY_IMAGE/ci-$NAME-cross-$CROSS:latest needs: - $CROSS-$NAME-container ...
x64-debian-10: <<: *native_build_job_definition variables: NAME: debian-10
aarch64-debian-10: <<: *cross_build_job_definition variables: NAME: debian-10 CROSS: aarch64
but it turns out that GitLab doesn't support variable expansion inside of 'needs', so that's unfortunately not viable :(
Thanks, now I feel better about being too lazy to try it in the first place. Jano

On Wed, 2020-07-29 at 11:17 +0200, Ján Tomko wrote:
On a Wednesday in 2020, Andrea Bolognani wrote:
Why are you limiting this change to a subset of the build jobs?
It goes in line with the actual motivation mentioned in the commit message ;)
That is: I wanted to get some parallelism running quickly without figuring out what the other jobs depend on or how to put it to writing efficiently in this beautiful, whitespace-based language.
Each build job depends on the corresponding container build. You've already taken care of the few exceptions to this rule, so extending this pattern to all build job should be entirely mechanical. Please do so in v2. -- Andrea Bolognani / Red Hat / Virtualization
participants (2)
-
Andrea Bolognani
-
Ján Tomko