From nobody Tue May 14 19:14:04 2024 Delivered-To: importer@patchew.org Received-SPF: none (zohomail.com: 8.43.85.245 is neither permitted nor denied by domain of lists.libvirt.org) client-ip=8.43.85.245; envelope-from=devel-bounces@lists.libvirt.org; helo=lists.libvirt.org; Authentication-Results: mx.zohomail.com; spf=none (zohomail.com: 8.43.85.245 is neither permitted nor denied by domain of lists.libvirt.org) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1705660745025883.1454085425546; Fri, 19 Jan 2024 02:39:05 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id B088A19F5; Fri, 19 Jan 2024 05:39:03 -0500 (EST) Received: from lists.libvirt.org.85.43.8.in-addr.arpa (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 9632619B6; Fri, 19 Jan 2024 05:31:33 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id 9165819B6; Fri, 19 Jan 2024 05:31:27 -0500 (EST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 1546519B6 for ; Fri, 19 Jan 2024 05:31:23 -0500 (EST) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-135-k0LIYRCQMKa5by1bzwJlvg-1; Fri, 19 Jan 2024 05:31:21 -0500 Received: from smtp.corp.redhat.com (int-mx10.intmail.prod.int.rdu2.redhat.com [10.11.54.10]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 2CD3C185A780 for ; Fri, 19 Jan 2024 10:31:21 +0000 (UTC) Received: from speedmetal.lan (unknown [10.45.242.25]) by smtp.corp.redhat.com (Postfix) with ESMTP id 37B03492BE2 for ; Fri, 19 Jan 2024 10:31:19 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.4 X-MC-Unique: k0LIYRCQMKa5by1bzwJlvg-1 From: Peter Krempa To: devel@lists.libvirt.org Subject: [PATCH] ci: Regenerate with latest 'lcitool' and fix manual job definitions Date: Fri, 19 Jan 2024 11:31:19 +0100 Message-ID: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.10 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Message-ID-Hash: QNXC4T6FKMRZVTDBDFRHCESRKZFIOWTQ X-Message-ID-Hash: QNXC4T6FKMRZVTDBDFRHCESRKZFIOWTQ X-MailFrom: pkrempa@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-config-1; header-match-config-2; header-match-config-3; header-match-devel.lists.libvirt.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; suspicious-header X-Mailman-Version: 3.2.2 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Post: List-Subscribe: List-Unsubscribe: Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZM-MESSAGEID: 1705660746736100001 The latest lcitool merged the 'prebuilt-env' and 'local-env' jobs into one which use variables to pick up the right environment and steps rather than duplicating everything. Regenerate the generated job definitions, fix the helper definitions and also fix the manually defined jobs (website-job). Signed-off-by: Peter Krempa Reviewed-by: Daniel P. Berrang=C3=A9 --- .gitlab-ci.yml | 68 +--- ci/gitlab/build-templates.yml | 118 +++--- ci/gitlab/builds.yml | 696 +++++++--------------------------- ci/integration-template.yml | 30 +- ci/integration.yml | 147 ++----- 5 files changed, 253 insertions(+), 806 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8bad761b32..81433652ae 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -20,6 +20,7 @@ include: - '/ci/integration.yml' .native_build_job: + extends: .gitlab_native_build_job cache: paths: - ccache/ @@ -40,17 +41,8 @@ include: mv "$HOME"/rpmbuild/RPMS/x86_64/ libvirt-rpms/; fi -.native_build_job_prebuilt_env: - extends: - - .native_build_job - - .gitlab_native_build_job_prebuilt_env - -.native_build_job_local_env: - extends: - - .native_build_job - - .gitlab_native_build_job_local_env - .cross_build_job: + extends: .gitlab_cross_build_job cache: paths: - ccache/ @@ -68,21 +60,14 @@ include: fi; fi -.cross_build_job_prebuilt_env: - extends: - - .cross_build_job - - .gitlab_cross_build_job_prebuilt_env - -.cross_build_job_local_env: - extends: - - .cross_build_job - - .gitlab_cross_build_job_local_env - - # This artifact published by this job is downloaded by libvirt.org to # be deployed to the web root: # https://gitlab.com/libvirt/libvirt/-/jobs/artifacts/master/download?j= ob=3Dwebsite -.website_job: +website_job: + extends: .gitlab_native_build_job + needs: + - job: x86_64-almalinux-8-container + optional: true script: - source ci/jobs.sh - run_website_build @@ -96,50 +81,21 @@ include: expire_in: 30 days paths: - website - -website_prebuilt_env: - extends: - - .website_job - - .gitlab_native_build_job_prebuilt_env - needs: - - job: x86_64-almalinux-8-container - optional: true variables: NAME: almalinux-8 - -website_local_env: - extends: - - .website_job - - .gitlab_native_build_job_local_env - variables: - IMAGE: docker.io/library/almalinux:8 - NAME: almalinux-8 - + TARGET_BASE_IMAGE: docker.io/library/almalinux:8 .codestyle_job: stage: sanity_checks - script: - - source ci/jobs.sh - - run_codestyle - -codestyle_prebuilt_env: - extends: - - .codestyle_job - - .gitlab_native_build_job_prebuilt_env needs: - job: x86_64-opensuse-leap-15-container optional: true + script: + - source ci/jobs.sh + - run_codestyle variables: NAME: opensuse-leap-15 - -codestyle_local_env: - extends: - - .codestyle_job - - .gitlab_native_build_job_local_env - variables: - IMAGE: registry.opensuse.org/opensuse/leap:15.4 - NAME: opensuse-leap-15 - + TARGET_BASE_IMAGE: registry.opensuse.org/opensuse/leap:15.5 # This artifact published by this job is downloaded to push to Weblate # for translation usage: diff --git a/ci/gitlab/build-templates.yml b/ci/gitlab/build-templates.yml index 1f533ec2dd..75d9a6f127 100644 --- a/ci/gitlab/build-templates.yml +++ b/ci/gitlab/build-templates.yml @@ -20,16 +20,25 @@ # include CI changes # - Validating code committed to a fork branch # -# Note: the rules across the prebuilt_env and local_env templates +# Note: the rules across the prebuilt and local container scenarios # should be logical inverses, such that jobs are mutually exclusive # -.gitlab_native_build_job_prebuilt_env: - image: $CI_REGISTRY/$RUN_UPSTREAM_NAMESPACE/libvirt/ci-$NAME:latest +.gitlab_native_build_job: + image: $IMAGE stage: builds interruptible: true before_script: + - if test "$IMAGE" =3D=3D "$TARGET_BASE_IMAGE" ; + then + source ci/buildenv/$NAME.sh ; + install_buildenv ; + fi - cat /packages.txt + variables: + IMAGE: $CI_REGISTRY/$RUN_UPSTREAM_NAMESPACE/libvirt/ci-$NAME:latest rules: + ### Rules where we expect to use pre-built container images + # upstream: pushes to the default branch - if: '$CI_PROJECT_NAMESPACE =3D=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIP= ELINE_SOURCE =3D=3D "push" && $CI_COMMIT_BRANCH =3D=3D $CI_DEFAULT_BRANCH &= & $JOB_OPTIONAL' when: manual @@ -63,49 +72,41 @@ - if: '$CI_PIPELINE_SOURCE =3D=3D "merge_request_event" && $CI_MERGE_R= EQUEST_TARGET_BRANCH_NAME =3D=3D $CI_DEFAULT_BRANCH' when: on_success - # upstream+forks: that's all folks - - when: never -.gitlab_native_build_job_local_env: - image: $IMAGE - stage: builds - interruptible: true - before_script: - - source ci/buildenv/$NAME.sh - - install_buildenv - - cat /packages.txt - rules: - # upstream: pushes to a non-default branch - - if: '$CI_PROJECT_NAMESPACE =3D=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIP= ELINE_SOURCE =3D=3D "push" && $CI_COMMIT_BRANCH !=3D $CI_DEFAULT_BRANCH && = $JOB_OPTIONAL' - when: manual - allow_failure: true - - if: '$CI_PROJECT_NAMESPACE =3D=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIP= ELINE_SOURCE =3D=3D "push" && $CI_COMMIT_BRANCH !=3D $CI_DEFAULT_BRANCH' - when: on_success - - # forks: avoid build in local env when job requests run in upstream co= ntainers - - if: '$CI_PROJECT_NAMESPACE !=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIPEL= INE_SOURCE =3D=3D "push" && $RUN_PIPELINE_UPSTREAM_ENV' - when: never + ### Rules where we need to use the target base container image # forks: pushes to branches with pipeline requested - if: '$CI_PROJECT_NAMESPACE !=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIPEL= INE_SOURCE =3D=3D "push" && $RUN_PIPELINE && $JOB_OPTIONAL' when: manual allow_failure: true + variables: + IMAGE: $TARGET_BASE_IMAGE - if: '$CI_PROJECT_NAMESPACE !=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIPEL= INE_SOURCE =3D=3D "push" && $RUN_PIPELINE' when: on_success + variables: + IMAGE: $TARGET_BASE_IMAGE # upstream: other web/api/scheduled pipelines targeting non-default br= anches - if: '$CI_PROJECT_NAMESPACE =3D=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIP= ELINE_SOURCE =3D~ /(web|api|schedule)/ && $CI_COMMIT_REF_NAME !=3D $CI_DEFA= ULT_BRANCH && $JOB_OPTIONAL' when: manual allow_failure: true + variables: + IMAGE: $TARGET_BASE_IMAGE - if: '$CI_PROJECT_NAMESPACE =3D=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIP= ELINE_SOURCE =3D~ /(web|api|schedule)/ && $CI_COMMIT_REF_NAME !=3D $CI_DEFA= ULT_BRANCH' when: on_success + variables: + IMAGE: $TARGET_BASE_IMAGE # forks: other web/api/scheduled pipelines - if: '$CI_PROJECT_NAMESPACE !=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIPEL= INE_SOURCE =3D~ /(web|api|schedule)/ && $JOB_OPTIONAL' when: manual allow_failure: true + variables: + IMAGE: $TARGET_BASE_IMAGE - if: '$CI_PROJECT_NAMESPACE !=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIPEL= INE_SOURCE =3D~ /(web|api|schedule)/' when: on_success + variables: + IMAGE: $TARGET_BASE_IMAGE # upstream+forks: merge requests targeting the default branch, with CI= changes - if: '$CI_PIPELINE_SOURCE =3D=3D "merge_request_event" && $CI_MERGE_R= EQUEST_TARGET_BRANCH_NAME =3D=3D $CI_DEFAULT_BRANCH && $JOB_OPTIONAL' @@ -114,18 +115,28 @@ - ci/containers/$NAME.Dockerfile when: manual allow_failure: true + variables: + IMAGE: $TARGET_BASE_IMAGE - if: '$CI_PIPELINE_SOURCE =3D=3D "merge_request_event" && $CI_MERGE_R= EQUEST_TARGET_BRANCH_NAME =3D=3D $CI_DEFAULT_BRANCH' changes: - ci/gitlab/container-templates.yml - ci/containers/$NAME.Dockerfile when: on_success + variables: + IMAGE: $TARGET_BASE_IMAGE # upstream+forks: merge requests targeting non-default branches - if: '$CI_PIPELINE_SOURCE =3D=3D "merge_request_event" && $CI_MERGE_R= EQUEST_TARGET_BRANCH_NAME !=3D $CI_DEFAULT_BRANCH && $JOB_OPTIONAL' when: manual allow_failure: true + variables: + IMAGE: $TARGET_BASE_IMAGE - if: '$CI_PIPELINE_SOURCE =3D=3D "merge_request_event" && $CI_MERGE_R= EQUEST_TARGET_BRANCH_NAME !=3D $CI_DEFAULT_BRANCH' when: on_success + variables: + IMAGE: $TARGET_BASE_IMAGE + + ### Neither prebuilt or local container images # upstream+forks: that's all folks - when: never @@ -146,16 +157,25 @@ # include CI changes # - Validating code committed to a fork branch # -# Note: the rules across the prebuilt_env and local_env templates +# Note: the rules across the prebuilt and local container scenarios # should be logical inverses, such that jobs are mutually exclusive # -.gitlab_cross_build_job_prebuilt_env: - image: $CI_REGISTRY/$RUN_UPSTREAM_NAMESPACE/libvirt/ci-$NAME-cross-$CROS= S:latest +.gitlab_cross_build_job: + image: $IMAGE stage: builds interruptible: true before_script: + - if test "$IMAGE" =3D=3D "$TARGET_BASE_IMAGE" ; + then + source ci/buildenv/$NAME-cross-$CROSS.sh ; + install_buildenv ; + fi - cat /packages.txt + variables: + IMAGE: $CI_REGISTRY/$RUN_UPSTREAM_NAMESPACE/libvirt/ci-$NAME-cross-$CR= OSS:latest rules: + ### Rules where we expect to use pre-built container images + # upstream: pushes to the default branch - if: '$CI_PROJECT_NAMESPACE =3D=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIP= ELINE_SOURCE =3D=3D "push" && $CI_COMMIT_BRANCH =3D=3D $CI_DEFAULT_BRANCH &= & $JOB_OPTIONAL' when: manual @@ -189,49 +209,41 @@ - if: '$CI_PIPELINE_SOURCE =3D=3D "merge_request_event" && $CI_MERGE_R= EQUEST_TARGET_BRANCH_NAME =3D=3D $CI_DEFAULT_BRANCH' when: on_success - # upstream+forks: that's all folks - - when: never -.gitlab_cross_build_job_local_env: - image: $IMAGE - stage: builds - interruptible: true - before_script: - - source ci/buildenv/$NAME-cross-$CROSS.sh - - install_buildenv - - cat /packages.txt - rules: - # upstream: pushes to a non-default branch - - if: '$CI_PROJECT_NAMESPACE =3D=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIP= ELINE_SOURCE =3D=3D "push" && $CI_COMMIT_BRANCH !=3D $CI_DEFAULT_BRANCH && = $JOB_OPTIONAL' - when: manual - allow_failure: true - - if: '$CI_PROJECT_NAMESPACE =3D=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIP= ELINE_SOURCE =3D=3D "push" && $CI_COMMIT_BRANCH !=3D $CI_DEFAULT_BRANCH' - when: on_success - - # forks: avoid build in local env when job requests run in upstream co= ntainers - - if: '$CI_PROJECT_NAMESPACE !=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIPEL= INE_SOURCE =3D=3D "push" && $RUN_PIPELINE_UPSTREAM_ENV' - when: never + ### Rules where we need to use the target base container image # forks: pushes to branches with pipeline requested - if: '$CI_PROJECT_NAMESPACE !=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIPEL= INE_SOURCE =3D=3D "push" && $RUN_PIPELINE && $JOB_OPTIONAL' when: manual allow_failure: true + variables: + IMAGE: $TARGET_BASE_IMAGE - if: '$CI_PROJECT_NAMESPACE !=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIPEL= INE_SOURCE =3D=3D "push" && $RUN_PIPELINE' when: on_success + variables: + IMAGE: $TARGET_BASE_IMAGE # upstream: other web/api/scheduled pipelines targeting non-default br= anches - if: '$CI_PROJECT_NAMESPACE =3D=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIP= ELINE_SOURCE =3D~ /(web|api|schedule)/ && $CI_COMMIT_REF_NAME !=3D $CI_DEFA= ULT_BRANCH && $JOB_OPTIONAL' when: manual allow_failure: true + variables: + IMAGE: $TARGET_BASE_IMAGE - if: '$CI_PROJECT_NAMESPACE =3D=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIP= ELINE_SOURCE =3D~ /(web|api|schedule)/ && $CI_COMMIT_REF_NAME !=3D $CI_DEFA= ULT_BRANCH' when: on_success + variables: + IMAGE: $TARGET_BASE_IMAGE # forks: other web/api/scheduled pipelines - if: '$CI_PROJECT_NAMESPACE !=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIPEL= INE_SOURCE =3D~ /(web|api|schedule)/ && $JOB_OPTIONAL' when: manual allow_failure: true + variables: + IMAGE: $TARGET_BASE_IMAGE - if: '$CI_PROJECT_NAMESPACE !=3D $RUN_UPSTREAM_NAMESPACE && $CI_PIPEL= INE_SOURCE =3D~ /(web|api|schedule)/' when: on_success + variables: + IMAGE: $TARGET_BASE_IMAGE # upstream+forks: merge requests targeting the default branch, with CI= changes - if: '$CI_PIPELINE_SOURCE =3D=3D "merge_request_event" && $CI_MERGE_R= EQUEST_TARGET_BRANCH_NAME =3D=3D $CI_DEFAULT_BRANCH && $JOB_OPTIONAL' @@ -240,18 +252,28 @@ - ci/containers/$NAME-cross-$CROSS.Dockerfile when: manual allow_failure: true + variables: + IMAGE: $TARGET_BASE_IMAGE - if: '$CI_PIPELINE_SOURCE =3D=3D "merge_request_event" && $CI_MERGE_R= EQUEST_TARGET_BRANCH_NAME =3D=3D $CI_DEFAULT_BRANCH' changes: - ci/gitlab/container-templates.yml - ci/containers/$NAME-cross-$CROSS.Dockerfile when: on_success + variables: + IMAGE: $TARGET_BASE_IMAGE # upstream+forks: merge requests targeting non-default branches - if: '$CI_PIPELINE_SOURCE =3D=3D "merge_request_event" && $CI_MERGE_R= EQUEST_TARGET_BRANCH_NAME !=3D $CI_DEFAULT_BRANCH && $JOB_OPTIONAL' when: manual allow_failure: true + variables: + IMAGE: $TARGET_BASE_IMAGE - if: '$CI_PIPELINE_SOURCE =3D=3D "merge_request_event" && $CI_MERGE_R= EQUEST_TARGET_BRANCH_NAME !=3D $CI_DEFAULT_BRANCH' when: on_success + variables: + IMAGE: $TARGET_BASE_IMAGE + + ### Neither prebuilt or local container images # upstream+forks: that's all folks - when: never diff --git a/ci/gitlab/builds.yml b/ci/gitlab/builds.yml index 434e272e5a..49a0b27029 100644 --- a/ci/gitlab/builds.yml +++ b/ci/gitlab/builds.yml @@ -7,8 +7,8 @@ # Native build jobs -x86_64-almalinux-8-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-almalinux-8: + extends: .native_build_job needs: - job: x86_64-almalinux-8-container optional: true @@ -17,20 +17,11 @@ x86_64-almalinux-8-prebuilt-env: JOB_OPTIONAL: 1 NAME: almalinux-8 RPM: skip - -x86_64-almalinux-8-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - IMAGE: docker.io/library/almalinux:8 - JOB_OPTIONAL: 1 - NAME: almalinux-8 - RPM: skip + TARGET_BASE_IMAGE: docker.io/library/almalinux:8 -x86_64-almalinux-8-clang-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-almalinux-8-clang: + extends: .native_build_job needs: - job: x86_64-almalinux-8-container optional: true @@ -39,108 +30,63 @@ x86_64-almalinux-8-clang-prebuilt-env: CC: clang NAME: almalinux-8 RPM: skip - -x86_64-almalinux-8-clang-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - CC: clang - IMAGE: docker.io/library/almalinux:8 - NAME: almalinux-8 - RPM: skip + TARGET_BASE_IMAGE: docker.io/library/almalinux:8 -x86_64-alpine-319-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-alpine-319: + extends: .native_build_job needs: - job: x86_64-alpine-319-container optional: true allow_failure: false variables: NAME: alpine-319 - -x86_64-alpine-319-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - IMAGE: docker.io/library/alpine:3.19 - NAME: alpine-319 + TARGET_BASE_IMAGE: docker.io/library/alpine:3.19 -x86_64-alpine-edge-prebuilt-env: - extends: .native_build_job_prebuilt_env +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-alpine-edge-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: true - variables: - IMAGE: docker.io/library/alpine:edge - NAME: alpine-edge + TARGET_BASE_IMAGE: docker.io/library/alpine:edge -x86_64-centos-stream-8-prebuilt-env: - extends: .native_build_job_prebuilt_env +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-8-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - IMAGE: quay.io/centos/centos:stream8 - NAME: centos-stream-8 + TARGET_BASE_IMAGE: quay.io/centos/centos:stream8 artifacts: expire_in: 1 day paths: - libvirt-rpms -x86_64-centos-stream-9-prebuilt-env: - extends: .native_build_job_prebuilt_env +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-centos-stream-9-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - IMAGE: quay.io/centos/centos:stream9 - NAME: centos-stream-9 + TARGET_BASE_IMAGE: quay.io/centos/centos:stream9 artifacts: expire_in: 1 day paths: - libvirt-rpms -x86_64-debian-11-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-debian-11: + extends: .native_build_job needs: - job: x86_64-debian-11-container optional: true @@ -148,19 +94,11 @@ x86_64-debian-11-prebuilt-env: variables: JOB_OPTIONAL: 1 NAME: debian-11 - -x86_64-debian-11-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - IMAGE: docker.io/library/debian:11-slim - JOB_OPTIONAL: 1 - NAME: debian-11 + TARGET_BASE_IMAGE: docker.io/library/debian:11-slim -x86_64-debian-11-clang-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-debian-11-clang: + extends: .native_build_job needs: - job: x86_64-debian-11-container optional: true @@ -168,143 +106,85 @@ x86_64-debian-11-clang-prebuilt-env: variables: JOB_OPTIONAL: 1 NAME: debian-11 - -x86_64-debian-11-clang-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - IMAGE: docker.io/library/debian:11-slim - JOB_OPTIONAL: 1 - NAME: debian-11 + TARGET_BASE_IMAGE: docker.io/library/debian:11-slim -x86_64-debian-12-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-debian-12: + extends: .native_build_job needs: - job: x86_64-debian-12-container optional: true allow_failure: false variables: NAME: debian-12 - -x86_64-debian-12-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - IMAGE: docker.io/library/debian:12-slim - NAME: debian-12 + TARGET_BASE_IMAGE: docker.io/library/debian:12-slim -x86_64-debian-12-clang-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-debian-12-clang: + extends: .native_build_job needs: - job: x86_64-debian-12-container optional: true allow_failure: false variables: NAME: debian-12 - -x86_64-debian-12-clang-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - IMAGE: docker.io/library/debian:12-slim - NAME: debian-12 + TARGET_BASE_IMAGE: docker.io/library/debian:12-slim -x86_64-debian-sid-prebuilt-env: - extends: .native_build_job_prebuilt_env +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-debian-sid-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: true - variables: - IMAGE: docker.io/library/debian:sid-slim - NAME: debian-sid + TARGET_BASE_IMAGE: docker.io/library/debian:sid-slim -x86_64-fedora-38-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-fedora-38: + extends: .native_build_job needs: - job: x86_64-fedora-38-container optional: true allow_failure: false variables: NAME: fedora-38 - artifacts: - expire_in: 1 day - paths: - - libvirt-rpms - -x86_64-fedora-38-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - IMAGE: registry.fedoraproject.org/fedora:38 - NAME: fedora-38 + TARGET_BASE_IMAGE: registry.fedoraproject.org/fedora:38 artifacts: expire_in: 1 day paths: - libvirt-rpms -x86_64-fedora-39-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-fedora-39: + extends: .native_build_job needs: - job: x86_64-fedora-39-container optional: true allow_failure: false variables: NAME: fedora-39 - artifacts: - expire_in: 1 day - paths: - - libvirt-rpms - -x86_64-fedora-39-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - IMAGE: registry.fedoraproject.org/fedora:39 - NAME: fedora-39 + TARGET_BASE_IMAGE: registry.fedoraproject.org/fedora:39 artifacts: expire_in: 1 day paths: - libvirt-rpms -x86_64-fedora-rawhide-prebuilt-env: - extends: .native_build_job_prebuilt_env +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-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: true - variables: - IMAGE: registry.fedoraproject.org/fedora:rawhide - NAME: fedora-rawhide + TARGET_BASE_IMAGE: registry.fedoraproject.org/fedora:rawhide -x86_64-fedora-rawhide-clang-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-fedora-rawhide-clang: + extends: .native_build_job needs: - job: x86_64-fedora-rawhide-container optional: true @@ -313,20 +193,11 @@ x86_64-fedora-rawhide-clang-prebuilt-env: CC: clang NAME: fedora-rawhide RPM: skip - -x86_64-fedora-rawhide-clang-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: true - variables: - CC: clang - IMAGE: registry.fedoraproject.org/fedora:rawhide - NAME: fedora-rawhide - RPM: skip + TARGET_BASE_IMAGE: registry.fedoraproject.org/fedora:rawhide -x86_64-opensuse-leap-15-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-opensuse-leap-15: + extends: .native_build_job needs: - job: x86_64-opensuse-leap-15-container optional: true @@ -335,20 +206,11 @@ x86_64-opensuse-leap-15-prebuilt-env: CFLAGS: -Wno-missing-include-dirs NAME: opensuse-leap-15 RPM: skip - -x86_64-opensuse-leap-15-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - CFLAGS: -Wno-missing-include-dirs - IMAGE: registry.opensuse.org/opensuse/leap:15.5 - NAME: opensuse-leap-15 - RPM: skip + TARGET_BASE_IMAGE: registry.opensuse.org/opensuse/leap:15.5 -x86_64-opensuse-tumbleweed-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-opensuse-tumbleweed: + extends: .native_build_job needs: - job: x86_64-opensuse-tumbleweed-container optional: true @@ -356,19 +218,11 @@ x86_64-opensuse-tumbleweed-prebuilt-env: variables: NAME: opensuse-tumbleweed RPM: skip - -x86_64-opensuse-tumbleweed-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: true - variables: - IMAGE: registry.opensuse.org/opensuse/tumbleweed:latest - NAME: opensuse-tumbleweed - RPM: skip + TARGET_BASE_IMAGE: registry.opensuse.org/opensuse/tumbleweed:latest -x86_64-ubuntu-2004-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-ubuntu-2004: + extends: .native_build_job needs: - job: x86_64-ubuntu-2004-container optional: true @@ -377,22 +231,12 @@ x86_64-ubuntu-2004-prebuilt-env: ASAN_OPTIONS: verify_asan_link_order=3D0 MESON_ARGS: -Db_lundef=3Dfalse -Db_sanitize=3Daddress,undefined NAME: ubuntu-2004 - UBSAN_OPTIONS: print_stacktrace=3D1:halt_on_error=3D1 - -x86_64-ubuntu-2004-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - ASAN_OPTIONS: verify_asan_link_order=3D0 - IMAGE: docker.io/library/ubuntu:20.04 - MESON_ARGS: -Db_lundef=3Dfalse -Db_sanitize=3Daddress,undefined - NAME: ubuntu-2004 + TARGET_BASE_IMAGE: docker.io/library/ubuntu:20.04 UBSAN_OPTIONS: print_stacktrace=3D1:halt_on_error=3D1 -x86_64-ubuntu-2204-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-ubuntu-2204: + extends: .native_build_job needs: - job: x86_64-ubuntu-2204-container optional: true @@ -400,19 +244,11 @@ x86_64-ubuntu-2204-prebuilt-env: variables: JOB_OPTIONAL: 1 NAME: ubuntu-2204 + TARGET_BASE_IMAGE: docker.io/library/ubuntu:22.04 -x86_64-ubuntu-2204-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - IMAGE: docker.io/library/ubuntu:22.04 - JOB_OPTIONAL: 1 - NAME: ubuntu-2204 - -x86_64-ubuntu-2204-clang-prebuilt-env: - extends: .native_build_job_prebuilt_env +x86_64-ubuntu-2204-clang: + extends: .native_build_job needs: - job: x86_64-ubuntu-2204-container optional: true @@ -421,25 +257,15 @@ x86_64-ubuntu-2204-clang-prebuilt-env: CC: clang 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-local-env: - extends: .native_build_job_local_env - needs: [] - allow_failure: false - variables: - CC: clang - IMAGE: docker.io/library/ubuntu:22.04 - MESON_ARGS: -Db_lundef=3Dfalse -Db_sanitize=3Daddress,undefined - NAME: ubuntu-2204 + TARGET_BASE_IMAGE: docker.io/library/ubuntu:22.04 UBSAN_OPTIONS: print_stacktrace=3D1:halt_on_error=3D1 # Cross build jobs -aarch64-debian-11-prebuilt-env: - extends: .cross_build_job_prebuilt_env +aarch64-debian-11: + extends: .cross_build_job needs: - job: aarch64-debian-11-container optional: true @@ -448,20 +274,11 @@ aarch64-debian-11-prebuilt-env: CROSS: aarch64 JOB_OPTIONAL: 1 NAME: debian-11 - -aarch64-debian-11-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: aarch64 - IMAGE: docker.io/library/debian:11-slim - JOB_OPTIONAL: 1 - NAME: debian-11 + TARGET_BASE_IMAGE: docker.io/library/debian:11-slim -armv6l-debian-11-prebuilt-env: - extends: .cross_build_job_prebuilt_env +armv6l-debian-11: + extends: .cross_build_job needs: - job: armv6l-debian-11-container optional: true @@ -470,20 +287,11 @@ armv6l-debian-11-prebuilt-env: CROSS: armv6l JOB_OPTIONAL: 1 NAME: debian-11 - -armv6l-debian-11-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: armv6l - IMAGE: docker.io/library/debian:11-slim - JOB_OPTIONAL: 1 - NAME: debian-11 + TARGET_BASE_IMAGE: docker.io/library/debian:11-slim -armv7l-debian-11-prebuilt-env: - extends: .cross_build_job_prebuilt_env +armv7l-debian-11: + extends: .cross_build_job needs: - job: armv7l-debian-11-container optional: true @@ -492,20 +300,11 @@ armv7l-debian-11-prebuilt-env: CROSS: armv7l JOB_OPTIONAL: 1 NAME: debian-11 - -armv7l-debian-11-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: armv7l - IMAGE: docker.io/library/debian:11-slim - JOB_OPTIONAL: 1 - NAME: debian-11 + TARGET_BASE_IMAGE: docker.io/library/debian:11-slim -i686-debian-11-prebuilt-env: - extends: .cross_build_job_prebuilt_env +i686-debian-11: + extends: .cross_build_job needs: - job: i686-debian-11-container optional: true @@ -514,20 +313,11 @@ i686-debian-11-prebuilt-env: CROSS: i686 JOB_OPTIONAL: 1 NAME: debian-11 - -i686-debian-11-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: i686 - IMAGE: docker.io/library/debian:11-slim - JOB_OPTIONAL: 1 - NAME: debian-11 + TARGET_BASE_IMAGE: docker.io/library/debian:11-slim -mips64el-debian-11-prebuilt-env: - extends: .cross_build_job_prebuilt_env +mips64el-debian-11: + extends: .cross_build_job needs: - job: mips64el-debian-11-container optional: true @@ -536,20 +326,11 @@ mips64el-debian-11-prebuilt-env: CROSS: mips64el JOB_OPTIONAL: 1 NAME: debian-11 - -mips64el-debian-11-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: mips64el - IMAGE: docker.io/library/debian:11-slim - JOB_OPTIONAL: 1 - NAME: debian-11 + TARGET_BASE_IMAGE: docker.io/library/debian:11-slim -mipsel-debian-11-prebuilt-env: - extends: .cross_build_job_prebuilt_env +mipsel-debian-11: + extends: .cross_build_job needs: - job: mipsel-debian-11-container optional: true @@ -558,20 +339,11 @@ mipsel-debian-11-prebuilt-env: CROSS: mipsel JOB_OPTIONAL: 1 NAME: debian-11 - -mipsel-debian-11-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: mipsel - IMAGE: docker.io/library/debian:11-slim - JOB_OPTIONAL: 1 - NAME: debian-11 + TARGET_BASE_IMAGE: docker.io/library/debian:11-slim -ppc64le-debian-11-prebuilt-env: - extends: .cross_build_job_prebuilt_env +ppc64le-debian-11: + extends: .cross_build_job needs: - job: ppc64le-debian-11-container optional: true @@ -580,20 +352,11 @@ ppc64le-debian-11-prebuilt-env: CROSS: ppc64le JOB_OPTIONAL: 1 NAME: debian-11 - -ppc64le-debian-11-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: ppc64le - IMAGE: docker.io/library/debian:11-slim - JOB_OPTIONAL: 1 - NAME: debian-11 + TARGET_BASE_IMAGE: docker.io/library/debian:11-slim -s390x-debian-11-prebuilt-env: - extends: .cross_build_job_prebuilt_env +s390x-debian-11: + extends: .cross_build_job needs: - job: s390x-debian-11-container optional: true @@ -602,20 +365,11 @@ s390x-debian-11-prebuilt-env: CROSS: s390x JOB_OPTIONAL: 1 NAME: debian-11 - -s390x-debian-11-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: s390x - IMAGE: docker.io/library/debian:11-slim - JOB_OPTIONAL: 1 - NAME: debian-11 + TARGET_BASE_IMAGE: docker.io/library/debian:11-slim -aarch64-debian-12-prebuilt-env: - extends: .cross_build_job_prebuilt_env +aarch64-debian-12: + extends: .cross_build_job needs: - job: aarch64-debian-12-container optional: true @@ -624,20 +378,11 @@ aarch64-debian-12-prebuilt-env: CROSS: aarch64 JOB_OPTIONAL: 1 NAME: debian-12 - -aarch64-debian-12-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: aarch64 - IMAGE: docker.io/library/debian:12-slim - JOB_OPTIONAL: 1 - NAME: debian-12 + TARGET_BASE_IMAGE: docker.io/library/debian:12-slim -armv6l-debian-12-prebuilt-env: - extends: .cross_build_job_prebuilt_env +armv6l-debian-12: + extends: .cross_build_job needs: - job: armv6l-debian-12-container optional: true @@ -646,20 +391,11 @@ armv6l-debian-12-prebuilt-env: CROSS: armv6l JOB_OPTIONAL: 1 NAME: debian-12 - -armv6l-debian-12-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: armv6l - IMAGE: docker.io/library/debian:12-slim - JOB_OPTIONAL: 1 - NAME: debian-12 + TARGET_BASE_IMAGE: docker.io/library/debian:12-slim -armv7l-debian-12-prebuilt-env: - extends: .cross_build_job_prebuilt_env +armv7l-debian-12: + extends: .cross_build_job needs: - job: armv7l-debian-12-container optional: true @@ -667,19 +403,11 @@ armv7l-debian-12-prebuilt-env: variables: CROSS: armv7l NAME: debian-12 - -armv7l-debian-12-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: armv7l - IMAGE: docker.io/library/debian:12-slim - NAME: debian-12 + TARGET_BASE_IMAGE: docker.io/library/debian:12-slim -i686-debian-12-prebuilt-env: - extends: .cross_build_job_prebuilt_env +i686-debian-12: + extends: .cross_build_job needs: - job: i686-debian-12-container optional: true @@ -688,20 +416,11 @@ i686-debian-12-prebuilt-env: CROSS: i686 JOB_OPTIONAL: 1 NAME: debian-12 - -i686-debian-12-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: i686 - IMAGE: docker.io/library/debian:12-slim - JOB_OPTIONAL: 1 - NAME: debian-12 + TARGET_BASE_IMAGE: docker.io/library/debian:12-slim -mips64el-debian-12-prebuilt-env: - extends: .cross_build_job_prebuilt_env +mips64el-debian-12: + extends: .cross_build_job needs: - job: mips64el-debian-12-container optional: true @@ -710,20 +429,11 @@ mips64el-debian-12-prebuilt-env: CROSS: mips64el JOB_OPTIONAL: 1 NAME: debian-12 - -mips64el-debian-12-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: mips64el - IMAGE: docker.io/library/debian:12-slim - JOB_OPTIONAL: 1 - NAME: debian-12 + TARGET_BASE_IMAGE: docker.io/library/debian:12-slim -mipsel-debian-12-prebuilt-env: - extends: .cross_build_job_prebuilt_env +mipsel-debian-12: + extends: .cross_build_job needs: - job: mipsel-debian-12-container optional: true @@ -732,20 +442,11 @@ mipsel-debian-12-prebuilt-env: CROSS: mipsel JOB_OPTIONAL: 1 NAME: debian-12 - -mipsel-debian-12-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: mipsel - IMAGE: docker.io/library/debian:12-slim - JOB_OPTIONAL: 1 - NAME: debian-12 + TARGET_BASE_IMAGE: docker.io/library/debian:12-slim -ppc64le-debian-12-prebuilt-env: - extends: .cross_build_job_prebuilt_env +ppc64le-debian-12: + extends: .cross_build_job needs: - job: ppc64le-debian-12-container optional: true @@ -754,20 +455,11 @@ ppc64le-debian-12-prebuilt-env: CROSS: ppc64le JOB_OPTIONAL: 1 NAME: debian-12 - -ppc64le-debian-12-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: ppc64le - IMAGE: docker.io/library/debian:12-slim - JOB_OPTIONAL: 1 - NAME: debian-12 + TARGET_BASE_IMAGE: docker.io/library/debian:12-slim -s390x-debian-12-prebuilt-env: - extends: .cross_build_job_prebuilt_env +s390x-debian-12: + extends: .cross_build_job needs: - job: s390x-debian-12-container optional: true @@ -776,20 +468,11 @@ s390x-debian-12-prebuilt-env: CROSS: s390x JOB_OPTIONAL: 1 NAME: debian-12 - -s390x-debian-12-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: s390x - IMAGE: docker.io/library/debian:12-slim - JOB_OPTIONAL: 1 - NAME: debian-12 + TARGET_BASE_IMAGE: docker.io/library/debian:12-slim -aarch64-debian-sid-prebuilt-env: - extends: .cross_build_job_prebuilt_env +aarch64-debian-sid: + extends: .cross_build_job needs: - job: aarch64-debian-sid-container optional: true @@ -798,20 +481,11 @@ aarch64-debian-sid-prebuilt-env: CROSS: aarch64 JOB_OPTIONAL: 1 NAME: debian-sid - -aarch64-debian-sid-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: aarch64 - IMAGE: docker.io/library/debian:sid-slim - JOB_OPTIONAL: 1 - NAME: debian-sid + TARGET_BASE_IMAGE: docker.io/library/debian:sid-slim -armv6l-debian-sid-prebuilt-env: - extends: .cross_build_job_prebuilt_env +armv6l-debian-sid: + extends: .cross_build_job needs: - job: armv6l-debian-sid-container optional: true @@ -820,20 +494,11 @@ armv6l-debian-sid-prebuilt-env: CROSS: armv6l JOB_OPTIONAL: 1 NAME: debian-sid - -armv6l-debian-sid-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: armv6l - IMAGE: docker.io/library/debian:sid-slim - JOB_OPTIONAL: 1 - NAME: debian-sid + TARGET_BASE_IMAGE: docker.io/library/debian:sid-slim -armv7l-debian-sid-prebuilt-env: - extends: .cross_build_job_prebuilt_env +armv7l-debian-sid: + extends: .cross_build_job needs: - job: armv7l-debian-sid-container optional: true @@ -842,20 +507,11 @@ armv7l-debian-sid-prebuilt-env: CROSS: armv7l JOB_OPTIONAL: 1 NAME: debian-sid - -armv7l-debian-sid-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: armv7l - IMAGE: docker.io/library/debian:sid-slim - JOB_OPTIONAL: 1 - NAME: debian-sid + TARGET_BASE_IMAGE: docker.io/library/debian:sid-slim -i686-debian-sid-prebuilt-env: - extends: .cross_build_job_prebuilt_env +i686-debian-sid: + extends: .cross_build_job needs: - job: i686-debian-sid-container optional: true @@ -864,20 +520,11 @@ i686-debian-sid-prebuilt-env: CROSS: i686 JOB_OPTIONAL: 1 NAME: debian-sid - -i686-debian-sid-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: i686 - IMAGE: docker.io/library/debian:sid-slim - JOB_OPTIONAL: 1 - NAME: debian-sid + TARGET_BASE_IMAGE: docker.io/library/debian:sid-slim -mips64el-debian-sid-prebuilt-env: - extends: .cross_build_job_prebuilt_env +mips64el-debian-sid: + extends: .cross_build_job needs: - job: mips64el-debian-sid-container optional: true @@ -886,20 +533,11 @@ mips64el-debian-sid-prebuilt-env: CROSS: mips64el JOB_OPTIONAL: 1 NAME: debian-sid - -mips64el-debian-sid-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: mips64el - IMAGE: docker.io/library/debian:sid-slim - JOB_OPTIONAL: 1 - NAME: debian-sid + TARGET_BASE_IMAGE: docker.io/library/debian:sid-slim -ppc64le-debian-sid-prebuilt-env: - extends: .cross_build_job_prebuilt_env +ppc64le-debian-sid: + extends: .cross_build_job needs: - job: ppc64le-debian-sid-container optional: true @@ -908,20 +546,11 @@ ppc64le-debian-sid-prebuilt-env: CROSS: ppc64le JOB_OPTIONAL: 1 NAME: debian-sid - -ppc64le-debian-sid-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: ppc64le - IMAGE: docker.io/library/debian:sid-slim - JOB_OPTIONAL: 1 - NAME: debian-sid + TARGET_BASE_IMAGE: docker.io/library/debian:sid-slim -s390x-debian-sid-prebuilt-env: - extends: .cross_build_job_prebuilt_env +s390x-debian-sid: + extends: .cross_build_job needs: - job: s390x-debian-sid-container optional: true @@ -930,20 +559,11 @@ s390x-debian-sid-prebuilt-env: CROSS: s390x JOB_OPTIONAL: 1 NAME: debian-sid - -s390x-debian-sid-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: s390x - IMAGE: docker.io/library/debian:sid-slim - JOB_OPTIONAL: 1 - NAME: debian-sid + TARGET_BASE_IMAGE: docker.io/library/debian:sid-slim -mingw32-fedora-38-prebuilt-env: - extends: .cross_build_job_prebuilt_env +mingw32-fedora-38: + extends: .cross_build_job needs: - job: mingw32-fedora-38-container optional: true @@ -952,20 +572,11 @@ mingw32-fedora-38-prebuilt-env: CROSS: mingw32 JOB_OPTIONAL: 1 NAME: fedora-38 - -mingw32-fedora-38-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: mingw32 - IMAGE: registry.fedoraproject.org/fedora:38 - JOB_OPTIONAL: 1 - NAME: fedora-38 + TARGET_BASE_IMAGE: registry.fedoraproject.org/fedora:38 -mingw64-fedora-38-prebuilt-env: - extends: .cross_build_job_prebuilt_env +mingw64-fedora-38: + extends: .cross_build_job needs: - job: mingw64-fedora-38-container optional: true @@ -973,19 +584,11 @@ mingw64-fedora-38-prebuilt-env: variables: CROSS: mingw64 NAME: fedora-38 - -mingw64-fedora-38-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: false - variables: - CROSS: mingw64 - IMAGE: registry.fedoraproject.org/fedora:38 - NAME: fedora-38 + TARGET_BASE_IMAGE: registry.fedoraproject.org/fedora:38 -mingw32-fedora-rawhide-prebuilt-env: - extends: .cross_build_job_prebuilt_env +mingw32-fedora-rawhide: + extends: .cross_build_job needs: - job: mingw32-fedora-rawhide-container optional: true @@ -993,19 +596,11 @@ mingw32-fedora-rawhide-prebuilt-env: variables: CROSS: mingw32 NAME: fedora-rawhide - -mingw32-fedora-rawhide-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: true - variables: - CROSS: mingw32 - IMAGE: registry.fedoraproject.org/fedora:rawhide - NAME: fedora-rawhide + TARGET_BASE_IMAGE: registry.fedoraproject.org/fedora:rawhide -mingw64-fedora-rawhide-prebuilt-env: - extends: .cross_build_job_prebuilt_env +mingw64-fedora-rawhide: + extends: .cross_build_job needs: - job: mingw64-fedora-rawhide-container optional: true @@ -1014,16 +609,7 @@ mingw64-fedora-rawhide-prebuilt-env: CROSS: mingw64 JOB_OPTIONAL: 1 NAME: fedora-rawhide - -mingw64-fedora-rawhide-local-env: - extends: .cross_build_job_local_env - needs: [] - allow_failure: true - variables: - CROSS: mingw64 - IMAGE: registry.fedoraproject.org/fedora:rawhide - JOB_OPTIONAL: 1 - NAME: fedora-rawhide + TARGET_BASE_IMAGE: registry.fedoraproject.org/fedora:rawhide # Native cirrus build jobs diff --git a/ci/integration-template.yml b/ci/integration-template.yml index 166445527c..ded57cfaaf 100644 --- a/ci/integration-template.yml +++ b/ci/integration-template.yml @@ -47,6 +47,10 @@ .integration_tests: stage: integration_tests + rules: + - if: '$LIBVIRT_CI_INTEGRATION =3D=3D null' + when: never + - !reference [.gitlab_native_build_job, rules] before_script: - mkdir "$SCRATCH_DIR" - sudo dnf install -y libvirt-rpms/* libvirt-perl-rpms/* libvirt-pytho= n-rpms/* @@ -65,35 +69,13 @@ - logs when: on_failure -.integration_tests_prebuilt_env: - extends: .integration_tests - rules: - - if: '$LIBVIRT_CI_INTEGRATION =3D=3D null' - when: never - - !reference [.gitlab_native_build_job_prebuilt_env, rules] - -.integration_tests_local_env: - extends: .integration_tests - rules: - - if: '$LIBVIRT_CI_INTEGRATION =3D=3D null' - when: never - - !reference [.gitlab_native_build_job_local_env, rules] - # YAML anchors don't work with Shell conditions so we can't use a variable # to conditionally build+install QEMU from source. # Instead, create a new test job template for this scenario. .integration_tests_upstream_qemu: + extends: + - .integration_tests before_script: - !reference [.integration_tests, before_script] - *qemu-build-template - -.integration_tests_upstream_qemu_prebuilt_env: - extends: - - .integration_tests_prebuilt_env - - .integration_tests_upstream_qemu - -.integration_tests_upstream_qemu_local_env: - extends: - - .integration_tests_local_env - - .integration_tests_upstream_qemu diff --git a/ci/integration.yml b/ci/integration.yml index 1614aa56d6..f754c59962 100644 --- a/ci/integration.yml +++ b/ci/integration.yml @@ -5,7 +5,8 @@ include: # and libvirt-python CI jobs, so the new target needs to be introduced # there before it can be used here. The VM template for the target # also needs to be created on the runner host. -.centos-stream-8-tests: +centos-stream-8-tests: + extends: .integration_tests variables: # needed by libvirt-gitlab-executor DISTRO: centos-stream-8 @@ -13,43 +14,23 @@ include: LIBVIRT_CI_INTEGRATION_RUNNER_TAG: redhat-vm-host tags: - $LIBVIRT_CI_INTEGRATION_RUNNER_TAG - -centos-stream-8-tests-prebuilt-env: - extends: - - .integration_tests_prebuilt_env - - .centos-stream-8-tests needs: - - x86_64-centos-stream-8-prebuilt-env + - x86_64-centos-stream-8 - project: libvirt/libvirt-perl - job: x86_64-centos-stream-8-prebuilt-env + job: x86_64-centos-stream-8 ref: master artifacts: true - project: libvirt/libvirt-python - job: x86_64-centos-stream-8-prebuilt-env + job: x86_64-centos-stream-8 ref: master artifacts: true -centos-stream-8-tests-local-env: - extends: - - .integration_tests_local_env - - .centos-stream-8-tests - needs: - - x86_64-centos-stream-8-local-env - - project: libvirt/libvirt-perl - job: x86_64-centos-stream-8-prebuilt-env - ref: master - artifacts: true - - project: libvirt/libvirt-python - job: x86_64-centos-stream-8-prebuilt-env - ref: master - artifacts: true - - # NOTE The integration tests use artifacts produced by the libvirt-perl # and libvirt-python CI jobs, so the new target needs to be introduced # there before it can be used here. The VM template for the target # also needs to be created on the runner host. -.centos-stream-9-tests: +centos-stream-9-tests: + extends: .integration_tests variables: # needed by libvirt-gitlab-executor DISTRO: centos-stream-9 @@ -57,43 +38,23 @@ centos-stream-8-tests-local-env: LIBVIRT_CI_INTEGRATION_RUNNER_TAG: redhat-vm-host tags: - $LIBVIRT_CI_INTEGRATION_RUNNER_TAG - -centos-stream-9-tests-prebuilt-env: - extends: - - .integration_tests_prebuilt_env - - .centos-stream-9-tests needs: - - x86_64-centos-stream-9-prebuilt-env + - x86_64-centos-stream-9 - project: libvirt/libvirt-perl - job: x86_64-centos-stream-9-prebuilt-env + job: x86_64-centos-stream-9 ref: master artifacts: true - project: libvirt/libvirt-python - job: x86_64-centos-stream-9-prebuilt-env + job: x86_64-centos-stream-9 ref: master artifacts: true -centos-stream-9-tests-local-env: - extends: - - .integration_tests_local_env - - .centos-stream-9-tests - needs: - - x86_64-centos-stream-9-local-env - - project: libvirt/libvirt-perl - job: x86_64-centos-stream-9-prebuilt-env - ref: master - artifacts: true - - project: libvirt/libvirt-python - job: x86_64-centos-stream-9-prebuilt-env - ref: master - artifacts: true - - # NOTE The integration tests use artifacts produced by the libvirt-perl # and libvirt-python CI jobs, so the new target needs to be introduced # there before it can be used here. The VM template for the target # also needs to be created on the runner host. -.fedora-38-tests: +fedora-38-tests: + extends: .integration_tests variables: # needed by libvirt-gitlab-executor DISTRO: fedora-38 @@ -101,43 +62,23 @@ centos-stream-9-tests-local-env: LIBVIRT_CI_INTEGRATION_RUNNER_TAG: redhat-vm-host tags: - $LIBVIRT_CI_INTEGRATION_RUNNER_TAG - -fedora-38-tests-prebuilt-env: - extends: - - .integration_tests_prebuilt_env - - .fedora-38-tests needs: - - x86_64-fedora-38-prebuilt-env + - x86_64-fedora-38 - project: libvirt/libvirt-perl - job: x86_64-fedora-38-prebuilt-env + job: x86_64-fedora-38 ref: master artifacts: true - project: libvirt/libvirt-python - job: x86_64-fedora-38-prebuilt-env + job: x86_64-fedora-38 ref: master artifacts: true -fedora-38-tests-local-env: - extends: - - .integration_tests_local_env - - .fedora-38-tests - needs: - - x86_64-fedora-38-local-env - - project: libvirt/libvirt-perl - job: x86_64-fedora-38-prebuilt-env - ref: master - artifacts: true - - project: libvirt/libvirt-python - job: x86_64-fedora-38-prebuilt-env - ref: master - artifacts: true - - # NOTE The integration tests use artifacts produced by the libvirt-perl # and libvirt-python CI jobs, so the new target needs to be introduced # there before it can be used here. The VM template for the target # also needs to be created on the runner host. -.fedora-39-tests: +fedora-39-tests: + extends: .integration_tests variables: # needed by libvirt-gitlab-executor DISTRO: fedora-39 @@ -145,43 +86,23 @@ fedora-38-tests-local-env: LIBVIRT_CI_INTEGRATION_RUNNER_TAG: redhat-vm-host tags: - $LIBVIRT_CI_INTEGRATION_RUNNER_TAG - -fedora-39-tests-prebuilt-env: - extends: - - .integration_tests_prebuilt_env - - .fedora-39-tests - needs: - - x86_64-fedora-39-prebuilt-env - - project: libvirt/libvirt-perl - job: x86_64-fedora-39-prebuilt-env - ref: master - artifacts: true - - project: libvirt/libvirt-python - job: x86_64-fedora-39-prebuilt-env - ref: master - artifacts: true - -fedora-39-tests-local-env: - extends: - - .integration_tests_local_env - - .fedora-39-tests needs: - - x86_64-fedora-39-local-env + - x86_64-fedora-39 - project: libvirt/libvirt-perl - job: x86_64-fedora-39-prebuilt-env + job: x86_64-fedora-39 ref: master artifacts: true - project: libvirt/libvirt-python - job: x86_64-fedora-39-prebuilt-env + job: x86_64-fedora-39 ref: master artifacts: true - # NOTE The integration tests use artifacts produced by the libvirt-perl # and libvirt-python CI jobs, so the new target needs to be introduced # there before it can be used here. The VM template for the target # also needs to be created on the runner host. .fedora-39-upstream-qemu-tests: + extends: .integration_tests variables: # needed by libvirt-gitlab-executor DISTRO: fedora-39 @@ -189,33 +110,13 @@ fedora-39-tests-local-env: LIBVIRT_CI_INTEGRATION_RUNNER_TAG: redhat-vm-host tags: - $LIBVIRT_CI_INTEGRATION_RUNNER_TAG - -fedora-39-upstream-qemu-tests-prebuilt-env: - extends: - - .integration_tests_upstream_qemu_prebuilt_env - - .fedora-39-upstream-qemu-tests - needs: - - x86_64-fedora-39-prebuilt-env - - project: libvirt/libvirt-perl - job: x86_64-fedora-39-prebuilt-env - ref: master - artifacts: true - - project: libvirt/libvirt-python - job: x86_64-fedora-39-prebuilt-env - ref: master - artifacts: true - -fedora-39-upstream-qemu-tests-local-env: - extends: - - .integration_tests_upstream_qemu_local_env - - .fedora-39-upstream-qemu-tests needs: - - x86_64-fedora-39-local-env + - x86_64-fedora-39 - project: libvirt/libvirt-perl - job: x86_64-fedora-39-prebuilt-env + job: x86_64-fedora-39 ref: master artifacts: true - project: libvirt/libvirt-python - job: x86_64-fedora-39-prebuilt-env + job: x86_64-fedora-39 ref: master artifacts: true --=20 2.43.0 _______________________________________________ Devel mailing list -- devel@lists.libvirt.org To unsubscribe send an email to devel-leave@lists.libvirt.org