From nobody Sat May 4 18:18:24 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 207.211.31.81 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=1587641931; cv=none; d=zohomail.com; s=zohoarc; b=aLllWijHQuRLQSjM4E9LuFHuyjXwGGASElOnVTWhTxU4VP+SVzK7PJKbkhfW1uv9hl+7DcArZ0+qnwzJDDR0Hc/NHRzCrxuo+PXbw8xHwu+f/bYqLWi5GavvvrFR2WdyjV9Z10gSQoJjcZDylkIk+75NpdQkDDEYOpjJbWU0DuY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1587641931; 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=8USLcaER+Tjbye/Pc2g7+sqRDMDmokQrcuPBiZscYu4=; b=AKWvkXUmvJmP1qbuNnlj6NDfiqiSfsf+VYjOTUAJigTuSPQ0NdhqXK255Ezg0zIvcXaYExvpyIRs2Vqc4Ro0QKc6zSgqMuYMjC7N7s+1YYj6jfoWhvCzwFe8I3xW61CqORDb1ZTs3nJ8I8dKRe461RRtqfP2EQv5g+RHub3oYgA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 207.211.31.81 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-delivery-1.mimecast.com (us-smtp-2.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1587641931580963.432278762963; Thu, 23 Apr 2020 04:38:51 -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-27-rPo2-PH4PFOfe0ENH5rq5g-1; Thu, 23 Apr 2020 07:38:48 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 934EB800D24; Thu, 23 Apr 2020 11:38:42 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5F27D5C1BD; Thu, 23 Apr 2020 11:38:42 +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 EE6C51809542; Thu, 23 Apr 2020 11:38:41 +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 03NBcaDu022122 for ; Thu, 23 Apr 2020 07:38:36 -0400 Received: by smtp.corp.redhat.com (Postfix) id 23CBD5DA2C; Thu, 23 Apr 2020 11:38:36 +0000 (UTC) Received: from localhost.localdomain.com (unknown [10.36.110.58]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4F5705DA66; Thu, 23 Apr 2020 11:38:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1587641930; 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=8USLcaER+Tjbye/Pc2g7+sqRDMDmokQrcuPBiZscYu4=; b=Qa4+ed2EhEsXGw/QvkNbnWp4enmoQykb8qTKFU2l5vjZ5+HCY6nxyBbejeZMptVqYYYJjU fcrS288LW1cSEXi66qB6A+Bk0Jzx8pQNCVvgEMjjPfzvuG4T+6/Em6fchd8MyXqvuTZsyz q1Q9zYWwzBhJ+wxs6NGIGVb16nLwrV0= X-MC-Unique: rPo2-PH4PFOfe0ENH5rq5g-1 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= To: libvir-list@redhat.com Subject: [libvirt-perl PATCH 1/3] Build: bump min perl to 5.16.0 Date: Thu, 23 Apr 2020 12:38:26 +0100 Message-Id: <20200423113828.1117882-2-berrange@redhat.com> In-Reply-To: <20200423113828.1117882-1-berrange@redhat.com> References: <20200423113828.1117882-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.79 on 10.5.11.16 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" Based on the supported platforms list, the oldest Perl we need to support is from RHEL-7, version 5.16.0 Signed-off-by: Daniel P. Berrang=C3=A9 --- Build.PL | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Build.PL b/Build.PL index ca3c786..7764e41 100755 --- a/Build.PL +++ b/Build.PL @@ -73,7 +73,7 @@ my $b =3D Module::Build->new( dist_author =3D> 'Daniel Berrange ', dist_abstract =3D> 'libvirt Perl API', requires =3D> { - 'perl' =3D> '5.8.0', + 'perl' =3D> '5.16.0', }, extra_compiler_flags =3D> $GCC_CFLAGS . $LIBVIRT_CFLAGS, extra_linker_flags =3D> $LIBVIRT_LIBS, --=20 2.25.3 From nobody Sat May 4 18:18:24 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.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 207.211.31.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=1587641944; cv=none; d=zohomail.com; s=zohoarc; b=XgNndkw5Ac+Zog0VmvP6RLIQWa/qfEUd64v/dvxT/gGcGMMSB6w6Ylh82MNI82SVHRH+xJlK76UcBPrS7vplyF0qssy7hhAwKzeR5sPmUx5XpUrBLoShydtxljcv4bVSgy/Xx5EeFts/qajtAh14rWKWUGcgKB4bd6XecTujKAs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1587641944; 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=F3aT0rPZDEvKrCCyh4PTVtqg60xER1VCWrwspnfOJpc=; b=ACTBOHYml7L3JhblI6AMtO850dZsU3Bye0ku7SE7lx0JFALT4/YTcxs/s3qsFIdtlyLpTxVf0Letr+dCFSsFolxvkFRkI/xfrBtLXfk1zZ9iahFfW2PWbnw+39CgRyX+xhoAp0IUR3fVZCWtdo1zbfCURXEWfosz/Ws53KIoSK4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 207.211.31.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 [207.211.31.120]) by mx.zohomail.com with SMTPS id 1587641944652128.57266189774145; Thu, 23 Apr 2020 04:39:04 -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-285-aAQ-lyo9PTSxXrXfKhtGBQ-1; Thu, 23 Apr 2020 07:38:59 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 7C057100961D; Thu, 23 Apr 2020 11:38:53 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id D6DE95DDA8; Thu, 23 Apr 2020 11:38:52 +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 9B57E1809543; Thu, 23 Apr 2020 11:38:51 +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 03NBccos022134 for ; Thu, 23 Apr 2020 07:38:38 -0400 Received: by smtp.corp.redhat.com (Postfix) id 419D15DA2C; Thu, 23 Apr 2020 11:38:38 +0000 (UTC) Received: from localhost.localdomain.com (unknown [10.36.110.58]) by smtp.corp.redhat.com (Postfix) with ESMTP id C92635DA66; Thu, 23 Apr 2020 11:38:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1587641942; 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=F3aT0rPZDEvKrCCyh4PTVtqg60xER1VCWrwspnfOJpc=; b=Tw/19wjSG4/otBI+VFKTc0kMCA7HnD0b84qIhrpl7R/LHYWexNIVYUIFhYRJF/iwQCuuUO JhpgGdAYMhuhT/BGuRhWfIvNJZqwelPho7MhFFiX+Q7hGLqTjXMkgw99+a/vOR3W9SSyKi AibimVTaJ789wNxYLM2bHv82zdHLutw= X-MC-Unique: aAQ-lyo9PTSxXrXfKhtGBQ-1 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= To: libvir-list@redhat.com Subject: [libvirt-perl PATCH 2/3] gitlab: add CI jobs for validating build across platforms Date: Thu, 23 Apr 2020 12:38:27 +0100 Message-Id: <20200423113828.1117882-3-berrange@redhat.com> In-Reply-To: <20200423113828.1117882-1-berrange@redhat.com> References: <20200423113828.1117882-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.79 on 10.5.11.14 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" This introduces CI jobs that replace the current jobs used on Jenkins for every platform except FreeBSD. A merge request workflow requires the user to fork the primary git repo into their personal namespace. In general the changes need to be tested against the current libvirt git master. If the user has a fork of the main libvirt repo, we don't want to use that by default as it may be out of date. The general goal is that the CI jobs are self-contained and don't depend on the build artifacts from the libvirt repo. We also want to avoid having an explicit dependency on the libvirt-ci repo, or on the Quay.io service. Contributors to the Perl module need to be able to make code changes which imply CI environment changes and be able to test them in isolation. Thus, the dockerfile recipes for each distro are added in the ci/ sub-directory. The first stage of the CI jobs is to use these recipes to build and publish a container image. These images are then used in the second stage to perform the actual build. The container image build is cached, inheriting from both the primary libvirt project namespace, and the user's private project namespace. Thus the performance hit of building container images will only be felt the first time the project is forked, or when the parent Docker images are rebuilt. The dockerfiles were originally generated using lcitool, but if the user makes a change that introduces new build dependencies, the corresponding packages can be added to the dockerfile recipes directly in the same commit. The change can be propagated back into the libvirt-ci.git repo asynchronously. The build job will do a minimal(-ish) build of libvirt git master and then build the rest of the code against that. Ideally the main libvirt configure script would have a way to request a minimal build of just the API and test driver, but for now we settle for just --without-libvirt which culls a large number of the drivers fairly easily. Signed-off-by: Daniel P. Berrang=C3=A9 --- .gitlab-ci.yml | 144 ++++++++++++++++++++++++++++++++++ ci/libvirt-centos-7.dkr | 12 +++ ci/libvirt-centos-8.dkr | 13 +++ ci/libvirt-debian-10.dkr | 14 ++++ ci/libvirt-debian-9.dkr | 14 ++++ ci/libvirt-debian-sid.dkr | 14 ++++ ci/libvirt-fedora-30.dkr | 13 +++ ci/libvirt-fedora-31.dkr | 13 +++ ci/libvirt-fedora-rawhide.dkr | 13 +++ ci/libvirt-opensuse-151.dkr | 11 +++ ci/libvirt-ubuntu-1604.dkr | 14 ++++ ci/libvirt-ubuntu-1804.dkr | 14 ++++ ci/refresh | 16 ++++ 13 files changed, 305 insertions(+) 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 index 50dae92..48c7840 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,6 +1,50 @@ =20 stages: - prebuild + - containers + - build + +.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_job_template: &build_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" + - export TEST_MAINTAINER=3D1 + - export CONFIGURE_ARGS=3D"--without-libvirtd" + 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} ${CONFIGURE_ARGS} + - make install + - popd + - perl Build.PL + - perl Build + - perl Build test =20 # Check that all commits are signed-off for the DCO. # Skip on "libvirt" namespace, since we only need to run @@ -14,3 +58,103 @@ 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-centos-7: + <<: *build_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-centos-7:latest + +build-centos-8: + <<: *build_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-centos-8:latest + +build-debian-9: + <<: *build_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-debian-9:latest + +build-debian-10: + <<: *build_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-debian-10:latest + +build-debian-sid: + <<: *build_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-debian-sid:latest + +build-fedora-30: + <<: *build_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-fedora-30:latest + +build-fedora-31: + <<: *build_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-fedora-31:latest + +build-fedora-rawhide: + <<: *build_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-fedora-rawhide:latest + +build-opensuse-151: + <<: *build_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-opensuse-151:latest + +build-ubuntu-1604: + <<: *build_job_definition + image: ${CI_REGISTRY_IMAGE}/buildenv-ubuntu-1604:latest + +build-ubuntu-1804: + <<: *build_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..498f20b --- /dev/null +++ b/ci/libvirt-centos-7.dkr @@ -0,0 +1,12 @@ +FROM quay.io/libvirt/buildenv-libvirt-centos-7 + +RUN yum install -y \ + perl-Archive-Tar \ + perl-CPAN-Changes \ + perl-Module-Build \ + perl-Test-Pod \ + perl-Test-Pod-Coverage \ + perl-Time-HiRes \ + perl-XML-XPath && \ + yum autoremove -y && \ + yum clean all -y diff --git a/ci/libvirt-centos-8.dkr b/ci/libvirt-centos-8.dkr new file mode 100644 index 0000000..f468e30 --- /dev/null +++ b/ci/libvirt-centos-8.dkr @@ -0,0 +1,13 @@ +FROM quay.io/libvirt/buildenv-libvirt-centos-8 + +RUN dnf install -y \ + perl-Archive-Tar \ + perl-CPAN-Changes \ + perl-Module-Build \ + perl-Test-Pod \ + perl-Test-Pod-Coverage \ + perl-Time-HiRes \ + perl-XML-XPath \ + perl-generators && \ + dnf autoremove -y && \ + dnf clean all -y diff --git a/ci/libvirt-debian-10.dkr b/ci/libvirt-debian-10.dkr new file mode 100644 index 0000000..c68a55b --- /dev/null +++ b/ci/libvirt-debian-10.dkr @@ -0,0 +1,14 @@ +FROM quay.io/libvirt/buildenv-libvirt-debian-10 + +RUN export DEBIAN_FRONTEND=3Dnoninteractive && \ + apt-get update && \ + apt-get install --no-install-recommends -y \ + libcpan-changes-perl \ + libmodule-build-perl \ + libtest-pod-coverage-perl \ + libtest-pod-perl \ + libtime-hr-perl \ + libxml-xpath-perl \ + perl && \ + apt-get autoremove -y && \ + apt-get autoclean -y diff --git a/ci/libvirt-debian-9.dkr b/ci/libvirt-debian-9.dkr new file mode 100644 index 0000000..74ef949 --- /dev/null +++ b/ci/libvirt-debian-9.dkr @@ -0,0 +1,14 @@ +FROM quay.io/libvirt/buildenv-libvirt-debian-9 + +RUN export DEBIAN_FRONTEND=3Dnoninteractive && \ + apt-get update && \ + apt-get install --no-install-recommends -y \ + libcpan-changes-perl \ + libmodule-build-perl \ + libtest-pod-coverage-perl \ + libtest-pod-perl \ + libtime-hr-perl \ + libxml-xpath-perl \ + perl && \ + apt-get autoremove -y && \ + apt-get autoclean -y diff --git a/ci/libvirt-debian-sid.dkr b/ci/libvirt-debian-sid.dkr new file mode 100644 index 0000000..8cf6ac3 --- /dev/null +++ b/ci/libvirt-debian-sid.dkr @@ -0,0 +1,14 @@ +FROM quay.io/libvirt/buildenv-libvirt-debian-sid + +RUN export DEBIAN_FRONTEND=3Dnoninteractive && \ + apt-get update && \ + apt-get install --no-install-recommends -y \ + libcpan-changes-perl \ + libmodule-build-perl \ + libtest-pod-coverage-perl \ + libtest-pod-perl \ + libtime-hr-perl \ + libxml-xpath-perl \ + perl && \ + apt-get autoremove -y && \ + apt-get autoclean -y diff --git a/ci/libvirt-fedora-30.dkr b/ci/libvirt-fedora-30.dkr new file mode 100644 index 0000000..2715a6c --- /dev/null +++ b/ci/libvirt-fedora-30.dkr @@ -0,0 +1,13 @@ +FROM quay.io/libvirt/buildenv-libvirt-fedora-30 + +RUN dnf install -y \ + perl-Archive-Tar \ + perl-CPAN-Changes \ + perl-Module-Build \ + perl-Test-Pod \ + perl-Test-Pod-Coverage \ + perl-Time-HiRes \ + perl-XML-XPath \ + perl-generators && \ + dnf autoremove -y && \ + dnf clean all -y diff --git a/ci/libvirt-fedora-31.dkr b/ci/libvirt-fedora-31.dkr new file mode 100644 index 0000000..388ea3f --- /dev/null +++ b/ci/libvirt-fedora-31.dkr @@ -0,0 +1,13 @@ +FROM quay.io/libvirt/buildenv-libvirt-fedora-31 + +RUN dnf install -y \ + perl-Archive-Tar \ + perl-CPAN-Changes \ + perl-Module-Build \ + perl-Test-Pod \ + perl-Test-Pod-Coverage \ + perl-Time-HiRes \ + perl-XML-XPath \ + perl-generators && \ + dnf autoremove -y && \ + dnf clean all -y diff --git a/ci/libvirt-fedora-rawhide.dkr b/ci/libvirt-fedora-rawhide.dkr new file mode 100644 index 0000000..12b4b9e --- /dev/null +++ b/ci/libvirt-fedora-rawhide.dkr @@ -0,0 +1,13 @@ +FROM quay.io/libvirt/buildenv-libvirt-fedora-rawhide + +RUN dnf install -y \ + perl-Archive-Tar \ + perl-CPAN-Changes \ + perl-Module-Build \ + perl-Test-Pod \ + perl-Test-Pod-Coverage \ + perl-Time-HiRes \ + perl-XML-XPath \ + perl-generators && \ + dnf autoremove -y && \ + dnf clean all -y diff --git a/ci/libvirt-opensuse-151.dkr b/ci/libvirt-opensuse-151.dkr new file mode 100644 index 0000000..e423704 --- /dev/null +++ b/ci/libvirt-opensuse-151.dkr @@ -0,0 +1,11 @@ +FROM quay.io/libvirt/buildenv-libvirt-opensuse-151 + +RUN zypper install -y \ + perl \ + perl-Archive-Tar \ + perl-CPAN-Changes \ + perl-Module-Build \ + perl-Test-Pod \ + perl-Test-Pod-Coverage \ + perl-XML-XPath && \ + zypper clean --all diff --git a/ci/libvirt-ubuntu-1604.dkr b/ci/libvirt-ubuntu-1604.dkr new file mode 100644 index 0000000..e1eb862 --- /dev/null +++ b/ci/libvirt-ubuntu-1604.dkr @@ -0,0 +1,14 @@ +FROM quay.io/libvirt/buildenv-libvirt-ubuntu-1604 + +RUN export DEBIAN_FRONTEND=3Dnoninteractive && \ + apt-get update && \ + apt-get install --no-install-recommends -y \ + libcpan-changes-perl \ + libmodule-build-perl \ + libtest-pod-coverage-perl \ + libtest-pod-perl \ + libtime-hr-perl \ + libxml-xpath-perl \ + perl && \ + apt-get autoremove -y && \ + apt-get autoclean -y diff --git a/ci/libvirt-ubuntu-1804.dkr b/ci/libvirt-ubuntu-1804.dkr new file mode 100644 index 0000000..b982dd2 --- /dev/null +++ b/ci/libvirt-ubuntu-1804.dkr @@ -0,0 +1,14 @@ +FROM quay.io/libvirt/buildenv-libvirt-ubuntu-1804 + +RUN export DEBIAN_FRONTEND=3Dnoninteractive && \ + apt-get update && \ + apt-get install --no-install-recommends -y \ + libcpan-changes-perl \ + libmodule-build-perl \ + libtest-pod-coverage-perl \ + libtest-pod-perl \ + libtime-hr-perl \ + libxml-xpath-perl \ + perl && \ + apt-get autoremove -y && \ + apt-get autoclean -y diff --git a/ci/refresh b/ci/refresh new file mode 100755 index 0000000..20476ee --- /dev/null +++ b/ci/refresh @@ -0,0 +1,16 @@ +#!/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 + ${LCITOOL} dockerfile --inherit quay.io/libvirt/buildenv-$host $host lib= virt-perl > $host.dkr +done --=20 2.25.3 From nobody Sat May 4 18:18:24 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; 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 207.211.31.81 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=1587641947; cv=none; d=zohomail.com; s=zohoarc; b=kwhnX44fGmZ+2IBF9ShXCqxe2LAbwvf1W6NVRQiJNZKiFvOkJo1SVcleCZVOKzcmxhXs0sSQZuRVUn10j/bBVpUaP9K0EuUuexQ1lDHBj16vG36Qu9Agz09G1tdKseiGKS+Fwp5Ert3PdJJYDy429ZN9ARkTg4PpKHa+vtUrkTk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1587641947; 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=AwgLXiBkZECM6AOTq+U2aAxsobWU+Y21kDu7rTBsa6s=; b=VvrDwg1znCUY7pHMY8FZHJS9YJ0IrjsCpC6xQllGs8g67JXSp6cit5eiAHIHuvER7E/U+hYrbaR2m6h2EBRaA2YlkujGo1x88+Gx3mgkRpZNFHo+3XpOXVOMp7FLScGNmGJzx2LhGZXVIjkuGQ2799I+6FgKSbYUFmVcfpqpEAg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 207.211.31.81 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-2.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1587641947584145.69080751848026; Thu, 23 Apr 2020 04:39:07 -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-5-NR6XbUomNo2PEmboCTMyVw-1; Thu, 23 Apr 2020 07:39:04 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id D75BF1009616; Thu, 23 Apr 2020 11:38:58 +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 AEC96605CE; Thu, 23 Apr 2020 11:38:58 +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 5F5C44CA95; Thu, 23 Apr 2020 11:38:58 +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 03NBcdNN022143 for ; Thu, 23 Apr 2020 07:38:39 -0400 Received: by smtp.corp.redhat.com (Postfix) id 82CB15DA66; Thu, 23 Apr 2020 11:38:39 +0000 (UTC) Received: from localhost.localdomain.com (unknown [10.36.110.58]) by smtp.corp.redhat.com (Postfix) with ESMTP id AB4A85DA2C; Thu, 23 Apr 2020 11:38:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1587641946; 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=AwgLXiBkZECM6AOTq+U2aAxsobWU+Y21kDu7rTBsa6s=; b=AdYov0NlJmu503qH1q/zqAtI4xXXi7aTKU2WWnp+4HurNuIH3YSSFTMzaEgbJFCZxHHMoT 8fWi5saOiFrX3jA/bpbM6Mti4nlRxtLsJ3F8U7euv242yMp/LvvNGf4HIOeOtLgR64ZtVH v6Qhb9cMxQgWuP54wG3jpiOCiC5Nnv0= X-MC-Unique: NR6XbUomNo2PEmboCTMyVw-1 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= To: libvir-list@redhat.com Subject: [libvirt-perl PATCH 3/3] gitlab: add a simple job that publishes the API docs as HTML Date: Thu, 23 Apr 2020 12:38:28 +0100 Message-Id: <20200423113828.1117882-4-berrange@redhat.com> In-Reply-To: <20200423113828.1117882-1-berrange@redhat.com> References: <20200423113828.1117882-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.79 on 10.5.11.11 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 Perl modules have inline POD docs. This can be converted to HTML and published as a GitLab artifact. The rendered HTML is kind of ugly but improving this is left as an exercise for the future. Signed-off-by: Daniel P. Berrang=C3=A9 --- .gitlab-ci.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 48c7840..32db3e4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,6 +3,7 @@ stages: - prebuild - containers - build + - docs =20 .container_job_template: &container_job_definition image: docker:stable @@ -158,3 +159,16 @@ build-ubuntu-1604: build-ubuntu-1804: <<: *build_job_definition image: ${CI_REGISTRY_IMAGE}/buildenv-ubuntu-1804:latest + +apiref: + stage: docs + image: perl + script: + - perl -MPod::Simple::HTMLBatch -e Pod::Simple::HTMLBatch::go lib api= ref + artifacts: + expose_as: 'API Reference' + name: 'apiref' + when: on_success + expire_in: 30 days + paths: + - apiref --=20 2.25.3