From nobody Mon Feb 9 02:12:36 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1588167454; cv=none; d=zohomail.com; s=zohoarc; b=lmr8jyg7Jpol2qiw96fFLv+kGF4TXK0MABP6nOrIFMQ6nwAFaTe5ctUVcWpOhRvAsGS2nQy8Z4mvbkqYiixf9YA4n2RVEb8SJ8QYy0otAi3Tr9TPU4oUcjqRZ7U8yEi64m6W1ZJLjPFUnWu05wdNx5gHuwx4AswpyJV+6HYj9so= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1588167454; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=phew51Pebcl4tnyKSIIv+pUKNpCwLwxpREZba8T6urE=; b=iD+lQfgErwvUSoklqrxW3oVttcc7/Vd45lAcwjH6gCsinH72vggfkpeGoiWkdp/Tmmpqehg8NmB0lSuG5MOXYJBziHZ3/b++ygBrA66HgtLK3g7yfw49X9EtuTEcKezY8SOQkkDuahZQgb6nwmRgYBOo2srAY3eQRjc/ycLqU4I= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1588167454250520.9620138517844; Wed, 29 Apr 2020 06:37:34 -0700 (PDT) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-14-THatz0E9M7mjLuAHRMrpeA-1; Wed, 29 Apr 2020 09:37:29 -0400 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 358D8107B7C3; Wed, 29 Apr 2020 13:37:18 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id C72161002388; Wed, 29 Apr 2020 13:37:17 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 775114CAA8; Wed, 29 Apr 2020 13:37:17 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id 03TDbFbS005123 for ; Wed, 29 Apr 2020 09:37:15 -0400 Received: by smtp.corp.redhat.com (Postfix) id 96FB95D9D3; Wed, 29 Apr 2020 13:37:15 +0000 (UTC) Received: from localhost.localdomain.com (unknown [10.36.110.2]) by smtp.corp.redhat.com (Postfix) with ESMTP id 908815D9C9; Wed, 29 Apr 2020 13:37:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1588167452; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=phew51Pebcl4tnyKSIIv+pUKNpCwLwxpREZba8T6urE=; b=SbG9F69pw0VQOy5PiGqnpkVLuxxErUduMXX0I3Ku85jmEpetoGM/wRlIB1d7NBlHeKNrx6 KXqqoQX2bunJILjyF9/fWFyItuAE9l4kmKTARLEsOkTxqguKcnGvEP7lnc67tvRojFL+pQ W3V2Ks9GWjudlTRjkHPEiJXgSsNDvsQ= X-MC-Unique: THatz0E9M7mjLuAHRMrpeA-1 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= To: libvir-list@redhat.com Subject: [libvirt-python PATCH 2/3] gitlab: introduce CI jobs testing git master & distro libvirt Date: Wed, 29 Apr 2020 14:36:59 +0100 Message-Id: <20200429133700.1628543-3-berrange@redhat.com> In-Reply-To: <20200429133700.1628543-1-berrange@redhat.com> References: <20200429133700.1628543-1-berrange@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-loop: libvir-list@redhat.com X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" The python build needs to validate two axis - A variety of libvirt versions - A variety of python versions We get coverage for both these axis by running a build against the distro provided libvirt packages. All that is then missing is a build against the latest libvirt git master, which only needs to be run on a single distro, for which CentOS 8 is picked as a stable long life base. Signed-off-by: Daniel P. Berrang=C3=A9 --- .gitlab-ci.yml | 172 ++++++++++++++++++++++++++++++++++ ci/libvirt-centos-7.dkr | 85 +++++++++++++++++ ci/libvirt-centos-8.dkr | 64 +++++++++++++ ci/libvirt-debian-10.dkr | 55 +++++++++++ ci/libvirt-debian-9.dkr | 58 ++++++++++++ ci/libvirt-debian-sid.dkr | 55 +++++++++++ ci/libvirt-fedora-30.dkr | 52 ++++++++++ ci/libvirt-fedora-31.dkr | 52 ++++++++++ ci/libvirt-fedora-rawhide.dkr | 53 +++++++++++ ci/libvirt-opensuse-151.dkr | 54 +++++++++++ ci/libvirt-ubuntu-1604.dkr | 58 ++++++++++++ ci/libvirt-ubuntu-1804.dkr | 58 ++++++++++++ ci/refresh | 21 +++++ 13 files changed, 837 insertions(+) create mode 100644 .gitlab-ci.yml create mode 100644 ci/libvirt-centos-7.dkr create mode 100644 ci/libvirt-centos-8.dkr create mode 100644 ci/libvirt-debian-10.dkr create mode 100644 ci/libvirt-debian-9.dkr create mode 100644 ci/libvirt-debian-sid.dkr create mode 100644 ci/libvirt-fedora-30.dkr create mode 100644 ci/libvirt-fedora-31.dkr create mode 100644 ci/libvirt-fedora-rawhide.dkr create mode 100644 ci/libvirt-opensuse-151.dkr create mode 100644 ci/libvirt-ubuntu-1604.dkr create mode 100644 ci/libvirt-ubuntu-1804.dkr create mode 100755 ci/refresh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..bfcd31c --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,172 @@ + +stages: + - prebuild + - containers + - build + - docs + +.container_job_template: &container_job_definition + image: docker:stable + stage: containers + services: + - docker:dind + before_script: + - export TAG=3D"${CI_REGISTRY_IMAGE}/buildenv-${NAME}:latest" + - export COMMON_TAG=3D"${CI_REGISTRY}/libvirt/libvirt-perl/buildenv-${= NAME}:latest" + - docker info + - docker login registry.gitlab.com -u ${CI_REGISTRY_USER} -p ${CI_REGI= STRY_PASSWORD} + script: + - docker pull ${TAG} || docker pull ${COMMON_TAG} || true + - docker build --cache-from ${TAG} --cache-from ${COMMON_TAG} --tag ${= TAG} -f ci/libvirt-${NAME}.dkr ci + - docker push ${TAG} + after_script: + - docker logout + +.build_git_job_template: &build_git_job_definition + stage: build + before_script: + - export MAKEFLAGS=3D"-j$(getconf _NPROCESSORS_ONLN)" + - export SCRATCH_DIR=3D"/tmp/scratch" + - export VROOT=3D"${SCRATCH_DIR}/vroot" + - export LD_LIBRARY_PATH=3D"${VROOT}/lib" + - export PATH=3D"${PATH}:${VROOT}/bin" + - export PKG_CONFIG_PATH=3D"${VROOT}/lib/pkgconfig" + script: + - pushd ${PWD} + - mkdir -p ${SCRATCH_DIR} + - cd ${SCRATCH_DIR} + - git clone --depth 1 https://gitlab.com/libvirt/libvirt.git src + - mkdir build + - cd build + - ../src/autogen.sh --prefix=3D${VROOT} --without-libvirtd + - make install + - popd + - ${PYTHON} setup.py build + - ${PYTHON} setup.py test + +.build_dist_job_template: &build_dist_job_definition + stage: build + before_script: + - export MAKEFLAGS=3D"-j$(getconf _NPROCESSORS_ONLN)" + - export TEST_MAINTAINER=3D1 + script: + - ${PYTHON} setup.py build + - ${PYTHON} setup.py test + +# Check that all commits are signed-off for the DCO. +# Skip on "libvirt" namespace, since we only need to run +# this test on developer's personal forks from which +# merge requests are submitted +check-dco: + stage: prebuild + image: registry.gitlab.com/libvirt/libvirt-ci/check-dco:master + script: + - /check-dco + except: + variables: + - $CI_PROJECT_NAMESPACE =3D=3D 'libvirt' + +ctr-centos-7: + <<: *container_job_definition + variables: + NAME: centos-7 + +ctr-centos-8: + <<: *container_job_definition + variables: + NAME: centos-8 + +ctr-debian-9: + <<: *container_job_definition + variables: + NAME: debian-9 + +ctr-debian-10: + <<: *container_job_definition + variables: + NAME: debian-10 + +ctr-debian-sid: + <<: *container_job_definition + variables: + NAME: debian-sid + +ctr-fedora-30: + <<: *container_job_definition + variables: + NAME: fedora-30 + +ctr-fedora-31: + <<: *container_job_definition + variables: + NAME: fedora-31 + +ctr-fedora-rawhide: + <<: *container_job_definition + variables: + NAME: fedora-rawhide + +ctr-opensuse-151: + <<: *container_job_definition + variables: + NAME: opensuse-151 + +ctr-ubuntu-1604: + <<: *container_job_definition + variables: + NAME: ubuntu-1604 + +ctr-ubuntu-1804: + <<: *container_job_definition + variables: + NAME: ubuntu-1804 + + +build-git-centos-8: + <<: *build_git_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-centos-8:latest + + +build-dist-centos-7: + <<: *build_dist_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-centos-7:latest + +build-dist-centos-8: + <<: *build_dist_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-centos-8:latest + +build-dist-debian-9: + <<: *build_dist_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-debian-9:latest + +build-dist-debian-10: + <<: *build_dist_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-debian-10:latest + +build-dist-debian-sid: + <<: *build_dist_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-debian-sid:latest + +build-dist-fedora-30: + <<: *build_dist_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-fedora-30:latest + +build-dist-fedora-31: + <<: *build_dist_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-fedora-31:latest + +build-dist-fedora-rawhide: + <<: *build_dist_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-fedora-rawhide:latest + +build-dist-opensuse-151: + <<: *build_dist_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-opensuse-151:latest + +build-dist-ubuntu-1604: + <<: *build_dist_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-ubuntu-1604:latest + +build-dist-ubuntu-1804: + <<: *build_dist_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-ubuntu-1804:latest diff --git a/ci/libvirt-centos-7.dkr b/ci/libvirt-centos-7.dkr new file mode 100644 index 0000000..9ff638b --- /dev/null +++ b/ci/libvirt-centos-7.dkr @@ -0,0 +1,85 @@ +FROM centos:7 + +RUN echo -e '[openvz]\n\ +name=3DOpenVZ addons\n\ +baseurl=3Dhttps://download.openvz.org/virtuozzo/releases/openvz-7.0.11-235= /x86_64/os/\n\ +enabled=3D1\n\ +gpgcheck=3D1\n\ +skip_if_unavailable=3D0\n\ +metadata_expire=3D6h\n\ +priority=3D90\n\ +includepkgs=3Dlibprl*' > /etc/yum.repos.d/openvz.repo && \ + echo -e '-----BEGIN PGP PUBLIC KEY BLOCK-----\n\ +Version: GnuPG v2.0.22 (GNU/Linux)\n\ +\n\ +mI0EVl80nQEEAKrEeyeTCwrzS9kYedZ/sAc/GUqlb81C7pA9SaR3fyck5mVw1Ogk\n\ +YdmNBPM2kY7QDxR9F0EpSpnxSCAXZXugsQ8KzZ0DRLVeBDQyGs9IGK5hI0zzxIil\n\ +BzfvIexLiQQhLy7YlIi8Jt/uUqKkW0pIMNMGcduY97VATtczpncpkmSzABEBAAG0\n\ +SFZpcnR1b3p6byBUZWFtIChHUEcga2V5IHNpZ25hdHVyZSBmb3IgcGFja2FnZXMp\n\ +IDxzZWN1cml0eUB2aXJ0dW96em8uY29tPoi5BBMBAgAjBQJWXzSdAhsDBwsJCAcD\n\ +AgEGFQgCCQoLBBYCAwECHgECF4AACgkQygt9GUTNrSruIgP/er70Eyo73A1gfrjv\n\ +oPUkyo4rslVRZu3qqCwoMFtJc/Z/UxWgEka1buorlcGLa6eO/EZ49c0n+KGa4Kvt\n\ +EUboIq0yEu5i0FyAj92ifm+hNhoAbGfm0cZ4/fD0oGr3l8OsQo4+iHX4xAPwFe7Y\n\ +zABuB8I1ZDZ4OIp5tDfTTuF2LT24jQRWXzSdAQQAog2Aqb+Ptl68O7cQhWLjVGkj\n\ +yyigZrdeReLx3HloKJPBeQ/kA6uvMJc/IYS3uppMWXv9v+QenS6uhP1TUJ2k9FvM\n\ +t94MQZfALN7Vpf8AF+UeWu4Ru+y4BNzcFhrPhIFNFChOR2QqW6FkgE57D9I177NC\n\ +oJMyrlNe8wcGa178An8AEQEAAYifBBgBAgAJBQJWXzSdAhsMAAoJEMoLfRlEza0q\n\ +bKwD/3+OFVIEXnIv5XgdGRNX5fHggsUN1bb8gva7HANRlKdd4LD8foDM3F/yv/3V\n\ +igG14D5EjKz56SaBDNgiI4++hOzb2M8jhAsR86jxkXFrrP1U3ZNRKg6av9DPFAPS\n\ +WEiJKtQrZDJloqtyi/mmRa1VsV7RYR0VPJjhK/R8EQ7Ysshy\n\ +=3DfRMg\n\ +-----END PGP PUBLIC KEY BLOCK-----' > /etc/pki/rpm-gpg/RPM-GPG-KEY-OpenVZ = && \ + rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-OpenVZ && \ + yum install -y epel-release && \ + yum update -y && \ + yum install -y \ + autoconf \ + automake \ + bash \ + bash-completion \ + ca-certificates \ + ccache \ + chrony \ + gcc \ + gdb \ + gettext \ + gettext-devel \ + git \ + glibc-common \ + glibc-devel \ + libtool \ + libvirt-devel \ + lsof \ + make \ + net-tools \ + ninja-build \ + patch \ + perl \ + pkgconfig \ + python3 \ + python3-pip \ + python3-setuptools \ + python36-devel \ + python36-lxml \ + python36-nose \ + rpm-build \ + screen \ + strace \ + sudo \ + vim && \ + yum autoremove -y && \ + yum clean all -y && \ + 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/$(basename /usr/bin= /gcc) + +RUN pip3 install \ + meson=3D=3D0.49.0 + +ENV LANG "en_US.UTF-8" + +ENV MAKE "/usr/bin/make" +ENV NINJA "/usr/bin/ninja-build" +ENV PYTHON "/usr/bin/python3" + +ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" diff --git a/ci/libvirt-centos-8.dkr b/ci/libvirt-centos-8.dkr new file mode 100644 index 0000000..bf3ec47 --- /dev/null +++ b/ci/libvirt-centos-8.dkr @@ -0,0 +1,64 @@ +FROM centos:8 + +RUN dnf install 'dnf-command(config-manager)' -y && \ + dnf config-manager --set-enabled PowerTools -y && \ + dnf install -y epel-release && \ + dnf update -y && \ + dnf install -y \ + autoconf \ + automake \ + bash \ + bash-completion \ + ca-certificates \ + ccache \ + chrony \ + gcc \ + gdb \ + gettext \ + gettext-devel \ + git \ + glib2-devel \ + glibc-devel \ + glibc-langpack-en \ + gnutls-devel \ + libnl3-devel \ + libpcap-devel \ + libtirpc-devel \ + libtool \ + libvirt-devel \ + libxml2 \ + libxml2-devel \ + libxslt \ + lsof \ + make \ + meson \ + net-tools \ + ninja-build \ + patch \ + perl \ + pkgconfig \ + python3 \ + python3-devel \ + python3-docutils \ + python3-lxml \ + python3-nose \ + python3-setuptools \ + rpcgen \ + rpm-build \ + screen \ + strace \ + sudo \ + vim && \ + dnf autoremove -y && \ + dnf clean all -y && \ + 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/$(basename /usr/bin= /gcc) + +ENV LANG "en_US.UTF-8" + +ENV MAKE "/usr/bin/make" +ENV NINJA "/usr/bin/ninja" +ENV PYTHON "/usr/bin/python3" + +ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" diff --git a/ci/libvirt-debian-10.dkr b/ci/libvirt-debian-10.dkr new file mode 100644 index 0000000..7d98dac --- /dev/null +++ b/ci/libvirt-debian-10.dkr @@ -0,0 +1,55 @@ +FROM debian:10 + +RUN export DEBIAN_FRONTEND=3Dnoninteractive && \ + apt-get update && \ + apt-get dist-upgrade -y && \ + apt-get install --no-install-recommends -y \ + autoconf \ + automake \ + autopoint \ + bash \ + bash-completion \ + ca-certificates \ + ccache \ + chrony \ + gcc \ + gdb \ + gettext \ + git \ + libc6-dev \ + libtool \ + libtool-bin \ + libvirt-dev \ + locales \ + lsof \ + make \ + meson \ + net-tools \ + ninja-build \ + patch \ + perl \ + pkgconf \ + python3 \ + python3-dev \ + python3-lxml \ + python3-nose \ + python3-setuptools \ + screen \ + strace \ + sudo \ + vim && \ + apt-get autoremove -y && \ + apt-get autoclean -y && \ + sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \ + dpkg-reconfigure locales && \ + 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/$(basename /usr/bin= /gcc) + +ENV LANG "en_US.UTF-8" + +ENV MAKE "/usr/bin/make" +ENV NINJA "/usr/bin/ninja" +ENV PYTHON "/usr/bin/python3" + +ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" diff --git a/ci/libvirt-debian-9.dkr b/ci/libvirt-debian-9.dkr new file mode 100644 index 0000000..1c565fa --- /dev/null +++ b/ci/libvirt-debian-9.dkr @@ -0,0 +1,58 @@ +FROM debian:9 + +RUN export DEBIAN_FRONTEND=3Dnoninteractive && \ + apt-get update && \ + apt-get dist-upgrade -y && \ + apt-get install --no-install-recommends -y \ + autoconf \ + automake \ + autopoint \ + bash \ + bash-completion \ + ca-certificates \ + ccache \ + chrony \ + gcc \ + gdb \ + gettext \ + git \ + libc6-dev \ + libtool \ + libtool-bin \ + libvirt-dev \ + locales \ + lsof \ + make \ + net-tools \ + ninja-build \ + patch \ + perl \ + pkgconf \ + python3 \ + python3-dev \ + python3-lxml \ + python3-nose \ + python3-pip \ + python3-setuptools \ + screen \ + strace \ + sudo \ + vim && \ + apt-get autoremove -y && \ + apt-get autoclean -y && \ + sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \ + dpkg-reconfigure locales && \ + 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/$(basename /usr/bin= /gcc) + +RUN pip3 install \ + meson=3D=3D0.49.0 + +ENV LANG "en_US.UTF-8" + +ENV MAKE "/usr/bin/make" +ENV NINJA "/usr/bin/ninja" +ENV PYTHON "/usr/bin/python3" + +ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" diff --git a/ci/libvirt-debian-sid.dkr b/ci/libvirt-debian-sid.dkr new file mode 100644 index 0000000..a9f0ee4 --- /dev/null +++ b/ci/libvirt-debian-sid.dkr @@ -0,0 +1,55 @@ +FROM debian:sid + +RUN export DEBIAN_FRONTEND=3Dnoninteractive && \ + apt-get update && \ + apt-get dist-upgrade -y && \ + apt-get install --no-install-recommends -y \ + autoconf \ + automake \ + autopoint \ + bash \ + bash-completion \ + ca-certificates \ + ccache \ + chrony \ + gcc \ + gdb \ + gettext \ + git \ + libc6-dev \ + libtool \ + libtool-bin \ + libvirt-dev \ + locales \ + lsof \ + make \ + meson \ + net-tools \ + ninja-build \ + patch \ + perl \ + pkgconf \ + python3 \ + python3-dev \ + python3-lxml \ + python3-nose \ + python3-setuptools \ + screen \ + strace \ + sudo \ + vim && \ + apt-get autoremove -y && \ + apt-get autoclean -y && \ + sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \ + dpkg-reconfigure locales && \ + 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/$(basename /usr/bin= /gcc) + +ENV LANG "en_US.UTF-8" + +ENV MAKE "/usr/bin/make" +ENV NINJA "/usr/bin/ninja" +ENV PYTHON "/usr/bin/python3" + +ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" diff --git a/ci/libvirt-fedora-30.dkr b/ci/libvirt-fedora-30.dkr new file mode 100644 index 0000000..63cd0f2 --- /dev/null +++ b/ci/libvirt-fedora-30.dkr @@ -0,0 +1,52 @@ +FROM fedora:30 + +RUN dnf update -y && \ + dnf install -y \ + autoconf \ + automake \ + bash \ + bash-completion \ + ca-certificates \ + ccache \ + chrony \ + cppi \ + gcc \ + gdb \ + gettext \ + gettext-devel \ + git \ + glibc-devel \ + glibc-langpack-en \ + libtool \ + libvirt-devel \ + lsof \ + make \ + meson \ + net-tools \ + ninja-build \ + patch \ + perl \ + pkgconfig \ + python3 \ + python3-devel \ + python3-lxml \ + python3-nose \ + python3-setuptools \ + rpm-build \ + screen \ + strace \ + sudo \ + vim && \ + dnf autoremove -y && \ + dnf clean all -y && \ + 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/$(basename /usr/bin= /gcc) + +ENV LANG "en_US.UTF-8" + +ENV MAKE "/usr/bin/make" +ENV NINJA "/usr/bin/ninja" +ENV PYTHON "/usr/bin/python3" + +ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" diff --git a/ci/libvirt-fedora-31.dkr b/ci/libvirt-fedora-31.dkr new file mode 100644 index 0000000..3307e5c --- /dev/null +++ b/ci/libvirt-fedora-31.dkr @@ -0,0 +1,52 @@ +FROM fedora:31 + +RUN dnf update -y && \ + dnf install -y \ + autoconf \ + automake \ + bash \ + bash-completion \ + ca-certificates \ + ccache \ + chrony \ + cppi \ + gcc \ + gdb \ + gettext \ + gettext-devel \ + git \ + glibc-devel \ + glibc-langpack-en \ + libtool \ + libvirt-devel \ + lsof \ + make \ + meson \ + net-tools \ + ninja-build \ + patch \ + perl \ + pkgconfig \ + python3 \ + python3-devel \ + python3-lxml \ + python3-nose \ + python3-setuptools \ + rpm-build \ + screen \ + strace \ + sudo \ + vim && \ + dnf autoremove -y && \ + dnf clean all -y && \ + 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/$(basename /usr/bin= /gcc) + +ENV LANG "en_US.UTF-8" + +ENV MAKE "/usr/bin/make" +ENV NINJA "/usr/bin/ninja" +ENV PYTHON "/usr/bin/python3" + +ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" diff --git a/ci/libvirt-fedora-rawhide.dkr b/ci/libvirt-fedora-rawhide.dkr new file mode 100644 index 0000000..475c757 --- /dev/null +++ b/ci/libvirt-fedora-rawhide.dkr @@ -0,0 +1,53 @@ +FROM fedora:rawhide + +RUN dnf update -y --nogpgcheck fedora-gpg-keys && \ + dnf update -y && \ + dnf install -y \ + autoconf \ + automake \ + bash \ + bash-completion \ + ca-certificates \ + ccache \ + chrony \ + cppi \ + gcc \ + gdb \ + gettext \ + gettext-devel \ + git \ + glibc-devel \ + glibc-langpack-en \ + libtool \ + libvirt-devel \ + lsof \ + make \ + meson \ + net-tools \ + ninja-build \ + patch \ + perl \ + pkgconfig \ + python3 \ + python3-devel \ + python3-lxml \ + python3-nose \ + python3-setuptools \ + rpm-build \ + screen \ + strace \ + sudo \ + vim && \ + dnf autoremove -y && \ + dnf clean all -y && \ + 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/$(basename /usr/bin= /gcc) + +ENV LANG "en_US.UTF-8" + +ENV MAKE "/usr/bin/make" +ENV NINJA "/usr/bin/ninja" +ENV PYTHON "/usr/bin/python3" + +ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" diff --git a/ci/libvirt-opensuse-151.dkr b/ci/libvirt-opensuse-151.dkr new file mode 100644 index 0000000..526aadf --- /dev/null +++ b/ci/libvirt-opensuse-151.dkr @@ -0,0 +1,54 @@ +FROM opensuse/leap:15.1 + +RUN zypper update -y && \ + zypper install -y \ + autoconf \ + automake \ + bash \ + bash-completion \ + ca-certificates \ + ccache \ + chrony \ + cppi \ + gcc \ + gdb \ + gettext \ + gettext-devel \ + git \ + glibc-devel \ + glibc-locale \ + libtool \ + libvirt-devel \ + lsof \ + make \ + net-tools \ + ninja \ + patch \ + perl \ + pkgconfig \ + python3 \ + python3-devel \ + python3-lxml \ + python3-nose \ + python3-pip \ + python3-setuptools \ + rpm-build \ + screen \ + strace \ + sudo \ + vim && \ + zypper clean --all && \ + 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/$(basename /usr/bin= /gcc) + +RUN pip3 install \ + meson=3D=3D0.49.0 + +ENV LANG "en_US.UTF-8" + +ENV MAKE "/usr/bin/make" +ENV NINJA "/usr/bin/ninja" +ENV PYTHON "/usr/bin/python3" + +ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" diff --git a/ci/libvirt-ubuntu-1604.dkr b/ci/libvirt-ubuntu-1604.dkr new file mode 100644 index 0000000..9652cf7 --- /dev/null +++ b/ci/libvirt-ubuntu-1604.dkr @@ -0,0 +1,58 @@ +FROM ubuntu:16.04 + +RUN export DEBIAN_FRONTEND=3Dnoninteractive && \ + apt-get update && \ + apt-get dist-upgrade -y && \ + apt-get install --no-install-recommends -y \ + autoconf \ + automake \ + autopoint \ + bash \ + bash-completion \ + ca-certificates \ + ccache \ + chrony \ + gcc \ + gdb \ + gettext \ + git \ + libc6-dev \ + libtool \ + libtool-bin \ + libvirt-dev \ + locales \ + lsof \ + make \ + net-tools \ + ninja-build \ + patch \ + perl \ + pkgconf \ + python3 \ + python3-dev \ + python3-lxml \ + python3-nose \ + python3-pip \ + python3-setuptools \ + screen \ + strace \ + sudo \ + vim && \ + apt-get autoremove -y && \ + apt-get autoclean -y && \ + sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \ + dpkg-reconfigure locales && \ + 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/$(basename /usr/bin= /gcc) + +RUN pip3 install \ + meson=3D=3D0.49.0 + +ENV LANG "en_US.UTF-8" + +ENV MAKE "/usr/bin/make" +ENV NINJA "/usr/bin/ninja" +ENV PYTHON "/usr/bin/python3" + +ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" diff --git a/ci/libvirt-ubuntu-1804.dkr b/ci/libvirt-ubuntu-1804.dkr new file mode 100644 index 0000000..7ec35d8 --- /dev/null +++ b/ci/libvirt-ubuntu-1804.dkr @@ -0,0 +1,58 @@ +FROM ubuntu:18.04 + +RUN export DEBIAN_FRONTEND=3Dnoninteractive && \ + apt-get update && \ + apt-get dist-upgrade -y && \ + apt-get install --no-install-recommends -y \ + autoconf \ + automake \ + autopoint \ + bash \ + bash-completion \ + ca-certificates \ + ccache \ + chrony \ + gcc \ + gdb \ + gettext \ + git \ + libc6-dev \ + libtool \ + libtool-bin \ + libvirt-dev \ + locales \ + lsof \ + make \ + net-tools \ + ninja-build \ + patch \ + perl \ + pkgconf \ + python3 \ + python3-dev \ + python3-lxml \ + python3-nose \ + python3-pip \ + python3-setuptools \ + screen \ + strace \ + sudo \ + vim && \ + apt-get autoremove -y && \ + apt-get autoclean -y && \ + sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \ + dpkg-reconfigure locales && \ + 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/$(basename /usr/bin= /gcc) + +RUN pip3 install \ + meson=3D=3D0.49.0 + +ENV LANG "en_US.UTF-8" + +ENV MAKE "/usr/bin/make" +ENV NINJA "/usr/bin/ninja" +ENV PYTHON "/usr/bin/python3" + +ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" diff --git a/ci/refresh b/ci/refresh new file mode 100755 index 0000000..2e7b3be --- /dev/null +++ b/ci/refresh @@ -0,0 +1,21 @@ +#!/bin/sh + +if test -z "$1" +then + echo "syntax: $0 PATH-TO-LCITOOL" + exit 1 +fi + +LCITOOL=3D$1 + +HOSTS=3D$(${LCITOOL} hosts | grep -v freebsd) + +for host in ${HOSTS} +do + if test "$host" =3D=3D "libvirt-centos-8" + then + ${LCITOOL} dockerfile $host libvirt-minimal,libvirt-dist,libvirt-python >= $host.dkr + else + ${LCITOOL} dockerfile $host libvirt-dist,libvirt-python > $host.dkr + fi +done --=20 2.25.4