Commit Graph

27 Commits

Author SHA1 Message Date
Daniel P. Berrangé
f666425950 ci: refresh with latest 'lcitool manifest'
* Switch to using libvirt+minimal instead of libvirt project,
   for shorter build times
 * Actually do a git build job in CentOS Stream & AlmaLinux
 * Drop AlmaLinux 8
 * Update to latest Alpine versions

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2024-10-29 17:43:56 +00:00
Daniel P. Berrangé
82dbca46b6 ci: refresh with latest lcitool manifest
This updates the distros:

 * Add Alpine 3.18, 3.19, Edge, CentOS Stream 9, Fedora 39, 40,
   Ubuntu 24.04, AlmaLinux 8, 9, Debian 11, 12
 * Remove CentOS Stream 8, Fedora 37, 38, Ubuntu 20.04,
   Debian 10, Fedora 35, 36
 * Rename OpenSUSE 15.3 to 15

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2024-04-29 17:13:04 +00:00
Daniel P. Berrangé
41949dba74 ci: add 'libc' package to lcitool project def
On Alpine, 'musl-dev' won't get pulled in by default, even if gcc is
asked for, and thus C programs won't link.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2024-04-29 17:13:04 +00:00
Daniel P. Berrangé
4e08a54479 ci: import lcitool project package list definitions
The project package lists previously held in libvirt-ci.git are
being moved into their respective project git repos.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2024-04-29 17:13:04 +00:00
Daniel P. Berrangé
1e99e5e4f4 ci: refresh with latest lcitool manifest
This refresh switches the CI for contributors to be triggered by merge
requests. Pushing to a branch in a fork will no longer run CI pipelines,
in order to avoid consuming CI minutes. To regain the original behaviour
contributors can opt-in to a pipeline on push

   git push <remote> -o ci.variable=RUN_PIPELINE=1

This variable can also be set globally on the repository, though this is
not recommended. Upstream repo pushes to branches will run CI.

The use of containers has changed in this update, with only the upstream
repo creating containers, in order to avoid consuming contributors'
limited storage quotas. A fork with existing container images may delete
them. Containers will be rebuilt upstream when pushing commits with CI
changes to the default branch. Any other scenario with CI changes will
simply install build pre-requisite packages in a throaway environment,
using the ci/buildenv/ scripts. These scripts may also be used on a
contributor's local machines.

With pipelines triggered by merge requests, it is also now possible to
workaround the inability of contributors to run pipelines if they have
run out of CI quota. A project member can trigger a pipeline from the
merge request, which will run in context of upstream, however, note
this should only be done after reviewing the code for any malicious
CI changes.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2022-09-30 10:10:21 -04:00
Daniel P. Berrangé
734e6ed700 ci: mark all bleeding edge distro jobs as allow failure
The non-released bleeding edge distros have frequent packaging problems
that make it impossible to have reliable CI. Make them all optional
non-gating jobs.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2022-08-11 10:17:25 +01:00
Daniel P. Berrangé
43f5626c03 ci: refresh with latest lcitool manifest
Some distros are upgraded

 * Fedora 34 dropped, Fedora 36 added
 * Ubuntu 18.04 dropped, Ubuntu 22.04 added

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2022-08-11 10:16:25 +01:00
Daniel P. Berrangé
7ee760ea80 ci: refresh to pull in missing gettext package
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2022-04-27 11:27:46 +01:00
Daniel P. Berrangé
8cd7451192 ci: refresh from lcitool manifest
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2022-04-27 11:27:45 +01:00
Daniel P. Berrangé
2504431c8a ci: remove obsolete refresh script
We now use lcitool's manifest feature to generate files.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-09-10 13:34:07 +01:00
Daniel P. Berrangé
a0f00dfe2b ci: re-generate containers/gitlab config from manifest
This uses the command "lcitool manifest ci/manifest.yml" to re-generate
all existing dockerfiles and gitlab CI config.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-09-10 13:34:07 +01:00
Daniel P. Berrangé
959b52f659 ci: define a CI manifest file
This is to be used with the command "lcitool manifest ci/manifest.yml"
to re-generate all existing dockerfiles and gitlab CI config.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-09-10 13:14:30 +01:00
Daniel P. Berrangé
a2323dccb2 gitlab: remove centos-7 build target
This platform is no longer supported by libvirt.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-09-10 12:37:37 +01:00
Daniel P. Berrangé
ccf5c5eace ci: refresh centos-stream container
It is no longer possible to just install an extra package to run regular
centos into centos stream.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-07-27 16:50:29 +01:00
Daniel P. Berrangé
f03e009eb7 gitlab: convert CI to use meson instead of autotools
A new 'codestyle' job is added for syntax-check, since that is not run
as part of the 'dist' target.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-01-25 16:02:48 +00:00
Daniel P. Berrangé
d1ed3d4e75 gitlab: refresh container images
This replaces opensuse 15.1 with 15.2

This bring in the missing vte package dep

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-01-22 16:14:40 +00:00
Daniel P. Berrangé
1e18203e55 ci: refresh containers for CentOS-8 PowerTools repo rename
A recent CentOS-8 update renamed the "PowerTools" repo to "powertools"
and since dnf is case sensitive wrt repo names, this broke ability to
build new containers.

The refresh fixes the repo name and pulls in other misc improvements
to containers.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-12-15 10:43:40 +00:00
Daniel P. Berrangé
dae506032f gitlab: rename dockerfiles to have a "ci-" prefix
This means the dockerfile has the same name as the generated container
image.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-12-04 10:42:59 +00:00
Daniel P. Berrangé
bf29e894c8 gitlab: refresh containers with lcitool for fully minimized base
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-12-04 10:42:59 +00:00
Daniel P. Berrangé
ab84b11b2d gitlab: re-generate container images from lcitool
This introduces Fedora 33 and removes some redundant packages.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-12-04 10:42:59 +00:00
Daniel P. Berrangé
3d3f0fbe26 gitlab: move dockerfiles into ci/containers sub-directory
This brings the repo into alignment with the main libvirt.git practice.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-12-04 10:42:59 +00:00
Daniel P. Berrangé
d8c329b024 gitlab: adapt CI rules for libvirt use of meson
Libvirt changed from using autotools to meson, so we need to adapt the
GitLab CI recipe.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-08-19 18:32:24 +01:00
Daniel P. Berrangé
9562e0cbcd ci: adapt for meson 0.55 change in cross compilers
Previously meson searched $PATH for libgcrypt-config, but it no longer
does this for cross-builds.

The dockerfile changes can be dropped when the following hits rawhide
container images:

  https://bugzilla.redhat.com/show_bug.cgi?id=1856446

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-07-13 18:54:11 +01:00
Daniel P. Berrangé
82a0612cc8 gitlab: add coverage of mingw builds
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-06-26 15:50:50 +01:00
Daniel P. Berrangé
a0f4d1490a gitlab: add builds on CentOS 8 Stream
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-06-26 15:50:50 +01:00
Daniel P. Berrangé
aa4482a223 gitlab: refactor recipe for native builds
Currently on every distro we build against the latest git libvirt
and related deps. We need to test multiple axis:

 - A variety of libvirt versions
 - A variety of distro versions

So this changes most jobs to build against the distro provided
libvirt and related deps. The CentOS 8 job is kept building
against latest git master libvirt and deps.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-06-26 15:50:50 +01:00
Daniel P. Berrangé
27ea968c70 gitlab: introduce CI jobs for building on multiple distros
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-05-22 12:22:00 +01:00