From nobody Sun May 5 06:42:25 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 205.139.110.61 as permitted sender) client-ip=205.139.110.61; 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 205.139.110.61 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=1590757298; cv=none; d=zohomail.com; s=zohoarc; b=epuwgAgeph1jZwGlKeKmlPAaTdQmu4sMHIcqI0jP5MaB6bRwvOnsoPl5cHA88UOK1yFBQfp+7aPkSPtZYsS+EXpZnValqHNUTnX8Qhtblrqy/GCxDw9kRPvJw7DVvt59KQC+UVs7+DPTAvzSAVj/v0aLQ00jTfuae8R6nOJwTrM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1590757298; 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=rosI/9YJvNI6/GOgqJuUh2iLAjRP0RJIMHVd6Yp44Sc=; b=Aa1n+Ybxm2jdpBsgMAbVA4lccQei9I1GTHDWIbGy3HQmyVW4r0ArTTYLJfzglIcpTxLhxARm65YbW9u170lcktghn4wTYor7YoBRgzu9aCEFrJLFf2xYZkRu5heOkuuDMBhiyLd5fIKmVgzykZv3pBajfeg7SwuokcScwd/5iW8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 205.139.110.61 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-1.mimecast.com [205.139.110.61]) by mx.zohomail.com with SMTPS id 1590757298007708.8950211518871; Fri, 29 May 2020 06:01:38 -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-248-ZI_fsTMIN_eYg9dgOA6Esw-1; Fri, 29 May 2020 09:01:04 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id DF8088015D2; Fri, 29 May 2020 13:00:56 +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 97FBAA1035; Fri, 29 May 2020 13:00:56 +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 E41961809543; Fri, 29 May 2020 13:00:53 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id 04TD0pBg011326 for ; Fri, 29 May 2020 09:00:51 -0400 Received: by smtp.corp.redhat.com (Postfix) id 2D7F7A1035; Fri, 29 May 2020 13:00:51 +0000 (UTC) Received: from kinshicho.usersys.redhat.com (unknown [10.40.194.79]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 8C39399DE6 for ; Fri, 29 May 2020 13:00:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1590757296; 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=rosI/9YJvNI6/GOgqJuUh2iLAjRP0RJIMHVd6Yp44Sc=; b=Fo3vRMcAcRaeDUlEug1x08DamDFSwroTqxsekOpev6i4nBBmMMWGR4a9tEkKolfCa7GF5q /CNykMPB1Iz7BdyhcmbQ4q5p75y+2GZKB8ary6xFkx7PXo+TTp/lM4smk6G4nPnEfx6dYC TGyaYA+bMfrRKVVv6wrQy6BIf/Og0ic= X-MC-Unique: ZI_fsTMIN_eYg9dgOA6Esw-1 From: Andrea Bolognani To: libvir-list@redhat.com Subject: [libvirt PATCH 1/5] ci: Use variables to build image names Date: Fri, 29 May 2020 15:00:40 +0200 Message-Id: <20200529130044.466874-2-abologna@redhat.com> In-Reply-To: <20200529130044.466874-1-abologna@redhat.com> References: <20200529130044.466874-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 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.13 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 removes a lot of repetition and makes the configuration much easier to read. Signed-off-by: Andrea Bolognani Reviewed-by: Daniel P. Berrang=C3=A9 --- .gitlab-ci.yml | 79 ++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 57 insertions(+), 22 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 149334ed6f..35895a4931 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -18,6 +18,7 @@ stages: # Default native build jobs that are always run .native_build_default_job_template: &native_build_default_job_definition stage: native_build + image: quay.io/libvirt/buildenv-libvirt-$NAME:latest cache: paths: - ccache/ @@ -42,6 +43,7 @@ stages: # Default cross build jobs that are always run .cross_build_default_job_template: &cross_build_default_job_definition stage: cross_build + image: quay.io/libvirt/buildenv-libvirt-$NAME-cross-$CROSS:latest cache: paths: - ccache/ @@ -67,94 +69,127 @@ stages: =20 x64-debian-9: <<: *native_build_extra_job_definition - image: quay.io/libvirt/buildenv-libvirt-debian-9:latest + variables: + NAME: debian-9 =20 x64-debian-10: <<: *native_build_default_job_definition - image: quay.io/libvirt/buildenv-libvirt-debian-10:latest + variables: + NAME: debian-10 =20 x64-debian-sid: <<: *native_build_extra_job_definition - image: quay.io/libvirt/buildenv-libvirt-debian-sid:latest + variables: + NAME: debian-sid =20 x64-centos-7: <<: *native_build_default_job_definition - image: quay.io/libvirt/buildenv-libvirt-centos-7:latest + variables: + NAME: centos-7 =20 x64-centos-8: <<: *native_build_extra_job_definition - image: quay.io/libvirt/buildenv-libvirt-centos-8:latest + variables: + NAME: centos-8 =20 x64-fedora-31: <<: *native_build_extra_job_definition - image: quay.io/libvirt/buildenv-libvirt-fedora-31:latest + variables: + NAME: fedora-31 =20 x64-fedora-32: <<: *native_build_default_job_definition - image: quay.io/libvirt/buildenv-libvirt-fedora-32:latest + variables: + NAME: fedora-32 =20 x64-fedora-rawhide: <<: *native_build_default_job_definition - image: quay.io/libvirt/buildenv-libvirt-fedora-rawhide:latest + variables: + NAME: fedora-rawhide =20 x64-opensuse-151: <<: *native_build_default_job_definition - image: quay.io/libvirt/buildenv-libvirt-opensuse-151:latest + variables: + NAME: opensuse-151 =20 x64-ubuntu-1804: <<: *native_build_extra_job_definition - image: quay.io/libvirt/buildenv-libvirt-ubuntu-1804:latest + variables: + NAME: ubuntu-1804 =20 x64-ubuntu-2004: <<: *native_build_default_job_definition - image: quay.io/libvirt/buildenv-libvirt-ubuntu-2004:latest + variables: + NAME: ubuntu-2004 =20 =20 # Cross compiled build jobs =20 armv6l-debian-9: <<: *cross_build_extra_job_definition - image: quay.io/libvirt/buildenv-libvirt-debian-9-cross-armv6l:latest + variables: + NAME: debian-9 + CROSS: armv6l =20 mips64el-debian-9: <<: *cross_build_extra_job_definition - image: quay.io/libvirt/buildenv-libvirt-debian-9-cross-mips64el:latest + variables: + NAME: debian-9 + CROSS: mips64el =20 mips-debian-9: <<: *cross_build_extra_job_definition - image: quay.io/libvirt/buildenv-libvirt-debian-9-cross-mips:latest + variables: + NAME: debian-9 + CROSS: mips =20 aarch64-debian-10: <<: *cross_build_extra_job_definition - image: quay.io/libvirt/buildenv-libvirt-debian-10-cross-aarch64:latest + variables: + NAME: debian-10 + CROSS: aarch64 =20 ppc64le-debian-10: <<: *cross_build_extra_job_definition - image: quay.io/libvirt/buildenv-libvirt-debian-10-cross-ppc64le:latest + variables: + NAME: debian-10 + CROSS: ppc64le =20 s390x-debian-10: <<: *cross_build_default_job_definition - image: quay.io/libvirt/buildenv-libvirt-debian-10-cross-s390x:latest + variables: + NAME: debian-10 + CROSS: s390x =20 armv7l-debian-sid: <<: *cross_build_default_job_definition - image: quay.io/libvirt/buildenv-libvirt-debian-sid-cross-armv7l:latest + variables: + NAME: debian-sid + CROSS: armv7l =20 i686-debian-sid: <<: *cross_build_extra_job_definition - image: quay.io/libvirt/buildenv-libvirt-debian-sid-cross-i686:latest + variables: + NAME: debian-sid + CROSS: i686 =20 mipsel-debian-sid: <<: *cross_build_extra_job_definition - image: quay.io/libvirt/buildenv-libvirt-debian-sid-cross-mipsel:latest + variables: + NAME: debian-sid + CROSS: mipsel =20 mingw32-fedora-rawhide: <<: *cross_build_default_job_definition - image: quay.io/libvirt/buildenv-libvirt-fedora-rawhide-cross-mingw32:lat= est + variables: + NAME: fedora-rawhide + CROSS: mingw32 =20 mingw64-fedora-rawhide: <<: *cross_build_default_job_definition - image: quay.io/libvirt/buildenv-libvirt-fedora-rawhide-cross-mingw64:lat= est + variables: + NAME: fedora-rawhide + CROSS: mingw64 =20 =20 # This artifact published by this job is downloaded by libvirt.org to --=20 2.25.4 From nobody Sun May 5 06:42:25 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=1590757273; cv=none; d=zohomail.com; s=zohoarc; b=Fb9yVzXPl1HwGczptQOZqqBU3riluLQqyi0oQpAZz/8gZ3Awh/kBA1asN2AmFWrcIQKLFLqcrX07Omrt+TEZgTatM5/Sy3/JUJDYUOSuVwKKwVZfeMMrWXAhum4O6fTxCk9HPtnNSclA6eACKMysoUrZi/XoYPvEdGeSvA0OD3w= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1590757273; 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=hpbgYq1XvWviZI884OGRcF60uSSTUTstbnc0tV4lmcI=; b=NrTypGJsQaz/KPOCEbSuFdbe4qhJgw0MxhmwL77QDTsfwlO2p9PwSYtwDHgHYpIkHAa2zI1HoORYXOegBexxDOXl5gS2VV7uDpqRnJG8YrqiQXFXTvuMiQ0Td1xlWTYP7mTEeQXS2fOU75TMlgGEQz7SPaSQ4K9DGTeozIna2Xc= 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 1590757273288204.83211040332583; Fri, 29 May 2020 06:01:13 -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-355-y2vz1kVqNw-INXmmTHwR0A-1; Fri, 29 May 2020 09:01:09 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id DF7A08015D1; Fri, 29 May 2020 13:00:56 +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 553F899DE6; Fri, 29 May 2020 13:00:56 +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 79FE11809547; Fri, 29 May 2020 13:00:54 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id 04TD0qs8011334 for ; Fri, 29 May 2020 09:00:52 -0400 Received: by smtp.corp.redhat.com (Postfix) id 22F7DA1035; Fri, 29 May 2020 13:00:52 +0000 (UTC) Received: from kinshicho.usersys.redhat.com (unknown [10.40.194.79]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9317599DE6 for ; Fri, 29 May 2020 13:00:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1590757272; 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=hpbgYq1XvWviZI884OGRcF60uSSTUTstbnc0tV4lmcI=; b=hB1WRMjSm2URK7ZrlmY1WB923ahm2mUZ1OCPiRFtNsMqwxFgi2BPgVhfvN3qbzUDcLiilu aYI/Ob/GlpG+ituU/9ivHwJp2WIp9kFL5twoWpCPlxSAxK7BroLz8FdHqc28vGfD9gyQ5J HtijqHUZTlrKBC85XRUuBJdoeA6y4lA= X-MC-Unique: y2vz1kVqNw-INXmmTHwR0A-1 From: Andrea Bolognani To: libvir-list@redhat.com Subject: [libvirt PATCH 2/5] ci: Add 'other' stage Date: Fri, 29 May 2020 15:00:41 +0200 Message-Id: <20200529130044.466874-3-abologna@redhat.com> In-Reply-To: <20200529130044.466874-1-abologna@redhat.com> References: <20200529130044.466874-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 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.13 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" We're going to build container images as part of the CI pipeline soon, which means that we need to move all jobs that run in a container image which is not provided by an external project (such as the one that we use for DCO checking) later in the pipeline or they will fail. Signed-off-by: Andrea Bolognani --- .gitlab-ci.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 35895a4931..8a5b3372de 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -5,6 +5,7 @@ stages: - prebuild - native_build - cross_build + - other =20 .script_variables: &script_variables | export MAKEFLAGS=3D"-j$(getconf _NPROCESSORS_ONLN)" @@ -196,7 +197,7 @@ mingw64-fedora-rawhide: # be deployed to the web root: # https://gitlab.com/libvirt/libvirt/-/jobs/artifacts/master/download?j= ob=3Dwebsite website: - stage: prebuild + stage: other before_script: - *script_variables script: @@ -218,7 +219,7 @@ website: =20 =20 codestyle: - stage: prebuild + stage: other before_script: - *script_variables script: --=20 2.25.4 From nobody Sun May 5 06:42:25 2024 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=1590757317; cv=none; d=zohomail.com; s=zohoarc; b=dRCRrTiT4ks2tE0w4ooYgWEqthO1gFAq+ifzwseCzP/h3sGtLQBzkFmQwaMMGja+IxwEd3wL35z4KRZKYm7NyQbhzbeZqJ2VFxl9feY6WuHxyTUWmRKPdpcXKM2a3ChGhkmFMaKSBSPgVOAEn7WFV3rMg3ly8w/6Fylkyupe7PY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1590757317; 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=REK9lksu9GeafcLLbIFq5gIqwQ1nkO+CqiHqIn7HnEY=; b=G1CRpG6do78v3R98aeoRTyvovbo6h8AHCNjYD2bEq2YHeoHNeB2W0Ti0Bi8iRC8qa8PvUUUd4RXWH5hM5u6EzyrAvoOqKhF1WbhDJBhiiEFLnYi+QdX8Udo229DoksWpejpNyZ74p7CrSWNIUC5cEYcbkPj3mOqJtYsRLEWzbBw= 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 1590757317490896.540918257125; Fri, 29 May 2020 06:01:57 -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-104-ilq-bGKqNdedXcgn01_bsA-1; Fri, 29 May 2020 09:01:23 -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 6809E81CBF5; Fri, 29 May 2020 13:01:09 +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 467D25DA2A; Fri, 29 May 2020 13:01:09 +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 166AD6EF49; Fri, 29 May 2020 13:01:09 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id 04TD0rSN011342 for ; Fri, 29 May 2020 09:00:53 -0400 Received: by smtp.corp.redhat.com (Postfix) id 3BDB3A1035; Fri, 29 May 2020 13:00:53 +0000 (UTC) Received: from kinshicho.usersys.redhat.com (unknown [10.40.194.79]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 7C58A99DE6 for ; Fri, 29 May 2020 13:00:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1590757313; 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=REK9lksu9GeafcLLbIFq5gIqwQ1nkO+CqiHqIn7HnEY=; b=iM4y86sRSMy36PEZSm6CGu/raQ6AkhtE3vI0Ygs4EfzlZLO7xmLhIbP0dsDlL2WKrSA7hY kWf+B+1ke2FmMzkxkqlpKh07JBRAyXNXpn0IHaz6POm4sT7GbKw1jDAdtQGqGCVqCAuS+Y 09Tj57lyCjltKe/2HQlfGVPu2CSUEgE= X-MC-Unique: ilq-bGKqNdedXcgn01_bsA-1 From: Andrea Bolognani To: libvir-list@redhat.com Subject: [libvirt PATCH 3/5] ci: Use GitLab container registry Date: Fri, 29 May 2020 15:00:42 +0200 Message-Id: <20200529130044.466874-4-abologna@redhat.com> In-Reply-To: <20200529130044.466874-1-abologna@redhat.com> References: <20200529130044.466874-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 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" Instead of using pre-built containers hosted on Quay, build containers as part of the GitLab CI pipeline and upload them to the GitLab container registry for later use. This will not significantly slow down builds, because containers are only rebuilt when the corresponding Dockerfile has been modified. Signed-off-by: Andrea Bolognani --- .gitlab-ci.yml | 234 +++++++++++++++++- ci/containers/README.rst | 14 ++ ci/containers/ci-centos-7.Dockerfile | 137 ++++++++++ ci/containers/ci-centos-8.Dockerfile | 108 ++++++++ .../ci-debian-10-cross-aarch64.Dockerfile | 122 +++++++++ .../ci-debian-10-cross-armv6l.Dockerfile | 120 +++++++++ .../ci-debian-10-cross-armv7l.Dockerfile | 121 +++++++++ .../ci-debian-10-cross-i686.Dockerfile | 121 +++++++++ .../ci-debian-10-cross-mips.Dockerfile | 121 +++++++++ .../ci-debian-10-cross-mips64el.Dockerfile | 121 +++++++++ .../ci-debian-10-cross-mipsel.Dockerfile | 121 +++++++++ .../ci-debian-10-cross-ppc64le.Dockerfile | 121 +++++++++ .../ci-debian-10-cross-s390x.Dockerfile | 121 +++++++++ ci/containers/ci-debian-10.Dockerfile | 112 +++++++++ .../ci-debian-9-cross-aarch64.Dockerfile | 126 ++++++++++ .../ci-debian-9-cross-armv6l.Dockerfile | 124 ++++++++++ .../ci-debian-9-cross-armv7l.Dockerfile | 125 ++++++++++ .../ci-debian-9-cross-mips.Dockerfile | 125 ++++++++++ .../ci-debian-9-cross-mips64el.Dockerfile | 125 ++++++++++ .../ci-debian-9-cross-mipsel.Dockerfile | 125 ++++++++++ .../ci-debian-9-cross-ppc64le.Dockerfile | 125 ++++++++++ .../ci-debian-9-cross-s390x.Dockerfile | 125 ++++++++++ ci/containers/ci-debian-9.Dockerfile | 116 +++++++++ .../ci-debian-sid-cross-aarch64.Dockerfile | 122 +++++++++ .../ci-debian-sid-cross-armv6l.Dockerfile | 120 +++++++++ .../ci-debian-sid-cross-armv7l.Dockerfile | 121 +++++++++ .../ci-debian-sid-cross-i686.Dockerfile | 121 +++++++++ .../ci-debian-sid-cross-mips.Dockerfile | 121 +++++++++ .../ci-debian-sid-cross-mips64el.Dockerfile | 121 +++++++++ .../ci-debian-sid-cross-mipsel.Dockerfile | 120 +++++++++ .../ci-debian-sid-cross-ppc64le.Dockerfile | 121 +++++++++ .../ci-debian-sid-cross-s390x.Dockerfile | 121 +++++++++ ci/containers/ci-debian-sid.Dockerfile | 112 +++++++++ ci/containers/ci-fedora-31.Dockerfile | 109 ++++++++ ci/containers/ci-fedora-32.Dockerfile | 109 ++++++++ ...ci-fedora-rawhide-cross-mingw32.Dockerfile | 129 ++++++++++ ...ci-fedora-rawhide-cross-mingw64.Dockerfile | 129 ++++++++++ ci/containers/ci-fedora-rawhide.Dockerfile | 110 ++++++++ ci/containers/ci-opensuse-151.Dockerfile | 109 ++++++++ ci/containers/ci-ubuntu-1804.Dockerfile | 117 +++++++++ ci/containers/ci-ubuntu-2004.Dockerfile | 113 +++++++++ ci/containers/refresh | 43 ++++ 42 files changed, 4973 insertions(+), 5 deletions(-) create mode 100644 ci/containers/README.rst create mode 100644 ci/containers/ci-centos-7.Dockerfile create mode 100644 ci/containers/ci-centos-8.Dockerfile create mode 100644 ci/containers/ci-debian-10-cross-aarch64.Dockerfile create mode 100644 ci/containers/ci-debian-10-cross-armv6l.Dockerfile create mode 100644 ci/containers/ci-debian-10-cross-armv7l.Dockerfile create mode 100644 ci/containers/ci-debian-10-cross-i686.Dockerfile create mode 100644 ci/containers/ci-debian-10-cross-mips.Dockerfile create mode 100644 ci/containers/ci-debian-10-cross-mips64el.Dockerfile create mode 100644 ci/containers/ci-debian-10-cross-mipsel.Dockerfile create mode 100644 ci/containers/ci-debian-10-cross-ppc64le.Dockerfile create mode 100644 ci/containers/ci-debian-10-cross-s390x.Dockerfile create mode 100644 ci/containers/ci-debian-10.Dockerfile create mode 100644 ci/containers/ci-debian-9-cross-aarch64.Dockerfile create mode 100644 ci/containers/ci-debian-9-cross-armv6l.Dockerfile create mode 100644 ci/containers/ci-debian-9-cross-armv7l.Dockerfile create mode 100644 ci/containers/ci-debian-9-cross-mips.Dockerfile create mode 100644 ci/containers/ci-debian-9-cross-mips64el.Dockerfile create mode 100644 ci/containers/ci-debian-9-cross-mipsel.Dockerfile create mode 100644 ci/containers/ci-debian-9-cross-ppc64le.Dockerfile create mode 100644 ci/containers/ci-debian-9-cross-s390x.Dockerfile create mode 100644 ci/containers/ci-debian-9.Dockerfile create mode 100644 ci/containers/ci-debian-sid-cross-aarch64.Dockerfile create mode 100644 ci/containers/ci-debian-sid-cross-armv6l.Dockerfile create mode 100644 ci/containers/ci-debian-sid-cross-armv7l.Dockerfile create mode 100644 ci/containers/ci-debian-sid-cross-i686.Dockerfile create mode 100644 ci/containers/ci-debian-sid-cross-mips.Dockerfile create mode 100644 ci/containers/ci-debian-sid-cross-mips64el.Dockerfile create mode 100644 ci/containers/ci-debian-sid-cross-mipsel.Dockerfile create mode 100644 ci/containers/ci-debian-sid-cross-ppc64le.Dockerfile create mode 100644 ci/containers/ci-debian-sid-cross-s390x.Dockerfile create mode 100644 ci/containers/ci-debian-sid.Dockerfile create mode 100644 ci/containers/ci-fedora-31.Dockerfile create mode 100644 ci/containers/ci-fedora-32.Dockerfile create mode 100644 ci/containers/ci-fedora-rawhide-cross-mingw32.Dockerfile create mode 100644 ci/containers/ci-fedora-rawhide-cross-mingw64.Dockerfile create mode 100644 ci/containers/ci-fedora-rawhide.Dockerfile create mode 100644 ci/containers/ci-opensuse-151.Dockerfile create mode 100644 ci/containers/ci-ubuntu-1804.Dockerfile create mode 100644 ci/containers/ci-ubuntu-2004.Dockerfile create mode 100755 ci/containers/refresh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8a5b3372de..0e7917d6cd 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,6 +3,7 @@ variables: =20 stages: - prebuild + - containers - native_build - cross_build - other @@ -16,10 +17,35 @@ stages: =20 # Common templates =20 +.container_job_template: &container_job_definition + image: docker:stable + stage: containers + 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/ci-$NAME.Dockerfile" ci/containers + - docker push "$TAG" + after_script: + - docker logout + +# We build many containers which can be useful to debug problems but are n= ot +# needed for the pipeline itself to complete: those sometimes fail, and wh= en +# that happens it's mostly because of temporary issues with Debian sid. We +# don't want those failures to affect the overall pipeline status +.container_optional_job_template: &container_optional_job_definition + <<: *container_job_definition + allow_failure: true + # Default native build jobs that are always run .native_build_default_job_template: &native_build_default_job_definition stage: native_build - image: quay.io/libvirt/buildenv-libvirt-$NAME:latest + image: $CI_REGISTRY_IMAGE/ci-$NAME:latest cache: paths: - ccache/ @@ -44,7 +70,7 @@ stages: # Default cross build jobs that are always run .cross_build_default_job_template: &cross_build_default_job_definition stage: cross_build - image: quay.io/libvirt/buildenv-libvirt-$NAME-cross-$CROSS:latest + image: $CI_REGISTRY_IMAGE/ci-$NAME-cross-$CROSS:latest cache: paths: - ccache/ @@ -66,6 +92,204 @@ stages: - /^ci-full-.*$/ =20 =20 +# Container build jobs + +centos-7-container: + <<: *container_job_definition + variables: + NAME: centos-7 + +centos-8-container: + <<: *container_job_definition + variables: + NAME: centos-8 + +debian-9-container: + <<: *container_job_definition + variables: + NAME: debian-9 + +debian-9-cross-aarch64-container: + <<: *container_optional_job_definition + variables: + NAME: debian-9-cross-aarch64 + +debian-9-cross-armv6l-container: + <<: *container_job_definition + variables: + NAME: debian-9-cross-armv6l + +debian-9-cross-armv7l-container: + <<: *container_optional_job_definition + variables: + NAME: debian-9-cross-armv7l + +debian-9-cross-mips-container: + <<: *container_job_definition + variables: + NAME: debian-9-cross-mips + +debian-9-cross-mips64el-container: + <<: *container_job_definition + variables: + NAME: debian-9-cross-mips64el + +debian-9-cross-mipsel-container: + <<: *container_optional_job_definition + variables: + NAME: debian-9-cross-mipsel + +debian-9-cross-ppc64le-container: + <<: *container_optional_job_definition + variables: + NAME: debian-9-cross-ppc64le + +debian-9-cross-s390x-container: + <<: *container_optional_job_definition + variables: + NAME: debian-9-cross-s390x + +debian-10-container: + <<: *container_job_definition + variables: + NAME: debian-10 + +debian-10-cross-aarch64-container: + <<: *container_job_definition + variables: + NAME: debian-10-cross-aarch64 + +debian-10-cross-armv6l-container: + <<: *container_optional_job_definition + variables: + NAME: debian-10-cross-armv6l + +debian-10-cross-armv7l-container: + <<: *container_optional_job_definition + variables: + NAME: debian-10-cross-armv7l + +debian-10-cross-i686-container: + <<: *container_optional_job_definition + variables: + NAME: debian-10-cross-i686 + +debian-10-cross-mips-container: + <<: *container_optional_job_definition + variables: + NAME: debian-10-cross-mips + +debian-10-cross-mips64el-container: + <<: *container_optional_job_definition + variables: + NAME: debian-10-cross-mips64el + +debian-10-cross-mipsel-container: + <<: *container_optional_job_definition + variables: + NAME: debian-10-cross-mipsel + +debian-10-cross-ppc64le-container: + <<: *container_job_definition + variables: + NAME: debian-10-cross-ppc64le + +debian-10-cross-s390x-container: + <<: *container_job_definition + variables: + NAME: debian-10-cross-s390x + +debian-sid-container: + <<: *container_job_definition + variables: + NAME: debian-sid + +debian-sid-cross-aarch64-container: + <<: *container_optional_job_definition + variables: + NAME: debian-sid-cross-aarch64 + +debian-sid-cross-armv6l-container: + <<: *container_optional_job_definition + variables: + NAME: debian-sid-cross-armv6l + +debian-sid-cross-armv7l-container: + <<: *container_job_definition + variables: + NAME: debian-sid-cross-armv7l + +debian-sid-cross-i686-container: + <<: *container_job_definition + variables: + NAME: debian-sid-cross-i686 + +debian-sid-cross-mips-container: + <<: *container_optional_job_definition + variables: + NAME: debian-sid-cross-mips + +debian-sid-cross-mips64el-container: + <<: *container_optional_job_definition + variables: + NAME: debian-sid-cross-mips64el + +debian-sid-cross-mipsel-container: + <<: *container_job_definition + variables: + NAME: debian-sid-cross-mipsel + +debian-sid-cross-ppc64le-container: + <<: *container_optional_job_definition + variables: + NAME: debian-sid-cross-ppc64le + +debian-sid-cross-s390x-container: + <<: *container_optional_job_definition + variables: + NAME: debian-sid-cross-s390x + +fedora-31-container: + <<: *container_job_definition + variables: + NAME: fedora-31 + +fedora-32-container: + <<: *container_job_definition + variables: + NAME: fedora-32 + +fedora-rawhide-container: + <<: *container_job_definition + variables: + NAME: fedora-rawhide + +fedora-rawhide-cross-mingw32-container: + <<: *container_job_definition + variables: + NAME: fedora-rawhide-cross-mingw32 + +fedora-rawhide-cross-mingw64-container: + <<: *container_job_definition + variables: + NAME: fedora-rawhide-cross-mingw64 + +opensuse-151-container: + <<: *container_job_definition + variables: + NAME: opensuse-151 + RPM: skip + +ubuntu-1804-container: + <<: *container_job_definition + variables: + NAME: ubuntu-1804 + +ubuntu-2004-container: + <<: *container_job_definition + variables: + NAME: ubuntu-2004 + # Native architecture build + test jobs =20 x64-debian-9: @@ -198,6 +422,7 @@ mingw64-fedora-rawhide: # https://gitlab.com/libvirt/libvirt/-/jobs/artifacts/master/download?j= ob=3Dwebsite website: stage: other + image: $CI_REGISTRY_IMAGE/ci-centos-8:latest before_script: - *script_variables script: @@ -208,7 +433,6 @@ website: - $MAKE -C docs install - cd .. - mv vroot/share/doc/libvirt/html/ website - image: quay.io/libvirt/buildenv-libvirt-centos-8:latest artifacts: expose_as: 'Website' name: 'website' @@ -220,6 +444,7 @@ website: =20 codestyle: stage: other + image: $CI_REGISTRY_IMAGE/ci-centos-8:latest before_script: - *script_variables script: @@ -227,7 +452,6 @@ codestyle: - cd build - ../autogen.sh || (cat config.log && exit 1) - $MAKE syntax-check - image: quay.io/libvirt/buildenv-libvirt-centos-8:latest =20 =20 # This artifact published by this job is downloaded to push to Weblate @@ -235,6 +459,7 @@ codestyle: # https://gitlab.com/libvirt/libvirt/-/jobs/artifacts/master/download?j= ob=3Dpotfile potfile: stage: prebuild + image: $CI_REGISTRY_IMAGE/ci-centos-8:latest only: - master before_script: @@ -247,7 +472,6 @@ potfile: - $MAKE -C po libvirt.pot - cd .. - mv build/po/libvirt.pot libvirt.pot - image: quay.io/libvirt/buildenv-libvirt-centos-8:latest artifacts: expose_as: 'Potfile' name: 'potfile' diff --git a/ci/containers/README.rst b/ci/containers/README.rst new file mode 100644 index 0000000000..530897e311 --- /dev/null +++ b/ci/containers/README.rst @@ -0,0 +1,14 @@ +CI job assets +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D + +This directory contains assets used in the automated CI jobs, most +notably the Dockerfiles used to build container images in which the +CI jobs then run. + +The ``refresh`` script is used to re-create the Dockerfiles using the +``lcitool`` command that is provided by repo +https://gitlab.com/libvirt/libvirt-ci + +The containers are built during the CI process and cached in the GitLab +container registry of the project doing the build. The cached containers +can be deleted at any time and will be correctly rebuilt. diff --git a/ci/containers/ci-centos-7.Dockerfile b/ci/containers/ci-centos= -7.Dockerfile new file mode 100644 index 0000000000..abbbdcc47a --- /dev/null +++ b/ci/containers/ci-centos-7.Dockerfile @@ -0,0 +1,137 @@ +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 \ + audit-libs-devel \ + augeas \ + autoconf \ + automake \ + avahi-devel \ + bash \ + bash-completion \ + ca-certificates \ + ccache \ + chrony \ + cyrus-sasl-devel \ + dbus-devel \ + device-mapper-devel \ + dnsmasq \ + dwarves \ + ebtables \ + fuse-devel \ + gcc \ + gdb \ + gettext \ + gettext-devel \ + git \ + glib2-devel \ + glibc-common \ + glibc-devel \ + glusterfs-api-devel \ + gnutls-devel \ + iproute \ + iscsi-initiator-utils \ + kmod \ + libacl-devel \ + libattr-devel \ + libblkid-devel \ + libcap-ng-devel \ + libcurl-devel \ + libiscsi-devel \ + libnl3-devel \ + libpcap-devel \ + libpciaccess-devel \ + libprlsdk-devel \ + librbd1-devel \ + libselinux-devel \ + libssh-devel \ + libssh2-devel \ + libtirpc-devel \ + libtool \ + libudev-devel \ + libwsman-devel \ + libxml2 \ + libxml2-devel \ + libxslt \ + lsof \ + lvm2 \ + make \ + ncurses-devel \ + net-tools \ + netcf-devel \ + nfs-utils \ + ninja-build \ + numactl-devel \ + numad \ + parted \ + parted-devel \ + patch \ + perl \ + pkgconfig \ + polkit \ + python3 \ + python3-pip \ + python3-setuptools \ + python3-wheel \ + python36-docutils \ + qemu-img \ + radvd \ + readline-devel \ + rpm-build \ + sanlock-devel \ + screen \ + scrub \ + strace \ + sudo \ + systemtap-sdt-devel \ + vim \ + wireshark-devel \ + xfsprogs-devel \ + yajl-devel && \ + 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" [... many more Dockerfiles here ...] diff --git a/ci/containers/refresh b/ci/containers/refresh new file mode 100755 index 0000000000..8c00363ae1 --- /dev/null +++ b/ci/containers/refresh @@ -0,0 +1,43 @@ +#!/bin/sh + +if test -z "$1" +then + echo "syntax: $0 PATH-TO-LCITOOL" + exit 1 +fi + +LCITOOL=3D$1 + +if ! test -x "$LCITOOL" +then + echo "$LCITOOL is not executable" + exit 1 +fi + +HOSTS=3D$($LCITOOL hosts | grep -v freebsd) + +for host in $HOSTS +do + name=3D${host#libvirt-} + + case "$name" in + fedora-rawhide) + for cross in mingw32 mingw64 + do + $LCITOOL dockerfile $host libvirt --cross $cross >ci-$name-cro= ss-$cross.Dockerfile + done + ;; + debian-*) + for cross in aarch64 armv6l armv7l i686 mips mips64el mipsel ppc64= le s390x + do + if test "$name" =3D "debian-9" && test "$cross" =3D "i686" + then + continue + fi + $LCITOOL dockerfile $host libvirt --cross $cross >ci-$name-cro= ss-$cross.Dockerfile + done + ;; + esac + + $LCITOOL dockerfile $host libvirt >ci-$name.Dockerfile +done --=20 2.25.4 From nobody Sun May 5 06:42:25 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=1590757327; cv=none; d=zohomail.com; s=zohoarc; b=GUavJKLQ0DAADsuHdshbY9PXckHh8krIFZpEUsLjPUzUr5ityRYNVsaT29e3yHyauQa7d6SyDX3g29P3IW1xiX/i+Lyc6vRhHvKCKTcM/kwEF1vdDY503xnnGMlm4Opbt269GyjswRA+hsZX1sjdZhrZtVvOL4aYSKBoW6DLOEM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1590757327; 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=TP+UPFO83D6JAtH9/jZLfJOg4U6WPDaGdWAPgpFu5uI=; b=E5dmwatbDxyj5wvUjyLNMiDmTRIWJL/vhg08bvf9rpZu/Z1Vhdg8BDqkgOGIBtD5GDifuaCpUrrzXETgp7pCe+S3fTvH3nKg7L8KNXGqpfhak7sU3UehiabfAHhIyI71nvxTGNSIVlWyKBRpUBv5+giXACBSawx34NSPMC4ij/o= 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 1590757327797975.0961566943229; Fri, 29 May 2020 06:02: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-503-7T12YLisNCaGqr521dVFYg-1; Fri, 29 May 2020 09:01:24 -0400 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 9F3A8872FF7; Fri, 29 May 2020 13:01:12 +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 7BF072B6F1; Fri, 29 May 2020 13:01:12 +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 48A1D1809554; Fri, 29 May 2020 13:01:12 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id 04TD0slJ011348 for ; Fri, 29 May 2020 09:00:54 -0400 Received: by smtp.corp.redhat.com (Postfix) id 235EFA1035; Fri, 29 May 2020 13:00:54 +0000 (UTC) Received: from kinshicho.usersys.redhat.com (unknown [10.40.194.79]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9183D99DE6 for ; Fri, 29 May 2020 13:00:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1590757326; 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=TP+UPFO83D6JAtH9/jZLfJOg4U6WPDaGdWAPgpFu5uI=; b=JhLFI38mEiBUDscHvn3AizgO9UZ1pWkJj6aTGLSedj8aXL+ziDMbxaParaIQD6LNvoPXGN nbCP7Yfwe1lDaOGS44fdTKze2rzYClgORtgiPXcN8RGLcL7TI69HLPP8aNagCxYpAMo4gf xCitkRiJO63Ras/wH94bTkAYQt2iKqI= X-MC-Unique: 7T12YLisNCaGqr521dVFYg-1 From: Andrea Bolognani To: libvir-list@redhat.com Subject: [libvirt PATCH 4/5] ci: Update build system integration Date: Fri, 29 May 2020 15:00:43 +0200 Message-Id: <20200529130044.466874-5-abologna@redhat.com> In-Reply-To: <20200529130044.466874-1-abologna@redhat.com> References: <20200529130044.466874-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 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.23 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 ci-* targets need to know where our container images are stored and how they are called to work, so now that we use the GitLab container registry instead of Quay some changes are necessary. Signed-off-by: Andrea Bolognani --- ci/Makefile | 16 ++++++++++++---- ci/list-images.sh | 24 ++++++------------------ 2 files changed, 18 insertions(+), 22 deletions(-) diff --git a/ci/Makefile b/ci/Makefile index bc1dac11e3..e1a5faaba6 100644 --- a/ci/Makefile +++ b/ci/Makefile @@ -47,10 +47,13 @@ CI_PREPARE_SCRIPT =3D $(CI_ROOTDIR)/prepare.sh # Script containing build instructions CI_BUILD_SCRIPT =3D $(CI_ROOTDIR)/build.sh =20 +# Registry where container images are stored +CI_IMAGE_REGISTRY =3D registry.gitlab.com + # Location of the container images we're going to pull # Can be useful to overridde to use a locally built # image instead -CI_IMAGE_PREFIX =3D quay.io/libvirt/buildenv-libvirt- +CI_IMAGE_PREFIX =3D libvirt/libvirt/ci- =20 # The default tag is ':latest' but if the container # repo above uses different conventions this can override it @@ -213,7 +216,12 @@ ci-prepare-tree: ci-check-engine fi =20 ci-run-command@%: ci-prepare-tree - $(CI_ENGINE) run $(CI_ENGINE_ARGS) $(CI_IMAGE_PREFIX)$*$(CI_IMAGE_TAG) \ + image=3D; \ + if test "$(CI_IMAGE_REGISTRY)"; then \ + image=3D"$${image}$(CI_IMAGE_REGISTRY)/"; \ + fi; \ + image=3D"$${image}$(CI_IMAGE_PREFIX)$*$(CI_IMAGE_TAG)"; \ + $(CI_ENGINE) run $(CI_ENGINE_ARGS) "$$image" \ /bin/bash -c ' \ $(CI_USER_HOME)/prepare || exit 1; \ sudo \ @@ -243,11 +251,11 @@ ci-list-images: @echo @echo "Available x86 container images:" @echo - @sh list-images.sh "$(CI_ENGINE)" "$(CI_IMAGE_PREFIX)" | grep -v cross + @sh list-images.sh "$(CI_IMAGE_PREFIX)" | grep -v cross @echo @echo "Available cross-compiler container images:" @echo - @sh list-images.sh "$(CI_ENGINE)" "$(CI_IMAGE_PREFIX)" | grep cross + @sh list-images.sh "$(CI_IMAGE_PREFIX)" | grep cross @echo =20 ci-help: diff --git a/ci/list-images.sh b/ci/list-images.sh index 35efdb6982..9ae2f60a95 100644 --- a/ci/list-images.sh +++ b/ci/list-images.sh @@ -1,26 +1,14 @@ #!/bin/sh =20 -engine=3D"$1" -prefix=3D"$2" +prefix=3D"$1" =20 -do_podman() { - # Podman freaks out if the search term ends with a dash, which ours - # by default does, so let's strip it. The repository name is the - # second field in the output, and it already starts with the registry - podman search --limit 100 "${prefix%-}" | while read _ repo _; do - echo "$repo" - done -} +PROJECT_ID=3D192693 =20 -do_docker() { - # Docker doesn't include the registry name in the output, so we have - # to add it. The repository name is the first field in the output - registry=3D"${prefix%%/*}" - docker search --limit 100 "$prefix" | while read repo _; do - echo "$registry/$repo" - done +all_repos() { + curl -s "https://gitlab.com/api/v4/projects/$PROJECT_ID/registry/reposit= ories?per_page=3D100" \ + | tr , '\n' | grep '"path":' | sed 's,"path":",,g;s,"$,,g' } =20 -"do_$engine" | grep "^$prefix" | sed "s,^$prefix,,g" | while read repo; do +all_repos | grep "^$prefix" | sed "s,^$prefix,,g" | while read repo; do echo " $repo" done | sort -u --=20 2.25.4 From nobody Sun May 5 06:42:25 2024 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=1590757286; cv=none; d=zohomail.com; s=zohoarc; b=hnnwbs4Du/hWqRBjC7jgmf129HSJtBR+BX5YXhzk2wk+zqkYxOFxYYrX8i3Od3CUpa8j/MoMLI8Aqi5HnF6mBelpbA0fiLfYBszc7FDI0xLshhmV6x+sX9Ae7pdDxmzrubWCMChihkzcCf1DOyMt6ZEJjteFNrGHHkyba7QtcnY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1590757286; 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=UpAD0kl6KFKaSUURUa+n4On2XPvWv7ehfmT+JeQJsbU=; b=asfAebeR5smx5JrRFienWZzfBegn+JqsqGjTe1RMW0pZSlwIegjreKbRjJ82haldrf9GDtXAQ+oHDHKcY+TII/m9W7NG+GqZylgbPPCutgTnqi+wx5VZIre95gTej8FtjzX6M0YOnzCjKdePP4HvNTXZ3BvZcrvMTNKpr2/Fr0g= 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 1590757286600461.51035042461956; Fri, 29 May 2020 06:01:26 -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-294-fSLN9PAEMOGt2XhENlfxoQ-1; Fri, 29 May 2020 09:01:21 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 4D43F461; Fri, 29 May 2020 13:01:10 +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 2767677CA2; Fri, 29 May 2020 13:01:10 +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 E9B941809541; Fri, 29 May 2020 13:01:09 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id 04TD0tsg011359 for ; Fri, 29 May 2020 09:00:55 -0400 Received: by smtp.corp.redhat.com (Postfix) id 0FEDC99DE6; Fri, 29 May 2020 13:00:55 +0000 (UTC) Received: from kinshicho.usersys.redhat.com (unknown [10.40.194.79]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 7D90EA1035 for ; Fri, 29 May 2020 13:00:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1590757284; 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=UpAD0kl6KFKaSUURUa+n4On2XPvWv7ehfmT+JeQJsbU=; b=iiqQI7/1p3jYwnfTsJnWWpwqOcuB9Bkdbe7u4cBrmx2a1Cutk+0jsicxXsICRAKsDcBTlc GRFeU0HiSqFD8YdLMNMqkwzXA62AL1jqvlegF+JzAweQiecM+xx1j9jzQjEIjduYEDxNEI QPk8r1qxF5r5LHckTVgC7ez7SyHJi8U= X-MC-Unique: fSLN9PAEMOGt2XhENlfxoQ-1 From: Andrea Bolognani To: libvir-list@redhat.com Subject: [libvirt PATCH 5/5] ci: Improve CI_IMAGE_TAG handling Date: Fri, 29 May 2020 15:00:44 +0200 Message-Id: <20200529130044.466874-6-abologna@redhat.com> In-Reply-To: <20200529130044.466874-1-abologna@redhat.com> References: <20200529130044.466874-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 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.15 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" Since we're already building the full container image reference dynamically at this point, we can finally get rid of the annoying requirement to include ":" in CI_IMAGE_TAG. Signed-off-by: Andrea Bolognani --- ci/Makefile | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/ci/Makefile b/ci/Makefile index e1a5faaba6..96e4d62611 100644 --- a/ci/Makefile +++ b/ci/Makefile @@ -55,9 +55,9 @@ CI_IMAGE_REGISTRY =3D registry.gitlab.com # image instead CI_IMAGE_PREFIX =3D libvirt/libvirt/ci- =20 -# The default tag is ':latest' but if the container +# The default tag is 'latest' but if the container # repo above uses different conventions this can override it -CI_IMAGE_TAG =3D :latest +CI_IMAGE_TAG =3D latest =20 # We delete the virtual root after completion, set # to 0 if you need to keep it around for debugging @@ -220,7 +220,10 @@ ci-run-command@%: ci-prepare-tree if test "$(CI_IMAGE_REGISTRY)"; then \ image=3D"$${image}$(CI_IMAGE_REGISTRY)/"; \ fi; \ - image=3D"$${image}$(CI_IMAGE_PREFIX)$*$(CI_IMAGE_TAG)"; \ + image=3D"$${image}$(CI_IMAGE_PREFIX)$*"; \ + if test "$(CI_IMAGE_TAG)"; then \ + image=3D"$${image}:$(CI_IMAGE_TAG)"; \ + fi; \ $(CI_ENGINE) run $(CI_ENGINE_ARGS) "$$image" \ /bin/bash -c ' \ $(CI_USER_HOME)/prepare || exit 1; \ --=20 2.25.4