Signed-off-by: Erik Skultety <eskultet@xxxxxxxxxx> --- ci/buildenv/fedora-38.sh | 96 +++++++++++++++++++++++++ ci/containers/fedora-38.Dockerfile | 108 +++++++++++++++++++++++++++++ ci/gitlab/builds.yml | 26 +++++++ ci/gitlab/containers.yml | 7 ++ ci/integration.yml | 40 +++++++++++ ci/manifest.yml | 8 +++ 6 files changed, 285 insertions(+) create mode 100644 ci/buildenv/fedora-38.sh create mode 100644 ci/containers/fedora-38.Dockerfile diff --git a/ci/buildenv/fedora-38.sh b/ci/buildenv/fedora-38.sh new file mode 100644 index 0000000000..23886ae77c --- /dev/null +++ b/ci/buildenv/fedora-38.sh @@ -0,0 +1,96 @@ +# THIS FILE WAS AUTO-GENERATED +# +# $ lcitool manifest ci/manifest.yml +# +# https://gitlab.com/libvirt/libvirt-ci + +function install_buildenv() { + dnf update -y + dnf install -y \ + audit-libs-devel \ + augeas \ + bash-completion \ + ca-certificates \ + ccache \ + clang \ + codespell \ + cpp \ + cppi \ + cyrus-sasl-devel \ + device-mapper-devel \ + diffutils \ + dwarves \ + ebtables \ + firewalld-filesystem \ + fuse-devel \ + gcc \ + gettext \ + git \ + glib2-devel \ + glibc-devel \ + glibc-langpack-en \ + glusterfs-api-devel \ + gnutls-devel \ + grep \ + iproute \ + iproute-tc \ + iptables \ + iscsi-initiator-utils \ + kmod \ + libacl-devel \ + libattr-devel \ + libblkid-devel \ + libcap-ng-devel \ + libcurl-devel \ + libiscsi-devel \ + libnl3-devel \ + libpcap-devel \ + libpciaccess-devel \ + librbd-devel \ + libselinux-devel \ + libssh-devel \ + libssh2-devel \ + libtirpc-devel \ + libwsman-devel \ + libxml2 \ + libxml2-devel \ + libxslt \ + lvm2 \ + make \ + meson \ + nfs-utils \ + ninja-build \ + numactl-devel \ + numad \ + parted-devel \ + perl-base \ + pkgconfig \ + polkit \ + python3 \ + python3-docutils \ + python3-flake8 \ + qemu-img \ + readline-devel \ + rpcgen \ + rpm-build \ + sanlock-devel \ + scrub \ + sed \ + systemd-devel \ + systemd-rpm-macros \ + systemtap-sdt-devel \ + wireshark-devel \ + xen-devel \ + yajl-devel + rpm -qa | sort > /packages.txt + mkdir -p /usr/libexec/ccache-wrappers + ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc + ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang + ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc +} + +export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers" +export LANG="en_US.UTF-8" +export MAKE="/usr/bin/make" +export NINJA="/usr/bin/ninja" +export PYTHON="/usr/bin/python3" diff --git a/ci/containers/fedora-38.Dockerfile b/ci/containers/fedora-38.Dockerfile new file mode 100644 index 0000000000..0b67a56b80 --- /dev/null +++ b/ci/containers/fedora-38.Dockerfile @@ -0,0 +1,108 @@ +# THIS FILE WAS AUTO-GENERATED +# +# $ lcitool manifest ci/manifest.yml +# +# https://gitlab.com/libvirt/libvirt-ci + +FROM registry.fedoraproject.org/fedora:38 + +RUN dnf install -y nosync && \ + printf '#!/bin/sh\n\ +if test -d /usr/lib64\n\ +then\n\ + export LD_PRELOAD=/usr/lib64/nosync/nosync.so\n\ +else\n\ + export LD_PRELOAD=/usr/lib/nosync/nosync.so\n\ +fi\n\ +exec "$@"\n' > /usr/bin/nosync && \ + chmod +x /usr/bin/nosync && \ + nosync dnf update -y && \ + nosync dnf install -y \ + audit-libs-devel \ + augeas \ + bash-completion \ + ca-certificates \ + ccache \ + clang \ + codespell \ + cpp \ + cppi \ + cyrus-sasl-devel \ + device-mapper-devel \ + diffutils \ + dwarves \ + ebtables \ + firewalld-filesystem \ + fuse-devel \ + gcc \ + gettext \ + git \ + glib2-devel \ + glibc-devel \ + glibc-langpack-en \ + glusterfs-api-devel \ + gnutls-devel \ + grep \ + iproute \ + iproute-tc \ + iptables \ + iscsi-initiator-utils \ + kmod \ + libacl-devel \ + libattr-devel \ + libblkid-devel \ + libcap-ng-devel \ + libcurl-devel \ + libiscsi-devel \ + libnl3-devel \ + libpcap-devel \ + libpciaccess-devel \ + librbd-devel \ + libselinux-devel \ + libssh-devel \ + libssh2-devel \ + libtirpc-devel \ + libwsman-devel \ + libxml2 \ + libxml2-devel \ + libxslt \ + lvm2 \ + make \ + meson \ + nfs-utils \ + ninja-build \ + numactl-devel \ + numad \ + parted-devel \ + perl-base \ + pkgconfig \ + polkit \ + python3 \ + python3-docutils \ + python3-flake8 \ + qemu-img \ + readline-devel \ + rpcgen \ + rpm-build \ + sanlock-devel \ + scrub \ + sed \ + systemd-devel \ + systemd-rpm-macros \ + systemtap-sdt-devel \ + wireshark-devel \ + xen-devel \ + yajl-devel && \ + nosync dnf autoremove -y && \ + nosync dnf clean all -y && \ + rpm -qa | sort > /packages.txt && \ + mkdir -p /usr/libexec/ccache-wrappers && \ + ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc && \ + ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \ + ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc + +ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" +ENV LANG "en_US.UTF-8" +ENV MAKE "/usr/bin/make" +ENV NINJA "/usr/bin/ninja" +ENV PYTHON "/usr/bin/python3" diff --git a/ci/gitlab/builds.yml b/ci/gitlab/builds.yml index 258d7a1da7..49c95143a3 100644 --- a/ci/gitlab/builds.yml +++ b/ci/gitlab/builds.yml @@ -245,6 +245,32 @@ x86_64-fedora-37-local-env: - libvirt-rpms +x86_64-fedora-38-prebuilt-env: + extends: .native_build_job_prebuilt_env + needs: + - job: x86_64-fedora-38-container + optional: true + allow_failure: false + variables: + NAME: fedora-38 + artifacts: + expire_in: 1 day + paths: + - libvirt-rpms + +x86_64-fedora-38-local-env: + extends: .native_build_job_local_env + needs: [] + allow_failure: false + variables: + IMAGE: registry.fedoraproject.org/fedora:38 + NAME: fedora-38 + artifacts: + expire_in: 1 day + paths: + - libvirt-rpms + + x86_64-fedora-rawhide-prebuilt-env: extends: .native_build_job_prebuilt_env needs: diff --git a/ci/gitlab/containers.yml b/ci/gitlab/containers.yml index 5a02843ed9..d3bffa3b6c 100644 --- a/ci/gitlab/containers.yml +++ b/ci/gitlab/containers.yml @@ -70,6 +70,13 @@ x86_64-fedora-37-container: NAME: fedora-37 +x86_64-fedora-38-container: + extends: .container_job + allow_failure: false + variables: + NAME: fedora-38 + + x86_64-fedora-rawhide-container: extends: .container_job allow_failure: true diff --git a/ci/integration.yml b/ci/integration.yml index 2bdda1d3c1..5c0071d072 100644 --- a/ci/integration.yml +++ b/ci/integration.yml @@ -161,6 +161,46 @@ fedora-37-tests-local-env: artifacts: true +.fedora-38-tests: + variables: + # needed by libvirt-gitlab-executor + DISTRO: fedora-38 + # can be overridden in forks to set a different runner tag + LIBVIRT_CI_INTEGRATION_RUNNER_TAG: redhat-vm-host + tags: + - $LIBVIRT_CI_INTEGRATION_RUNNER_TAG + +fedora-38-tests-prebuilt-env: + extends: + - .integration_tests_prebuilt_env + - .fedora-38-tests + needs: + - x86_64-fedora-38-prebuilt-env + - project: libvirt/libvirt-perl + job: x86_64-fedora-38-prebuilt-env + ref: master + artifacts: true + - project: libvirt/libvirt-python + job: x86_64-fedora-38-prebuilt-env + ref: master + artifacts: true + +fedora-38-tests-local-env: + extends: + - .integration_tests_local_env + - .fedora-38-tests + needs: + - x86_64-fedora-38-local-env + - project: libvirt/libvirt-perl + job: x86_64-fedora-38-prebuilt-env + ref: master + artifacts: true + - project: libvirt/libvirt-python + job: x86_64-fedora-38-prebuilt-env + ref: master + artifacts: true + + .fedora-37-upstream-qemu-tests: variables: # needed by libvirt-gitlab-executor diff --git a/ci/manifest.yml b/ci/manifest.yml index 82b8463605..400e048e2b 100644 --- a/ci/manifest.yml +++ b/ci/manifest.yml @@ -137,6 +137,14 @@ targets: - arch: mingw64 + fedora-38: + jobs: + - arch: x86_64 + artifacts: + expire_in: 1 day + paths: + - libvirt-rpms + fedora-rawhide: jobs: - arch: x86_64 -- 2.40.0