From nobody Tue Feb 10 19:47:48 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) client-ip=170.10.129.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 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=1653573737; cv=none; d=zohomail.com; s=zohoarc; b=hTueScaDPUc6eqozKL9B/CKIkBilOX6h6lmGxQd6cUPqLu3evsRMkT9JJRNCPcpMurUAb34yMKvSsOYdGn0m8olJpXzQAswnk4nvtRXCiJFr00zzN4WIa1ZdJuuTM/UhYylWHshjsf04tMuelkLyucjHwTUQTI/qql0wjk5PJUU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1653573737; 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=IPo/VxAlMfNw/2bPtdM/fcubA/xyFRLJ0lZcIsSF4qs=; b=WvIIrY0SFttbnzIKDldygujbR/OetaVrcpf3SQ+96MsfFwzMJEtzHZ3XBMVM4+aBadFeTWHEadZ8gR95azfqDVhGT3UNdqklpQ+z/aav6/fSW6iurAwOhlKYDv65WWgX/9SVo0cG+xCy9QsxhMPZ+Ft6BLJRQ3c4iNggk2SjQJM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mx.zohomail.com with SMTPS id 1653573737628221.85143446479208; Thu, 26 May 2022 07:02:17 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-3-_bpJPPcgOTm37GyuNX3akw-1; Thu, 26 May 2022 10:02:13 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 5D52329324B4; Thu, 26 May 2022 14:01:59 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (unknown [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 3F1D6400DB3A; Thu, 26 May 2022 14:01:59 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id E92B0193212B; Thu, 26 May 2022 14:01:58 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id BCBAF194EB8B for ; Thu, 26 May 2022 14:01:57 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 8FBB382890; Thu, 26 May 2022 14:01:57 +0000 (UTC) Received: from harajuku.usersys.redhat.com.homenet.telecomitalia.it (unknown [10.40.193.166]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 752F31731B for ; Thu, 26 May 2022 14:01:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1653573736; 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=IPo/VxAlMfNw/2bPtdM/fcubA/xyFRLJ0lZcIsSF4qs=; b=fe0DxHVKkRsgdBTASy6qK+3n+lbdgV+VnwmNHPY4ICsJ0W0KzP8+iJ9HHW9q0y1ahnhx2c tljL3zlTZDhaIzQcb5O4lqyllmot9aObO9cCS5qsLMJVL9NIrNXoltQMi08GHcTVo1BoKS dAsafUWXIeDpkIb4FR1+Ayk9yiLjWG8= X-MC-Unique: _bpJPPcgOTm37GyuNX3akw-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Andrea Bolognani To: libvir-list@redhat.com Subject: [libvirt PATCH v2 2/7] ci: Refresh generated files Date: Thu, 26 May 2022 16:01:47 +0200 Message-Id: <20220526140152.697283-3-abologna@redhat.com> In-Reply-To: <20220526140152.697283-1-abologna@redhat.com> References: <20220526140152.697283-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.11.54.5 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 2.84 on 10.11.54.1 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1653573738242100001 Content-Type: text/plain; charset="utf-8" Notable changes: * 'lcitool manifest' now generates GitLab CI rules spread across a bunch of files; * container images are built less frequently for the main repository. Signed-off-by: Andrea Bolognani Reviewed-by: Erik Skultety --- ci/gitlab.yml | 747 +----------------------------- ci/gitlab/build-templates.yml | 45 ++ ci/gitlab/builds.yml | 392 ++++++++++++++++ ci/gitlab/container-templates.yml | 52 +++ ci/gitlab/containers.yml | 318 +++++++++++++ ci/gitlab/sanity-checks.yml | 18 + 6 files changed, 831 insertions(+), 741 deletions(-) create mode 100644 ci/gitlab/build-templates.yml create mode 100644 ci/gitlab/builds.yml create mode 100644 ci/gitlab/container-templates.yml create mode 100644 ci/gitlab/containers.yml create mode 100644 ci/gitlab/sanity-checks.yml diff --git a/ci/gitlab.yml b/ci/gitlab.yml index f4e3f189c0..379a41111c 100644 --- a/ci/gitlab.yml +++ b/ci/gitlab.yml @@ -4,744 +4,9 @@ # # https://gitlab.com/libvirt/libvirt-ci =20 - -.container_job: - image: docker:stable - stage: containers - needs: [] - services: - - docker:dind - before_script: - - export TAG=3D"$CI_REGISTRY_IMAGE/ci-$NAME:latest" - - export COMMON_TAG=3D"$CI_REGISTRY/libvirt/libvirt/ci-$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/containers/$NAME.Dockerfile" ci/containers - - docker push "$TAG" - after_script: - - docker logout - - -.gitlab_native_build_job: - image: $CI_REGISTRY_IMAGE/ci-$NAME:latest - stage: builds - - -.gitlab_cross_build_job: - image: $CI_REGISTRY_IMAGE/ci-$NAME-cross-$CROSS:latest - stage: builds - - -.cirrus_build_job: - stage: builds - image: registry.gitlab.com/libvirt/libvirt-ci/cirrus-run:master - needs: [] - script: - - source ci/cirrus/$NAME.vars - - sed -e "s|[@]CI_REPOSITORY_URL@|$CI_REPOSITORY_URL|g" - -e "s|[@]CI_COMMIT_REF_NAME@|$CI_COMMIT_REF_NAME|g" - -e "s|[@]CI_COMMIT_SHA@|$CI_COMMIT_SHA|g" - -e "s|[@]CIRRUS_VM_INSTANCE_TYPE@|$CIRRUS_VM_INSTANCE_TYPE|g" - -e "s|[@]CIRRUS_VM_IMAGE_SELECTOR@|$CIRRUS_VM_IMAGE_SELECTOR|g" - -e "s|[@]CIRRUS_VM_IMAGE_NAME@|$CIRRUS_VM_IMAGE_NAME|g" - -e "s|[@]UPDATE_COMMAND@|$UPDATE_COMMAND|g" - -e "s|[@]UPGRADE_COMMAND@|$UPGRADE_COMMAND|g" - -e "s|[@]INSTALL_COMMAND@|$INSTALL_COMMAND|g" - -e "s|[@]PATH@|$PATH_EXTRA${PATH_EXTRA:+:}\$PATH|g" - -e "s|[@]PKG_CONFIG_PATH@|$PKG_CONFIG_PATH|g" - -e "s|[@]PKGS@|$PKGS|g" - -e "s|[@]MAKE@|$MAKE|g" - -e "s|[@]PYTHON@|$PYTHON|g" - -e "s|[@]PIP3@|$PIP3|g" - -e "s|[@]PYPI_PKGS@|$PYPI_PKGS|g" - -e "s|[@]XML_CATALOG_FILES@|$XML_CATALOG_FILES|g" - ci/cirrus/$NAME.yml - - cat ci/cirrus/$NAME.yml - - cirrus-run -v --show-build-log always ci/cirrus/$NAME.yml - rules: - - if: "$CIRRUS_GITHUB_REPO && $CIRRUS_API_TOKEN" - - -check-dco: - stage: sanity_checks - needs: [] - image: registry.gitlab.com/libvirt/libvirt-ci/check-dco:master - script: - - /check-dco libvirt - except: - variables: - - $CI_PROJECT_NAMESPACE =3D=3D 'libvirt' - variables: - GIT_DEPTH: 1000 - - -# Native container jobs - -x86_64-almalinux-8-container: - extends: .container_job - allow_failure: false - variables: - NAME: almalinux-8 - - -x86_64-alpine-314-container: - extends: .container_job - allow_failure: false - variables: - NAME: alpine-314 - - -x86_64-alpine-315-container: - extends: .container_job - allow_failure: false - variables: - NAME: alpine-315 - - -x86_64-alpine-edge-container: - extends: .container_job - allow_failure: true - variables: - NAME: alpine-edge - - -x86_64-centos-stream-8-container: - extends: .container_job - allow_failure: false - variables: - NAME: centos-stream-8 - - -x86_64-centos-stream-9-container: - extends: .container_job - allow_failure: false - variables: - NAME: centos-stream-9 - - -x86_64-debian-10-container: - extends: .container_job - allow_failure: false - variables: - NAME: debian-10 - - -x86_64-debian-11-container: - extends: .container_job - allow_failure: false - variables: - NAME: debian-11 - - -x86_64-debian-sid-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-sid - - -x86_64-fedora-35-container: - extends: .container_job - allow_failure: false - variables: - NAME: fedora-35 - - -x86_64-fedora-rawhide-container: - extends: .container_job - allow_failure: true - variables: - NAME: fedora-rawhide - - -x86_64-opensuse-leap-153-container: - extends: .container_job - allow_failure: false - variables: - NAME: opensuse-leap-153 - - -x86_64-opensuse-tumbleweed-container: - extends: .container_job - allow_failure: true - variables: - NAME: opensuse-tumbleweed - - -x86_64-ubuntu-2004-container: - extends: .container_job - allow_failure: false - variables: - NAME: ubuntu-2004 - - -x86_64-ubuntu-2204-container: - extends: .container_job - allow_failure: false - variables: - NAME: ubuntu-2204 - - - -# Cross container jobs - -aarch64-debian-10-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-10-cross-aarch64 - - -armv6l-debian-10-container: - extends: .container_job - allow_failure: false - variables: - NAME: debian-10-cross-armv6l - - -armv7l-debian-10-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-10-cross-armv7l - - -i686-debian-10-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-10-cross-i686 - - -mips-debian-10-container: - extends: .container_job - allow_failure: false - variables: - NAME: debian-10-cross-mips - - -mips64el-debian-10-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-10-cross-mips64el - - -mipsel-debian-10-container: - extends: .container_job - allow_failure: false - variables: - NAME: debian-10-cross-mipsel - - -ppc64le-debian-10-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-10-cross-ppc64le - - -s390x-debian-10-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-10-cross-s390x - - -aarch64-debian-11-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-11-cross-aarch64 - - -armv6l-debian-11-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-11-cross-armv6l - - -armv7l-debian-11-container: - extends: .container_job - allow_failure: false - variables: - NAME: debian-11-cross-armv7l - - -i686-debian-11-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-11-cross-i686 - - -mips64el-debian-11-container: - extends: .container_job - allow_failure: false - variables: - NAME: debian-11-cross-mips64el - - -mipsel-debian-11-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-11-cross-mipsel - - -ppc64le-debian-11-container: - extends: .container_job - allow_failure: false - variables: - NAME: debian-11-cross-ppc64le - - -s390x-debian-11-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-11-cross-s390x - - -aarch64-debian-sid-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-sid-cross-aarch64 - - -armv6l-debian-sid-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-sid-cross-armv6l - - -armv7l-debian-sid-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-sid-cross-armv7l - - -i686-debian-sid-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-sid-cross-i686 - - -mips64el-debian-sid-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-sid-cross-mips64el - - -mipsel-debian-sid-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-sid-cross-mipsel - - -ppc64le-debian-sid-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-sid-cross-ppc64le - - -s390x-debian-sid-container: - extends: .container_job - allow_failure: true - variables: - NAME: debian-sid-cross-s390x - - -mingw32-fedora-35-container: - extends: .container_job - allow_failure: true - variables: - NAME: fedora-35-cross-mingw32 - - -mingw64-fedora-35-container: - extends: .container_job - allow_failure: false - variables: - NAME: fedora-35-cross-mingw64 - - -mingw32-fedora-rawhide-container: - extends: .container_job - allow_failure: true - variables: - NAME: fedora-rawhide-cross-mingw32 - - -mingw64-fedora-rawhide-container: - extends: .container_job - allow_failure: true - variables: - NAME: fedora-rawhide-cross-mingw64 - - -# Native build jobs - -x86_64-almalinux-8: - extends: .native_build_job - needs: - - x86_64-almalinux-8-container - allow_failure: false - variables: - NAME: almalinux-8 - RPM: skip - - -x86_64-almalinux-8-clang: - extends: .native_build_job - needs: - - x86_64-almalinux-8-container - allow_failure: false - variables: - CC: clang - NAME: almalinux-8 - RPM: skip - - -x86_64-alpine-314: - extends: .native_build_job - needs: - - x86_64-alpine-314-container - allow_failure: false - variables: - NAME: alpine-314 - - -x86_64-alpine-315: - extends: .native_build_job - needs: - - x86_64-alpine-315-container - allow_failure: false - variables: - NAME: alpine-315 - - -x86_64-alpine-edge: - extends: .native_build_job - needs: - - x86_64-alpine-edge-container - allow_failure: true - variables: - NAME: alpine-edge - - -x86_64-centos-stream-8: - extends: .native_build_job - needs: - - x86_64-centos-stream-8-container - allow_failure: false - variables: - NAME: centos-stream-8 - artifacts: - expire_in: 1 day - paths: - - libvirt-rpms - - -x86_64-centos-stream-9: - extends: .native_build_job - needs: - - x86_64-centos-stream-9-container - allow_failure: false - variables: - NAME: centos-stream-9 - artifacts: - expire_in: 1 day - paths: - - libvirt-rpms - - -x86_64-debian-10: - extends: .native_build_job - needs: - - x86_64-debian-10-container - allow_failure: false - variables: - NAME: debian-10 - - -x86_64-debian-11: - extends: .native_build_job - needs: - - x86_64-debian-11-container - allow_failure: false - variables: - NAME: debian-11 - - -x86_64-debian-11-clang: - extends: .native_build_job - needs: - - x86_64-debian-11-container - allow_failure: false - variables: - NAME: debian-11 - - -x86_64-debian-sid: - extends: .native_build_job - needs: - - x86_64-debian-sid-container - allow_failure: true - variables: - NAME: debian-sid - - -x86_64-fedora-35: - extends: .native_build_job - needs: - - x86_64-fedora-35-container - allow_failure: false - variables: - NAME: fedora-35 - artifacts: - expire_in: 1 day - paths: - - libvirt-rpms - - -x86_64-fedora-rawhide: - extends: .native_build_job - needs: - - x86_64-fedora-rawhide-container - allow_failure: true - variables: - NAME: fedora-rawhide - - -x86_64-fedora-rawhide-clang: - extends: .native_build_job - needs: - - x86_64-fedora-rawhide-container - allow_failure: true - variables: - CC: clang - NAME: fedora-rawhide - RPM: skip - - -x86_64-opensuse-leap-153: - extends: .native_build_job - needs: - - x86_64-opensuse-leap-153-container - allow_failure: false - variables: - NAME: opensuse-leap-153 - RPM: skip - - -x86_64-opensuse-tumbleweed: - extends: .native_build_job - needs: - - x86_64-opensuse-tumbleweed-container - allow_failure: true - variables: - NAME: opensuse-tumbleweed - RPM: skip - - -x86_64-ubuntu-2004: - extends: .native_build_job - needs: - - x86_64-ubuntu-2004-container - allow_failure: false - variables: - NAME: ubuntu-2004 - - -x86_64-ubuntu-2204: - extends: .native_build_job - needs: - - x86_64-ubuntu-2204-container - allow_failure: false - variables: - ASAN_OPTIONS: verify_asan_link_order=3D0 - MESON_ARGS: -Db_lundef=3Dfalse -Db_sanitize=3Daddress,undefined - NAME: ubuntu-2204 - UBSAN_OPTIONS: print_stacktrace=3D1:halt_on_error=3D1 - - -x86_64-ubuntu-2204-clang: - extends: .native_build_job - needs: - - x86_64-ubuntu-2204-container - allow_failure: false - variables: - CC: clang - MESON_ARGS: -Db_lundef=3Dfalse -Db_sanitize=3Daddress,undefined - NAME: ubuntu-2204 - UBSAN_OPTIONS: print_stacktrace=3D1:halt_on_error=3D1 - - - -# Cross build jobs - -armv6l-debian-10: - extends: .cross_build_job - needs: - - armv6l-debian-10-container - allow_failure: false - variables: - CROSS: armv6l - NAME: debian-10 - - -mips-debian-10: - extends: .cross_build_job - needs: - - mips-debian-10-container - allow_failure: false - variables: - CROSS: mips - NAME: debian-10 - - -mipsel-debian-10: - extends: .cross_build_job - needs: - - mipsel-debian-10-container - allow_failure: false - variables: - CROSS: mipsel - NAME: debian-10 - - -armv7l-debian-11: - extends: .cross_build_job - needs: - - armv7l-debian-11-container - allow_failure: false - variables: - CROSS: armv7l - NAME: debian-11 - - -mips64el-debian-11: - extends: .cross_build_job - needs: - - mips64el-debian-11-container - allow_failure: false - variables: - CROSS: mips64el - NAME: debian-11 - - -ppc64le-debian-11: - extends: .cross_build_job - needs: - - ppc64le-debian-11-container - allow_failure: false - variables: - CROSS: ppc64le - NAME: debian-11 - - -aarch64-debian-sid: - extends: .cross_build_job - needs: - - aarch64-debian-sid-container - allow_failure: true - variables: - CROSS: aarch64 - NAME: debian-sid - - -i686-debian-sid: - extends: .cross_build_job - needs: - - i686-debian-sid-container - allow_failure: true - variables: - CROSS: i686 - NAME: debian-sid - - -s390x-debian-sid: - extends: .cross_build_job - needs: - - s390x-debian-sid-container - allow_failure: true - variables: - CROSS: s390x - NAME: debian-sid - - -mingw64-fedora-35: - extends: .cross_build_job - needs: - - mingw64-fedora-35-container - allow_failure: false - variables: - CROSS: mingw64 - NAME: fedora-35 - - -mingw32-fedora-rawhide: - extends: .cross_build_job - needs: - - mingw32-fedora-rawhide-container - allow_failure: true - variables: - CROSS: mingw32 - NAME: fedora-rawhide - - -# Native cirrus build jobs - -x86_64-freebsd-12: - extends: .cirrus_build_job - needs: [] - allow_failure: false - variables: - CIRRUS_VM_IMAGE_NAME: freebsd-12-3 - CIRRUS_VM_IMAGE_SELECTOR: image_family - CIRRUS_VM_INSTANCE_TYPE: freebsd_instance - INSTALL_COMMAND: pkg install -y - NAME: freebsd-12 - UPDATE_COMMAND: pkg update - UPGRADE_COMMAND: pkg upgrade -y - - -x86_64-freebsd-13: - extends: .cirrus_build_job - needs: [] - allow_failure: false - variables: - CIRRUS_VM_IMAGE_NAME: freebsd-13-0 - CIRRUS_VM_IMAGE_SELECTOR: image_family - CIRRUS_VM_INSTANCE_TYPE: freebsd_instance - INSTALL_COMMAND: pkg install -y - NAME: freebsd-13 - UPDATE_COMMAND: pkg update - UPGRADE_COMMAND: pkg upgrade -y - - -x86_64-macos-11: - extends: .cirrus_build_job - needs: [] - allow_failure: false - variables: - CIRRUS_VM_IMAGE_NAME: big-sur-base - CIRRUS_VM_IMAGE_SELECTOR: image - CIRRUS_VM_INSTANCE_TYPE: osx_instance - INSTALL_COMMAND: brew install - NAME: macos-11 - PATH_EXTRA: /usr/local/opt/ccache/libexec:/usr/local/opt/gettext/bin:/= usr/local/opt/libpcap/bin:/usr/local/opt/libxslt/bin:/usr/local/opt/rpcgen/= bin - PKG_CONFIG_PATH: /usr/local/opt/curl/lib/pkgconfig:/usr/local/opt/libp= cap/lib/pkgconfig:/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/ncurs= es/lib/pkgconfig:/usr/local/opt/readline/lib/pkgconfig - UPDATE_COMMAND: brew update - UPGRADE_COMMAND: brew upgrade +include: + - local: 'ci/gitlab/container-templates.yml' + - local: 'ci/gitlab/build-templates.yml' + - local: 'ci/gitlab/sanity-checks.yml' + - local: 'ci/gitlab/containers.yml' + - local: 'ci/gitlab/builds.yml' diff --git a/ci/gitlab/build-templates.yml b/ci/gitlab/build-templates.yml new file mode 100644 index 0000000000..446822d5d1 --- /dev/null +++ b/ci/gitlab/build-templates.yml @@ -0,0 +1,45 @@ +# THIS FILE WAS AUTO-GENERATED +# +# $ lcitool manifest ci/manifest.yml +# +# https://gitlab.com/libvirt/libvirt-ci + + +.gitlab_native_build_job: + image: $CI_REGISTRY_IMAGE/ci-$NAME:latest + stage: builds + + +.gitlab_cross_build_job: + image: $CI_REGISTRY_IMAGE/ci-$NAME-cross-$CROSS:latest + stage: builds + + +.cirrus_build_job: + stage: builds + image: registry.gitlab.com/libvirt/libvirt-ci/cirrus-run:master + needs: [] + script: + - source ci/cirrus/$NAME.vars + - sed -e "s|[@]CI_REPOSITORY_URL@|$CI_REPOSITORY_URL|g" + -e "s|[@]CI_COMMIT_REF_NAME@|$CI_COMMIT_REF_NAME|g" + -e "s|[@]CI_COMMIT_SHA@|$CI_COMMIT_SHA|g" + -e "s|[@]CIRRUS_VM_INSTANCE_TYPE@|$CIRRUS_VM_INSTANCE_TYPE|g" + -e "s|[@]CIRRUS_VM_IMAGE_SELECTOR@|$CIRRUS_VM_IMAGE_SELECTOR|g" + -e "s|[@]CIRRUS_VM_IMAGE_NAME@|$CIRRUS_VM_IMAGE_NAME|g" + -e "s|[@]UPDATE_COMMAND@|$UPDATE_COMMAND|g" + -e "s|[@]UPGRADE_COMMAND@|$UPGRADE_COMMAND|g" + -e "s|[@]INSTALL_COMMAND@|$INSTALL_COMMAND|g" + -e "s|[@]PATH@|$PATH_EXTRA${PATH_EXTRA:+:}\$PATH|g" + -e "s|[@]PKG_CONFIG_PATH@|$PKG_CONFIG_PATH|g" + -e "s|[@]PKGS@|$PKGS|g" + -e "s|[@]MAKE@|$MAKE|g" + -e "s|[@]PYTHON@|$PYTHON|g" + -e "s|[@]PIP3@|$PIP3|g" + -e "s|[@]PYPI_PKGS@|$PYPI_PKGS|g" + -e "s|[@]XML_CATALOG_FILES@|$XML_CATALOG_FILES|g" + ci/cirrus/$NAME.yml + - cat ci/cirrus/$NAME.yml + - cirrus-run -v --show-build-log always ci/cirrus/$NAME.yml + rules: + - if: "$CIRRUS_GITHUB_REPO && $CIRRUS_API_TOKEN" diff --git a/ci/gitlab/builds.yml b/ci/gitlab/builds.yml new file mode 100644 index 0000000000..8d8ac7bc8a --- /dev/null +++ b/ci/gitlab/builds.yml @@ -0,0 +1,392 @@ +# THIS FILE WAS AUTO-GENERATED +# +# $ lcitool manifest ci/manifest.yml +# +# https://gitlab.com/libvirt/libvirt-ci + + +# Native build jobs + +x86_64-almalinux-8: + extends: .native_build_job + needs: + - job: x86_64-almalinux-8-container + optional: true + allow_failure: false + variables: + NAME: almalinux-8 + RPM: skip + + +x86_64-almalinux-8-clang: + extends: .native_build_job + needs: + - job: x86_64-almalinux-8-container + optional: true + allow_failure: false + variables: + CC: clang + NAME: almalinux-8 + RPM: skip + + +x86_64-alpine-314: + extends: .native_build_job + needs: + - job: x86_64-alpine-314-container + optional: true + allow_failure: false + variables: + NAME: alpine-314 + + +x86_64-alpine-315: + extends: .native_build_job + needs: + - job: x86_64-alpine-315-container + optional: true + allow_failure: false + variables: + NAME: alpine-315 + + +x86_64-alpine-edge: + extends: .native_build_job + needs: + - job: x86_64-alpine-edge-container + optional: true + allow_failure: true + variables: + NAME: alpine-edge + + +x86_64-centos-stream-8: + extends: .native_build_job + needs: + - job: x86_64-centos-stream-8-container + optional: true + allow_failure: false + variables: + NAME: centos-stream-8 + artifacts: + expire_in: 1 day + paths: + - libvirt-rpms + + +x86_64-centos-stream-9: + extends: .native_build_job + needs: + - job: x86_64-centos-stream-9-container + optional: true + allow_failure: false + variables: + NAME: centos-stream-9 + artifacts: + expire_in: 1 day + paths: + - libvirt-rpms + + +x86_64-debian-10: + extends: .native_build_job + needs: + - job: x86_64-debian-10-container + optional: true + allow_failure: false + variables: + NAME: debian-10 + + +x86_64-debian-11: + extends: .native_build_job + needs: + - job: x86_64-debian-11-container + optional: true + allow_failure: false + variables: + NAME: debian-11 + + +x86_64-debian-11-clang: + extends: .native_build_job + needs: + - job: x86_64-debian-11-container + optional: true + allow_failure: false + variables: + NAME: debian-11 + + +x86_64-debian-sid: + extends: .native_build_job + needs: + - job: x86_64-debian-sid-container + optional: true + allow_failure: true + variables: + NAME: debian-sid + + +x86_64-fedora-35: + extends: .native_build_job + needs: + - job: x86_64-fedora-35-container + optional: true + allow_failure: false + variables: + NAME: fedora-35 + artifacts: + expire_in: 1 day + paths: + - libvirt-rpms + + +x86_64-fedora-rawhide: + extends: .native_build_job + needs: + - job: x86_64-fedora-rawhide-container + optional: true + allow_failure: true + variables: + NAME: fedora-rawhide + + +x86_64-fedora-rawhide-clang: + extends: .native_build_job + needs: + - job: x86_64-fedora-rawhide-container + optional: true + allow_failure: true + variables: + CC: clang + NAME: fedora-rawhide + RPM: skip + + +x86_64-opensuse-leap-153: + extends: .native_build_job + needs: + - job: x86_64-opensuse-leap-153-container + optional: true + allow_failure: false + variables: + NAME: opensuse-leap-153 + RPM: skip + + +x86_64-opensuse-tumbleweed: + extends: .native_build_job + needs: + - job: x86_64-opensuse-tumbleweed-container + optional: true + allow_failure: true + variables: + NAME: opensuse-tumbleweed + RPM: skip + + +x86_64-ubuntu-2004: + extends: .native_build_job + needs: + - job: x86_64-ubuntu-2004-container + optional: true + allow_failure: false + variables: + NAME: ubuntu-2004 + + +x86_64-ubuntu-2204: + extends: .native_build_job + needs: + - job: x86_64-ubuntu-2204-container + optional: true + allow_failure: false + variables: + ASAN_OPTIONS: verify_asan_link_order=3D0 + MESON_ARGS: -Db_lundef=3Dfalse -Db_sanitize=3Daddress,undefined + NAME: ubuntu-2204 + UBSAN_OPTIONS: print_stacktrace=3D1:halt_on_error=3D1 + + +x86_64-ubuntu-2204-clang: + extends: .native_build_job + needs: + - job: x86_64-ubuntu-2204-container + optional: true + allow_failure: false + variables: + CC: clang + MESON_ARGS: -Db_lundef=3Dfalse -Db_sanitize=3Daddress,undefined + NAME: ubuntu-2204 + UBSAN_OPTIONS: print_stacktrace=3D1:halt_on_error=3D1 + + + +# Cross build jobs + +armv6l-debian-10: + extends: .cross_build_job + needs: + - job: armv6l-debian-10-container + optional: true + allow_failure: false + variables: + CROSS: armv6l + NAME: debian-10 + + +mips-debian-10: + extends: .cross_build_job + needs: + - job: mips-debian-10-container + optional: true + allow_failure: false + variables: + CROSS: mips + NAME: debian-10 + + +mipsel-debian-10: + extends: .cross_build_job + needs: + - job: mipsel-debian-10-container + optional: true + allow_failure: false + variables: + CROSS: mipsel + NAME: debian-10 + + +armv7l-debian-11: + extends: .cross_build_job + needs: + - job: armv7l-debian-11-container + optional: true + allow_failure: false + variables: + CROSS: armv7l + NAME: debian-11 + + +mips64el-debian-11: + extends: .cross_build_job + needs: + - job: mips64el-debian-11-container + optional: true + allow_failure: false + variables: + CROSS: mips64el + NAME: debian-11 + + +ppc64le-debian-11: + extends: .cross_build_job + needs: + - job: ppc64le-debian-11-container + optional: true + allow_failure: false + variables: + CROSS: ppc64le + NAME: debian-11 + + +aarch64-debian-sid: + extends: .cross_build_job + needs: + - job: aarch64-debian-sid-container + optional: true + allow_failure: true + variables: + CROSS: aarch64 + NAME: debian-sid + + +i686-debian-sid: + extends: .cross_build_job + needs: + - job: i686-debian-sid-container + optional: true + allow_failure: true + variables: + CROSS: i686 + NAME: debian-sid + + +s390x-debian-sid: + extends: .cross_build_job + needs: + - job: s390x-debian-sid-container + optional: true + allow_failure: true + variables: + CROSS: s390x + NAME: debian-sid + + +mingw64-fedora-35: + extends: .cross_build_job + needs: + - job: mingw64-fedora-35-container + optional: true + allow_failure: false + variables: + CROSS: mingw64 + NAME: fedora-35 + + +mingw32-fedora-rawhide: + extends: .cross_build_job + needs: + - job: mingw32-fedora-rawhide-container + optional: true + allow_failure: true + variables: + CROSS: mingw32 + NAME: fedora-rawhide + + +# Native cirrus build jobs + +x86_64-freebsd-12: + extends: .cirrus_build_job + needs: [] + allow_failure: false + variables: + CIRRUS_VM_IMAGE_NAME: freebsd-12-3 + CIRRUS_VM_IMAGE_SELECTOR: image_family + CIRRUS_VM_INSTANCE_TYPE: freebsd_instance + INSTALL_COMMAND: pkg install -y + NAME: freebsd-12 + UPDATE_COMMAND: pkg update + UPGRADE_COMMAND: pkg upgrade -y + + +x86_64-freebsd-13: + extends: .cirrus_build_job + needs: [] + allow_failure: false + variables: + CIRRUS_VM_IMAGE_NAME: freebsd-13-0 + CIRRUS_VM_IMAGE_SELECTOR: image_family + CIRRUS_VM_INSTANCE_TYPE: freebsd_instance + INSTALL_COMMAND: pkg install -y + NAME: freebsd-13 + UPDATE_COMMAND: pkg update + UPGRADE_COMMAND: pkg upgrade -y + + +x86_64-macos-11: + extends: .cirrus_build_job + needs: [] + allow_failure: false + variables: + CIRRUS_VM_IMAGE_NAME: big-sur-base + CIRRUS_VM_IMAGE_SELECTOR: image + CIRRUS_VM_INSTANCE_TYPE: osx_instance + INSTALL_COMMAND: brew install + NAME: macos-11 + PATH_EXTRA: /usr/local/opt/ccache/libexec:/usr/local/opt/gettext/bin:/= usr/local/opt/libpcap/bin:/usr/local/opt/libxslt/bin:/usr/local/opt/rpcgen/= bin + PKG_CONFIG_PATH: /usr/local/opt/curl/lib/pkgconfig:/usr/local/opt/libp= cap/lib/pkgconfig:/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/ncurs= es/lib/pkgconfig:/usr/local/opt/readline/lib/pkgconfig + UPDATE_COMMAND: brew update + UPGRADE_COMMAND: brew upgrade diff --git a/ci/gitlab/container-templates.yml b/ci/gitlab/container-templa= tes.yml new file mode 100644 index 0000000000..4cd28af8a9 --- /dev/null +++ b/ci/gitlab/container-templates.yml @@ -0,0 +1,52 @@ +# THIS FILE WAS AUTO-GENERATED +# +# $ lcitool manifest ci/manifest.yml +# +# https://gitlab.com/libvirt/libvirt-ci + + +# For upstream +# +# - Push to default branch: +# -> rebuild if dockerfile changed, no cache +# - Otherwise +# -> rebuild if LIBVIRT_CI_CONTAINERS=3D1, no cache, +# to pick up new published distro packages or +# recover from deleted tag +# +# For forks +# - Always rebuild, with cache +# +.container_job: + image: docker:stable + stage: containers + needs: [] + services: + - docker:dind + before_script: + - export TAG=3D"$CI_REGISTRY_IMAGE/ci-$NAME:latest" + - export COMMON_TAG=3D"$CI_REGISTRY/libvirt/libvirt/ci-$NAME:latest" + - docker info + - docker login "$CI_REGISTRY" -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_= PASSWORD" + script: + - if test $CI_PROJECT_NAMESPACE =3D "libvirt"; + then + docker build --tag "$TAG" -f "ci/containers/$NAME.Dockerfile" ci/c= ontainers ; + else + docker pull "$TAG" || docker pull "$COMMON_TAG" || true ; + docker build --cache-from "$TAG" --cache-from "$COMMON_TAG" --tag = "$TAG" -f "ci/containers/$NAME.Dockerfile" ci/containers ; + fi + - docker push "$TAG" + after_script: + - docker logout + rules: + - if: '$CI_PROJECT_NAMESPACE =3D=3D "libvirt" && $CI_PIPELINE_SOURCE = =3D=3D "push" && $CI_COMMIT_BRANCH =3D=3D $CI_DEFAULT_BRANCH' + when: on_success + changes: + - ci/gitlab/container-templates.yml + - ci/containers/$NAME.Dockerfile + - if: '$CI_PROJECT_NAMESPACE =3D=3D "libvirt" && $LIBVIRT_CI_CONTAINER= S =3D=3D "1"' + when: on_success + - if: '$CI_PROJECT_NAMESPACE =3D=3D "libvirt"' + when: never + - when: on_success diff --git a/ci/gitlab/containers.yml b/ci/gitlab/containers.yml new file mode 100644 index 0000000000..12ab6e4808 --- /dev/null +++ b/ci/gitlab/containers.yml @@ -0,0 +1,318 @@ +# THIS FILE WAS AUTO-GENERATED +# +# $ lcitool manifest ci/manifest.yml +# +# https://gitlab.com/libvirt/libvirt-ci + + +# Native container jobs + +x86_64-almalinux-8-container: + extends: .container_job + allow_failure: false + variables: + NAME: almalinux-8 + + +x86_64-alpine-314-container: + extends: .container_job + allow_failure: false + variables: + NAME: alpine-314 + + +x86_64-alpine-315-container: + extends: .container_job + allow_failure: false + variables: + NAME: alpine-315 + + +x86_64-alpine-edge-container: + extends: .container_job + allow_failure: true + variables: + NAME: alpine-edge + + +x86_64-centos-stream-8-container: + extends: .container_job + allow_failure: false + variables: + NAME: centos-stream-8 + + +x86_64-centos-stream-9-container: + extends: .container_job + allow_failure: false + variables: + NAME: centos-stream-9 + + +x86_64-debian-10-container: + extends: .container_job + allow_failure: false + variables: + NAME: debian-10 + + +x86_64-debian-11-container: + extends: .container_job + allow_failure: false + variables: + NAME: debian-11 + + +x86_64-debian-sid-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-sid + + +x86_64-fedora-35-container: + extends: .container_job + allow_failure: false + variables: + NAME: fedora-35 + + +x86_64-fedora-rawhide-container: + extends: .container_job + allow_failure: true + variables: + NAME: fedora-rawhide + + +x86_64-opensuse-leap-153-container: + extends: .container_job + allow_failure: false + variables: + NAME: opensuse-leap-153 + + +x86_64-opensuse-tumbleweed-container: + extends: .container_job + allow_failure: true + variables: + NAME: opensuse-tumbleweed + + +x86_64-ubuntu-2004-container: + extends: .container_job + allow_failure: false + variables: + NAME: ubuntu-2004 + + +x86_64-ubuntu-2204-container: + extends: .container_job + allow_failure: false + variables: + NAME: ubuntu-2204 + + + +# Cross container jobs + +aarch64-debian-10-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-10-cross-aarch64 + + +armv6l-debian-10-container: + extends: .container_job + allow_failure: false + variables: + NAME: debian-10-cross-armv6l + + +armv7l-debian-10-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-10-cross-armv7l + + +i686-debian-10-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-10-cross-i686 + + +mips-debian-10-container: + extends: .container_job + allow_failure: false + variables: + NAME: debian-10-cross-mips + + +mips64el-debian-10-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-10-cross-mips64el + + +mipsel-debian-10-container: + extends: .container_job + allow_failure: false + variables: + NAME: debian-10-cross-mipsel + + +ppc64le-debian-10-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-10-cross-ppc64le + + +s390x-debian-10-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-10-cross-s390x + + +aarch64-debian-11-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-11-cross-aarch64 + + +armv6l-debian-11-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-11-cross-armv6l + + +armv7l-debian-11-container: + extends: .container_job + allow_failure: false + variables: + NAME: debian-11-cross-armv7l + + +i686-debian-11-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-11-cross-i686 + + +mips64el-debian-11-container: + extends: .container_job + allow_failure: false + variables: + NAME: debian-11-cross-mips64el + + +mipsel-debian-11-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-11-cross-mipsel + + +ppc64le-debian-11-container: + extends: .container_job + allow_failure: false + variables: + NAME: debian-11-cross-ppc64le + + +s390x-debian-11-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-11-cross-s390x + + +aarch64-debian-sid-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-sid-cross-aarch64 + + +armv6l-debian-sid-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-sid-cross-armv6l + + +armv7l-debian-sid-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-sid-cross-armv7l + + +i686-debian-sid-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-sid-cross-i686 + + +mips64el-debian-sid-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-sid-cross-mips64el + + +mipsel-debian-sid-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-sid-cross-mipsel + + +ppc64le-debian-sid-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-sid-cross-ppc64le + + +s390x-debian-sid-container: + extends: .container_job + allow_failure: true + variables: + NAME: debian-sid-cross-s390x + + +mingw32-fedora-35-container: + extends: .container_job + allow_failure: true + variables: + NAME: fedora-35-cross-mingw32 + + +mingw64-fedora-35-container: + extends: .container_job + allow_failure: false + variables: + NAME: fedora-35-cross-mingw64 + + +mingw32-fedora-rawhide-container: + extends: .container_job + allow_failure: true + variables: + NAME: fedora-rawhide-cross-mingw32 + + +mingw64-fedora-rawhide-container: + extends: .container_job + allow_failure: true + variables: + NAME: fedora-rawhide-cross-mingw64 diff --git a/ci/gitlab/sanity-checks.yml b/ci/gitlab/sanity-checks.yml new file mode 100644 index 0000000000..90f6ff8205 --- /dev/null +++ b/ci/gitlab/sanity-checks.yml @@ -0,0 +1,18 @@ +# THIS FILE WAS AUTO-GENERATED +# +# $ lcitool manifest ci/manifest.yml +# +# https://gitlab.com/libvirt/libvirt-ci + + +check-dco: + stage: sanity_checks + needs: [] + image: registry.gitlab.com/libvirt/libvirt-ci/check-dco:master + script: + - /check-dco libvirt + except: + variables: + - $CI_PROJECT_NAMESPACE =3D=3D 'libvirt' + variables: + GIT_DEPTH: 1000 --=20 2.35.3