Use the "extends" keyword introduced in 11.3 to reduce repetition in jobs. More importantly, this helps us better organise the properties of jobs.
Signed-off-by: Wei Liu <wei.l...@citrix.com> --- .gitlab-ci.yml | 281 +++++++++++++++++++++++++++------------------------------ 1 file changed, 134 insertions(+), 147 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a3b393fade..1c7b3d3d5b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -28,298 +28,285 @@ stages: CXX: clang++ clang: y -centos-7-2-gcc: +.x86-64-build-tmpl: <<: *build variables: - <<: *gcc - CONTAINER: centos:7.2 - debug: n XEN_TARGET_ARCH: x86_64 -centos-7-2-gcc-debug: +.x86-64-build: + extends: .x86-64-build-tmpl + variables: + debug: n + +.x86-64-build-debug: + extends: .x86-64-build-tmpl + variables: + debug: y + +.x86-32-build-tmpl: <<: *build variables: - <<: *gcc - CONTAINER: centos:7.2 + XEN_TARGET_ARCH: x86_32 + +.x86-32-build: + extends: .x86-32-build-tmpl + variables: + debug: n + +.x86-32-build-debug: + extends: .x86-32-build-tmpl + variables: debug: y - XEN_TARGET_ARCH: x86_64 -centos-7-gcc: +.gcc-x86-64-build: + extends: .x86-64-build + variables: + <<: *gcc + +.gcc-x86-64-build-debug: + extends: .x86-64-build-debug + variables: + <<: *gcc + +.gcc-x86-32-build: + extends: .x86-32-build + variables: + <<: *gcc + +.gcc-x86-32-build-debug: + extends: .x86-32-build-debug + variables: + <<: *gcc + +.clang-x86-64-build: + extends: .x86-64-build + variables: + <<: *clang + +.clang-x86-64-build-debug: + extends: .x86-64-build-debug + variables: + <<: *clang + +.clang-x86-32-build: + extends: .x86-32-build + variables: + <<: *clang + +.clang-x86-32-build-debug: + extends: .x86-32-build-debug + variables: + <<: *clang + +.arm64-build-tmpl: <<: *build variables: + XEN_TARGET_ARCH: arm64 + tags: + - arm64 + +.arm64-build: + extends: .arm64-build-tmpl + variables: + debug: n + +.arm64-build-debug: + extends: .arm64-build-tmpl + variables: + debug: y + +.gcc-arm64-build: + extends: .arm64-build + variables: <<: *gcc + +.gcc-arm64-build-debug: + extends: .arm64-build-debug + variables: + <<: *gcc + +# Jobs below this line + +centos-7-2-gcc: + extends: .gcc-x86-64-build + variables: + CONTAINER: centos:7.2 + +centos-7-2-gcc-debug: + extends: .gcc-x86-64-build-debug + variables: + CONTAINER: centos:7.2 + +centos-7-gcc: + extends: .gcc-x86-64-build + variables: CONTAINER: centos:7 - debug: n - XEN_TARGET_ARCH: x86_64 centos-7-gcc-debug: - <<: *build + extends: .gcc-x86-64-build-debug variables: - <<: *gcc CONTAINER: centos:7 - debug: y - XEN_TARGET_ARCH: x86_64 debian-jessie-clang: - <<: *build + extends: .clang-x86-64-build variables: - <<: *clang CONTAINER: debian:jessie - debug: n - XEN_TARGET_ARCH: x86_64 debian-jessie-clang-debug: - <<: *build + extends: .clang-x86-64-build-debug variables: - <<: *clang CONTAINER: debian:jessie - debug: y - XEN_TARGET_ARCH: x86_64 debian-jessie-gcc: - <<: *build + extends: .gcc-x86-64-build variables: - <<: *gcc CONTAINER: debian:jessie - debug: n - XEN_TARGET_ARCH: x86_64 debian-jessie-gcc-debug: - <<: *build + extends: .gcc-x86-64-build-debug variables: - <<: *gcc CONTAINER: debian:jessie - debug: y - XEN_TARGET_ARCH: x86_64 debian-stretch-clang: - <<: *build + extends: .clang-x86-64-build variables: - <<: *clang CONTAINER: debian:stretch - debug: n - XEN_TARGET_ARCH: x86_64 debian-stretch-clang-debug: - <<: *build + extends: .clang-x86-64-build-debug variables: - <<: *clang CONTAINER: debian:stretch - debug: y - XEN_TARGET_ARCH: x86_64 debian-stretch-gcc: - <<: *build + extends: .gcc-x86-64-build variables: - <<: *gcc CONTAINER: debian:stretch - debug: n - XEN_TARGET_ARCH: x86_64 debian-stretch-gcc-debug: - <<: *build + extends: .gcc-x86-64-build-debug variables: - <<: *gcc CONTAINER: debian:stretch - debug: y - XEN_TARGET_ARCH: x86_64 debian-stretch-32-clang: - <<: *build + extends: .clang-x86-32-build variables: - <<: *clang CONTAINER: debian:stretch-i386 - debug: n - XEN_TARGET_ARCH: x86_32 debian-stretch-32-clang-debug: - <<: *build + extends: .clang-x86-32-build-debug variables: - <<: *clang CONTAINER: debian:stretch-i386 - debug: y - XEN_TARGET_ARCH: x86_32 debian-stretch-32-gcc: - <<: *build + extends: .gcc-x86-32-build variables: - <<: *gcc CONTAINER: debian:stretch-i386 - debug: n - XEN_TARGET_ARCH: x86_32 debian-stretch-32-gcc-debug: - <<: *build + extends: .gcc-x86-64-build-debug variables: - <<: *gcc CONTAINER: debian:stretch-i386 - debug: y - XEN_TARGET_ARCH: x86_32 debian-unstable-clang: - <<: *build + extends: .clang-x86-64-build variables: - <<: *clang CONTAINER: debian:unstable - debug: n - XEN_TARGET_ARCH: x86_64 debian-unstable-clang-debug: - <<: *build + extends: .clang-x86-64-build-debug variables: - <<: *clang CONTAINER: debian:unstable - debug: y - XEN_TARGET_ARCH: x86_64 debian-unstable-gcc: - <<: *build + extends: .gcc-x86-64-build variables: - <<: *gcc CONTAINER: debian:unstable - debug: n - XEN_TARGET_ARCH: x86_64 debian-unstable-gcc-debug: - <<: *build + extends: .gcc-x86-64-build-debug variables: - <<: *gcc CONTAINER: debian:unstable - debug: y - XEN_TARGET_ARCH: x86_64 debian-unstable-32-clang: - <<: *build + extends: .clang-x86-32-build variables: - <<: *clang CONTAINER: debian:unstable-i386 - debug: n - XEN_TARGET_ARCH: x86_32 debian-unstable-32-clang-debug: - <<: *build + extends: .clang-x86-32-build-debug variables: - <<: *clang CONTAINER: debian:unstable-i386 - debug: y - XEN_TARGET_ARCH: x86_32 debian-unstable-32-gcc: - <<: *build + extends: .gcc-x86-32-build variables: - <<: *gcc CONTAINER: debian:unstable-i386 - debug: n - XEN_TARGET_ARCH: x86_32 debian-unstable-32-gcc-debug: - <<: *build + extends: .gcc-x86-64-build-debug variables: - <<: *gcc CONTAINER: debian:unstable-i386 - debug: y - XEN_TARGET_ARCH: x86_32 # Ubuntu Trusty's Clang is 3.4 while Xen requires 3.5 ubuntu-trusty-gcc: - <<: *build + extends: .gcc-x86-64-build variables: - <<: *gcc CONTAINER: ubuntu:trusty - debug: n - XEN_TARGET_ARCH: x86_64 ubuntu-trusty-gcc-debug: - <<: *build + extends: .gcc-x86-64-build-debug variables: - <<: *gcc CONTAINER: ubuntu:trusty - debug: y - XEN_TARGET_ARCH: x86_64 ubuntu-xenial-clang: - <<: *build + extends: .clang-x86-64-build variables: - <<: *clang CONTAINER: ubuntu:xenial - debug: n - XEN_TARGET_ARCH: x86_64 ubuntu-xenial-clang-debug: - <<: *build + extends: .clang-x86-64-build-debug variables: - <<: *clang CONTAINER: ubuntu:xenial - debug: y - XEN_TARGET_ARCH: x86_64 ubuntu-xenial-gcc: - <<: *build + extends: .gcc-x86-64-build variables: - <<: *gcc CONTAINER: ubuntu:xenial - debug: n - XEN_TARGET_ARCH: x86_64 ubuntu-xenial-gcc-debug: - <<: *build + extends: .gcc-x86-64-build-debug variables: - <<: *gcc CONTAINER: ubuntu:xenial - debug: y - XEN_TARGET_ARCH: x86_64 ubuntu-bionic-clang: - <<: *build + extends: .clang-x86-64-build variables: - <<: *clang CONTAINER: ubuntu:bionic - debug: n - XEN_TARGET_ARCH: x86_64 ubuntu-bionic-clang-debug: - <<: *build + extends: .clang-x86-64-build-debug variables: - <<: *clang CONTAINER: ubuntu:bionic - debug: y - XEN_TARGET_ARCH: x86_64 ubuntu-bionic-gcc: - <<: *build + extends: .gcc-x86-64-build variables: - <<: *gcc CONTAINER: ubuntu:bionic - debug: n - XEN_TARGET_ARCH: x86_64 ubuntu-bionic-gcc-debug: - <<: *build + extends: .gcc-x86-64-build-debug variables: - <<: *gcc CONTAINER: ubuntu:bionic - debug: y - XEN_TARGET_ARCH: x86_64 # Arm builds debian-unstable-gcc-arm64: - <<: *build + extends: .gcc-arm64-build variables: - <<: *gcc CONTAINER: debian:unstable-arm64v8 - debug: n - XEN_TARGET_ARCH: arm64 - tags: - - arm64 debian-unstable-gcc-debug-arm64: - <<: *build + extends: .gcc-arm64-build-debug variables: - <<: *gcc CONTAINER: debian:unstable-arm64v8 - debug: y - XEN_TARGET_ARCH: arm64 - tags: - - arm64 -- 2.11.0 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel