diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6cb910b0fae7d6efdf56b7e87611e6f1c0adee7c..e6eb2f99051662237710e2972e38e4e9d26afbc2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -15,8 +15,7 @@ stages: # Common templates -# Containers that are necessary for the default pipeline -.container_default_job_template: &container_default_job_definition +.container_job_template: &container_job_definition image: docker:stable stage: containers services: @@ -33,23 +32,15 @@ stages: after_script: - docker logout -# Containers that are only needed for the full pipeline -.container_extra_job_template: &container_extra_job_definition - <<: *container_default_job_definition - only: - - master - - /^ci-full-.*$/ - # We build many containers which can be useful to debug problems but are not # needed for the pipeline itself to complete: those sometimes fail, and when # 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_extra_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 +.native_build_job_template: &native_build_job_definition stage: builds image: $CI_REGISTRY_IMAGE/ci-$NAME:latest cache: @@ -64,18 +55,10 @@ stages: - ../autogen.sh || (cat config.log && exit 1) - $MAKE distcheck -# Extra native build jobs that are only run post-merge, or -# when code is pushed to a branch with "ci-full-" name prefix -.native_build_extra_job_template: &native_build_extra_job_definition - <<: *native_build_default_job_definition - only: - - master - - /^ci-full-.*$/ - # Jobs that we delegate to Cirrus CI because they require an operating # system other than Linux. These jobs will only run if the required # setup has been performed on the GitLab account (see ci/README.rst). -.cirrus_build_default_job_template: &cirrus_build_default_job_definition +.cirrus_build_job_template: &cirrus_build_job_definition stage: builds image: registry.gitlab.com/libvirt/libvirt-ci/cirrus-run:master script: @@ -85,19 +68,7 @@ stages: - $CIRRUS_GITHUB_REPO - $CIRRUS_API_TOKEN -.cirrus_build_extra_job_template: &cirrus_build_extra_job_definition - <<: *cirrus_build_default_job_definition - only: - variables: - - $CIRRUS_GITHUB_REPO - - $CIRRUS_API_TOKEN - refs: - - master - - /^ci-full-.*$/ - - -# Default cross build jobs that are always run -.cross_build_default_job_template: &cross_build_default_job_definition +.cross_build_default_job_template: &cross_build_job_definition stage: builds image: $CI_REGISTRY_IMAGE/ci-$NAME-cross-$CROSS:latest cache: @@ -112,74 +83,66 @@ stages: - ../autogen.sh $CONFIGURE_OPTS || (cat config.log && exit 1) - $MAKE -# Extra cross build jobs that are only run post-merge, or -# when code is pushed to a branch with "ci-full-" name prefix -.cross_build_extra_job_template: &cross_build_extra_job_definition - <<: *cross_build_default_job_definition - only: - - master - - /^ci-full-.*$/ - # Native container build jobs x64-centos-7-container: - <<: *container_default_job_definition + <<: *container_job_definition variables: NAME: centos-7 x64-centos-8-container: - <<: *container_default_job_definition + <<: *container_job_definition variables: NAME: centos-8 x64-centos-stream-container: - <<: *container_extra_job_definition + <<: *container_job_definition variables: NAME: centos-stream x64-debian-9-container: - <<: *container_extra_job_definition + <<: *container_job_definition variables: NAME: debian-9 x64-debian-10-container: - <<: *container_default_job_definition + <<: *container_job_definition variables: NAME: debian-10 x64-debian-sid-container: - <<: *container_extra_job_definition + <<: *container_job_definition variables: NAME: debian-sid x64-fedora-31-container: - <<: *container_extra_job_definition + <<: *container_job_definition variables: NAME: fedora-31 x64-fedora-32-container: - <<: *container_default_job_definition + <<: *container_job_definition variables: NAME: fedora-32 x64-fedora-rawhide-container: - <<: *container_default_job_definition + <<: *container_job_definition variables: NAME: fedora-rawhide x64-opensuse-151-container: - <<: *container_default_job_definition + <<: *container_job_definition variables: NAME: opensuse-151 x64-ubuntu-1804-container: - <<: *container_extra_job_definition + <<: *container_job_definition variables: NAME: ubuntu-1804 x64-ubuntu-2004-container: - <<: *container_default_job_definition + <<: *container_job_definition variables: NAME: ubuntu-2004 @@ -192,7 +155,7 @@ aarch64-debian-9-container: NAME: debian-9-cross-aarch64 armv6l-debian-9-container: - <<: *container_extra_job_definition + <<: *container_job_definition variables: NAME: debian-9-cross-armv6l @@ -202,12 +165,12 @@ armv7l-debian-9-container: NAME: debian-9-cross-armv7l mips-debian-9-container: - <<: *container_extra_job_definition + <<: *container_job_definition variables: NAME: debian-9-cross-mips mips64el-debian-9-container: - <<: *container_extra_job_definition + <<: *container_job_definition variables: NAME: debian-9-cross-mips64el @@ -227,7 +190,7 @@ s390x-debian-9-container: NAME: debian-9-cross-s390x aarch64-debian-10-container: - <<: *container_extra_job_definition + <<: *container_job_definition variables: NAME: debian-10-cross-aarch64 @@ -257,7 +220,7 @@ mips64el-debian-10-container: NAME: debian-10-cross-mips64el mipsel-debian-10-container: - <<: *container_extra_job_definition + <<: *container_job_definition variables: NAME: debian-10-cross-mipsel @@ -267,7 +230,7 @@ ppc64le-debian-10-container: NAME: debian-10-cross-ppc64le s390x-debian-10-container: - <<: *container_default_job_definition + <<: *container_job_definition variables: NAME: debian-10-cross-s390x @@ -282,12 +245,12 @@ armv6l-debian-sid-container: NAME: debian-sid-cross-armv6l armv7-ldebian-sid-container: - <<: *container_default_job_definition + <<: *container_job_definition variables: NAME: debian-sid-cross-armv7l i686-debian-sid-container: - <<: *container_extra_job_definition + <<: *container_job_definition variables: NAME: debian-sid-cross-i686 @@ -302,7 +265,7 @@ mipsel-debian-sid-container: NAME: debian-sid-cross-mipsel ppc64le-debian-sid-container: - <<: *container_extra_job_definition + <<: *container_job_definition variables: NAME: debian-sid-cross-ppc64le @@ -312,12 +275,12 @@ s390x-debian-sid-container: NAME: debian-sid-cross-s390x mingw32-fedora-rawhide-container: - <<: *container_default_job_definition + <<: *container_job_definition variables: NAME: fedora-rawhide-cross-mingw32 mingw64-fedora-rawhide-container: - <<: *container_default_job_definition + <<: *container_job_definition variables: NAME: fedora-rawhide-cross-mingw64 @@ -325,72 +288,72 @@ mingw64-fedora-rawhide-container: # Native architecture build + test jobs x64-debian-9: - <<: *native_build_extra_job_definition + <<: *native_build_job_definition variables: NAME: debian-9 x64-debian-10: - <<: *native_build_default_job_definition + <<: *native_build_job_definition variables: NAME: debian-10 x64-debian-sid: - <<: *native_build_extra_job_definition + <<: *native_build_job_definition variables: NAME: debian-sid x64-centos-7: - <<: *native_build_default_job_definition + <<: *native_build_job_definition variables: NAME: centos-7 x64-centos-8: - <<: *native_build_extra_job_definition + <<: *native_build_job_definition variables: NAME: centos-8 x64-centos-stream: - <<: *native_build_extra_job_definition + <<: *native_build_job_definition variables: NAME: centos-stream x64-fedora-31: - <<: *native_build_extra_job_definition + <<: *native_build_job_definition variables: NAME: fedora-31 x64-fedora-32: - <<: *native_build_default_job_definition + <<: *native_build_job_definition variables: NAME: fedora-32 x64-fedora-rawhide: - <<: *native_build_default_job_definition + <<: *native_build_job_definition variables: NAME: fedora-rawhide x64-opensuse-151: - <<: *native_build_default_job_definition + <<: *native_build_job_definition variables: NAME: opensuse-151 x64-ubuntu-1804: - <<: *native_build_extra_job_definition + <<: *native_build_job_definition variables: NAME: ubuntu-1804 x64-ubuntu-2004: - <<: *native_build_default_job_definition + <<: *native_build_job_definition variables: NAME: ubuntu-2004 x64-freebsd-12-build: - <<: *cirrus_build_default_job_definition + <<: *cirrus_build_job_definition variables: NAME: freebsd-12 x64-macos-1015-build: - <<: *cirrus_build_default_job_definition + <<: *cirrus_build_job_definition variables: NAME: macos-1015 @@ -398,67 +361,67 @@ x64-macos-1015-build: # Cross compiled build jobs armv6l-debian-9: - <<: *cross_build_extra_job_definition + <<: *cross_build_job_definition variables: NAME: debian-9 CROSS: armv6l mips64el-debian-9: - <<: *cross_build_extra_job_definition + <<: *cross_build_job_definition variables: NAME: debian-9 CROSS: mips64el mips-debian-9: - <<: *cross_build_extra_job_definition + <<: *cross_build_job_definition variables: NAME: debian-9 CROSS: mips aarch64-debian-10: - <<: *cross_build_extra_job_definition + <<: *cross_build_job_definition variables: NAME: debian-10 CROSS: aarch64 mipsel-debian-10: - <<: *cross_build_extra_job_definition + <<: *cross_build_job_definition variables: NAME: debian-10 CROSS: mipsel s390x-debian-10: - <<: *cross_build_default_job_definition + <<: *cross_build_job_definition variables: NAME: debian-10 CROSS: s390x armv7l-debian-sid: - <<: *cross_build_default_job_definition + <<: *cross_build_job_definition variables: NAME: debian-sid CROSS: armv7l i686-debian-sid: - <<: *cross_build_extra_job_definition + <<: *cross_build_job_definition variables: NAME: debian-sid CROSS: i686 ppc64le-debian-sid: - <<: *cross_build_extra_job_definition + <<: *cross_build_job_definition variables: NAME: debian-sid CROSS: ppc64le mingw32-fedora-rawhide: - <<: *cross_build_default_job_definition + <<: *cross_build_job_definition variables: NAME: fedora-rawhide CROSS: mingw32 mingw64-fedora-rawhide: - <<: *cross_build_default_job_definition + <<: *cross_build_job_definition variables: NAME: fedora-rawhide CROSS: mingw64