CI: Separate build types out into stages

Give ourselves a bit more separation between the different job types, so
it's easier to see what's running and/or failing.

Signed-off-by: Daniel Stone <daniels@collabora.com>
dev
Daniel Stone 3 years ago
parent c26fa7e462
commit 348e3a9abd
  1. 20
      .gitlab-ci.yml

@ -62,9 +62,11 @@ include:
# Define the build stages. These are used for UI grouping as well as # Define the build stages. These are used for UI grouping as well as
# dependencies. # dependencies.
stages: stages:
- review - "Merge request checks"
- container_prep - "Base container"
- build - "Full build and test"
- "No-GL build and test"
- "Other builds"
- pages - pages
@ -83,7 +85,7 @@ stages:
check-commit: check-commit:
extends: extends:
- .fdo.ci-fairy - .fdo.ci-fairy
stage: review stage: "Merge request checks"
rules: rules:
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"' - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
when: always when: always
@ -128,7 +130,7 @@ x86_64-debian-container_prep:
- .debian-x86_64 - .debian-x86_64
- .fdo.container-build@debian - .fdo.container-build@debian
timeout: 30m timeout: 30m
stage: container_prep stage: "Base container"
armv7-debian-container_prep: armv7-debian-container_prep:
extends: extends:
@ -140,7 +142,7 @@ armv7-debian-container_prep:
variables: variables:
FDO_BASE_IMAGE: "arm32v7/debian:$FDO_DISTRIBUTION_VERSION" FDO_BASE_IMAGE: "arm32v7/debian:$FDO_DISTRIBUTION_VERSION"
timeout: 30m timeout: 30m
stage: container_prep stage: "Base container"
aarch64-debian-container_prep: aarch64-debian-container_prep:
extends: extends:
@ -150,13 +152,12 @@ aarch64-debian-container_prep:
tags: tags:
- aarch64 - aarch64
timeout: 30m timeout: 30m
stage: container_prep stage: "Base container"
# Core templates for all of our build steps. These are reused by all build jobs # Core templates for all of our build steps. These are reused by all build jobs
# through the `extends` keyword. # through the `extends` keyword.
.build-env: .build-env:
timeout: 5m timeout: 5m
stage: build
variables: variables:
BUILDDIR: $CI_PROJECT_DIR/build-weston-$CI_JOB_NAME BUILDDIR: $CI_PROJECT_DIR/build-weston-$CI_JOB_NAME
PREFIX: $CI_PROJECT_DIR/prefix-weston-$CI_JOB_NAME PREFIX: $CI_PROJECT_DIR/prefix-weston-$CI_JOB_NAME
@ -267,6 +268,7 @@ aarch64-debian-container_prep:
# Full build, used for testing under KVM. # Full build, used for testing under KVM.
.build-options-full: .build-options-full:
stage: "Full build and test"
variables: variables:
MESON_OPTIONS: > MESON_OPTIONS: >
-Doptimization=0 -Doptimization=0
@ -295,6 +297,7 @@ aarch64-debian-full-build:
# Docs should be invariant on all architectures, so we only do it on Debian # Docs should be invariant on all architectures, so we only do it on Debian
# x86-64. # x86-64.
docs-build: docs-build:
stage: "Other builds"
variables: variables:
MESON_OPTIONS: > MESON_OPTIONS: >
-Dwerror=true -Dwerror=true
@ -305,6 +308,7 @@ docs-build:
# Building without gl-renderer, to make sure this keeps working. # Building without gl-renderer, to make sure this keeps working.
.build-options-no-gl: .build-options-no-gl:
stage: "No-GL build and test"
variables: variables:
MESON_OPTIONS: > MESON_OPTIONS: >
-Dsimple-clients=damage,im,shm,touch,dmabuf-v4l -Dsimple-clients=damage,im,shm,touch,dmabuf-v4l

Loading…
Cancel
Save