1
0
mirror of https://gitlab.com/libvirt/libvirt-python.git synced 2026-01-13 08:32:44 +03:00

24 Commits

Author SHA1 Message Date
Michal Privoznik
4e4f3d9f7a ci: refresh with 'lcitool manifest'
This drops Fedora 41 and introduces Fedora 43.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
2025-11-21 15:27:12 +01:00
Michal Privoznik
0974ca9326 ci: refresh with 'lcitool manifest'
This drops Fedora 40 and introduces Fedora 42 and drops
deprecated setting of env vars in dockerfiles.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
2025-10-06 15:53:59 +02:00
Pavel Hrdina
408815ae68 ci: refresh with 'lcitool manifest'
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2025-02-17 12:14:03 +01:00
Daniel P. Berrangé
5a3729a027 ci: refresh with 'lcitool manifest'
Notable changes

 * openSUSE Leap updated to 15.6
 * Switch to URLs for referencing projects in manifest

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2024-11-18 10:48:05 +00:00
Michal Privoznik
ee54658eb5 ci: Drop CentOS 8 Stream and switch F38 to 40, Ubuntu 20.04 to 22.04
There a lot happening here, but that's because otherwise lcitool
fails to regenerate files. Firstly, CentOS 8 is dropped as it's
unsupported now. Secondly, Fedora 40 is introduced and Fedora 38
is dropped. And lastly, Ubuntu 24.04 is introduced and Ubuntu
20.04 is dropped.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
2024-05-02 15:38:30 +02:00
Daniel P. Berrangé
c647a8ba2a gitlab: stop using a venv when creating source/binary dist
The change to use 'python -m build' in

  commit 333c8bef2b
  Author: Erik Skultety <eskultet@redhat.com>
  Date:   Tue Jun 20 12:19:40 2023 +0200

    ci: Drop direct 'setup.py' usage

resulted in the CI jobs all downloading latest setuptools and
deps from pypi and running builds with them in a venv. IOW we
ceased testing against the setuptools/wheel packages provided
by the distro, which is the whole point of the CI.

Passing the '-n -x' flags to 'python -m build' tells it to stop
using a venv and not to check dependancies, thus letting it
use what we pre-installed in the container.

This doesn't work on CentOS Stream 8, however, so we revert to
using the old setup.py approach. This is a short term issue,
since Stream 8 is EOL at the end of May, so we'll be deleting
all the Stream 8 jobs across libvirt CI very soon.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2024-04-30 10:23:31 +01:00
Daniel P. Berrangé
5b4e4f9a90 ci: refresh with latest lcitool manifest
Fixes logic that caused some jobs to mistakenly not be run
when expected.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2024-04-25 09:53:22 +01:00
Michal Privoznik
acd4f6701d ci: Switch native_git_build_job to c9s and resume api_coverage_job
Currently, there's just one native_git_build_job -
x86_64-centos-stream-8-git and this is a problem because that's
the job that api_coverage_job then uses. But CentOS Stream 8 has
too old lxml which then makes tests/test_api_coverage.py skip its
run. By switching to CentOS Stream 9 the test can run happily
again.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
2024-02-27 16:11:10 +01:00
Daniel P. Berrangé
7fb6a2182c ci: refresh with latest 'lcitool manifest'
This refresh gets rid of the split jobs for prebuilt and local
container environments.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2024-01-19 12:56:32 +00:00
Peter Krempa
11da469020 ci: Install built module for testing insde an venv
Distros recently started to object to using 'pip' to install system-wide
packages to prevent breakage. We were hacking-around that by using
'pip install --break-system-packages', but it's straightforward to
simply create a venv with '--system-site-packages' and install it there.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
2024-01-08 11:56:20 +01:00
Peter Krempa
17d63413de ci: Update Fedora and Debian versions and regenerate
Update:
 Debian-10 -> Debian-12
 Fedora-37 -> Fedora-38
 Fedora-38 -> Fedora-39

Also the artifacts from the Fedora 39 job are needed for the integration
test suite in the main libvirt project.

For Debian 12 we need to start using
'pip install --break-system-packages' as a hack to work around
installation of the built package for testing.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
2024-01-08 11:21:12 +01:00
Erik Skultety
333c8bef2b ci: Drop direct 'setup.py' usage
With all the bits in place we can now drop the 'setup.py' invocations
with preferred alternatives.
This patch does a few things:
- we don't run plain install because that always spins up a new build
  process regardless of whether there are build artifacts literally from
  the previous command, so instead we install the built wheel directly

- when building, we build both the .whl binary and an sdist because
  we'll need the sdist for rpmbuild later in the CI job

- we don't capture the 'build' path as a job artifact anymore, because
  that now only contains egg metadata, all the build artifacts are
  created by Python's build module under 'dist' so we capture that one
  instead

- we always limit pytest to the 'tests' directory which was something
  'setup.py test' used to do as a precaution measure, but setup.py no
  longer has the logic (which is fine)

Signed-off-by: Erik Skultety <eskultet@redhat.com>
2023-06-22 10:52:40 +02:00
Erik Skultety
10f0ad6cef ci: Refresh with latest lcitool changes
- bump OpenSUSE Leap 15.4 -> 15.5
- add python3-build dependency (PEP-517)
- add python3-venv dependency (PEP-517)

Signed-off-by: Erik Skultety <eskultet@redhat.com>
2023-06-21 18:03:14 +02:00
Erik Skultety
fc7022b972 ci: Drop Fedora 36 target
Signed-off-by: Erik Skultety <eskultet@redhat.com>
2023-05-03 09:09:53 +02:00
Erik Skultety
4994b96883 ci: Add Fedora 38 target
Signed-off-by: Erik Skultety <eskultet@redhat.com>
2023-05-03 09:09:53 +02:00
Erik Skultety
f3092b0448 ci: Replace OpenSUSE Leap 15.4 target with Leap 15 name
We now refer to the latest Leap 15.X simply as Leap 15 in lcitool.

Signed-off-by: Erik Skultety <eskultet@redhat.com>
2023-05-03 09:09:53 +02:00
Daniel P. Berrangé
62a4c1f395 ci: pass --break-system-packages on Debian Sid
Debian Sid python packages block users from installing packages using
pip unless using a venv. A venv has no benefit when we are running in
a throwaway container which has no need for software upgrades.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2023-04-19 11:32:03 +01:00
Daniel P. Berrangé
664c347534 ci: mark bleeding edge distros as non-gating
Fedora Rawhide, Debian Sid and OpenSUSE Tumbleweed are all liable to
have sporadic failures due to being bleeding edge distros. Thus they
should not gate contributor changes that are otherwise correct.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2023-04-19 10:25:34 +01:00
Daniel P. Berrangé
6e1351b4c0 ci: regenerated with lcitool manifest
This replaces OpenSUSE Leap 15.3 with 15.4

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2023-04-19 10:23:57 +01:00
Erik Skultety
d75be36877 ci: manifest: Define RPM artifacts for regular CentOS Stream 8 build
Commit 7360326 missed the fact that artifacts were only defined for the
libvirt Git type of libvirt-python build (git is cloned, libvirt is
built and then libvirt-python) based on the
'native_git_build_job_prebuilt_env' job template whereas libvirt CI
expects the RPM artifacts to come from a job based on the
'native_build_job' template instead.

Note that this patch is a hotfix to something which requires a proper
cleanup to stay consistent with the way we're handling the same thing
in libvirt-perl.

Signed-off-by: Erik Skultety <eskultet@redhat.com>
2023-01-06 15:58:57 +01:00
Erik Skultety
7360326272 ci: manifest: Define artifacts cache
After commit 6e0d4d53 we lost RPM artifacts cache breaking the whole
integration CI. The reason for that is that we manually defined the
artifacts cache in gitlab.yml instead of manifest.yml. Naturally with
the next lcitool update, gitlab.yml got overwritten according to
manifest.yml which didn't define any artifacts cache.

Fixes: 6e0d4d53d5

Signed-off-by: Erik Skultety <eskultet@redhat.com>
2023-01-05 08:33:02 +01:00
Erik Skultety
6e0d4d53d5 ci: Refresh and add Fedora 37 target
Signed-off-by: Erik Skultety <eskultet@redhat.com>
2023-01-04 15:06:09 +01:00
Peter Krempa
5b5cd3dacc ci: Expose built RPMs as artifacts
Expose the artifacts from the centos-stream-8/9 and fedora 35/36 jobs so
that the main libvirt integration testing project can consume them.

The new libvirt sub-rpm containing a python helper to access QMP
directly requires python environment which we didn't yet install in the
integration job.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
2022-10-13 08:35:32 +00:00
Daniel P. Berrangé
4733e2a2d1 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 12:24:31 -04:00