monado/.gitlab-ci.yml

117 lines
3.1 KiB
YAML
Raw Normal View History

2020-03-18 16:42:27 +00:00
# SPDX-License-Identifier: CC0-1.0
# SPDX-FileCopyrightText: 2018-2020 Collabora, Ltd. and the Monado contributors
variables:
UPSTREAM_REPO: monado/monado
2019-04-09 16:07:14 +00:00
DEBIAN_TAG: 2019-03-23.0
DEBIAN_VERSION: buster
2019-12-03 15:15:33 +00:00
DEBIAN_CONTAINER_IMAGE: "$CI_REGISTRY_IMAGE/debian/$DEBIAN_VERSION:$DEBIAN_TAG"
2020-03-23 20:33:57 +00:00
2019-12-03 15:15:33 +00:00
ARCH_TAG: 2019-12-03.0
ARCH_CONTAINER_IMAGE: "$CI_REGISTRY_IMAGE/archlinux/rolling:$ARCH_TAG"
include:
2020-03-23 20:33:57 +00:00
- project: "wayland/ci-templates"
2019-12-03 15:15:33 +00:00
ref: 0a9bdd33a98f05af6761ab118b5074952242aab0
2020-03-23 20:33:57 +00:00
file: "/templates/debian.yml"
- project: "wayland/ci-templates"
2019-12-03 15:15:33 +00:00
ref: 0a9bdd33a98f05af6761ab118b5074952242aab0
2020-03-23 20:33:57 +00:00
file: "/templates/arch.yml"
stages:
- container_prep
- build
2019-08-23 14:42:41 +00:00
- pages
- deploy
2019-04-09 16:07:14 +00:00
debian:container_prep:
extends: .debian@container-ifnot-exists
stage: container_prep
2019-12-03 15:15:33 +00:00
variables:
GIT_STRATEGY: none # no need to pull the whole tree for rebuilding the image
# a list of packages to install
2020-03-23 20:33:57 +00:00
DEBIAN_DEBS: "build-essential git cmake meson ninja-build doxygen graphviz libeigen3-dev curl patch python3 pkg-config libx11-dev libxxf86vm-dev libxrandr-dev libxcb-randr0-dev libhidapi-dev libwayland-dev libvulkan-dev glslang-dev glslang-tools libglvnd-dev libgl1-mesa-dev ca-certificates libusb-1.0-0-dev libuvc-dev libavcodec-dev libopencv-dev libudev-dev clang-format-7 codespell libv4l-dev libegl1-mesa-dev python3-click python3-pip"
DEBIAN_EXEC: "bash .gitlab-ci/build-openxr-openhmd.sh"
2019-04-09 16:07:14 +00:00
arch:container_prep:
extends: .arch@container-ifnot-exists
stage: container_prep
2019-12-03 15:15:33 +00:00
variables:
GIT_STRATEGY: none # no need to pull the whole tree for rebuilding the image
# a list of packages to install
2020-03-23 20:33:57 +00:00
ARCH_PKGS: "git gcc cmake meson ninja pkgconfig python3 diffutils patch doxygen graphviz eigen hidapi libxrandr mesa glslang vulkan-headers vulkan-icd-loader check glfw-x11 libusb opencv gtk3 ffmpeg v4l-utils qt5-base"
ARCH_EXEC: "bash .gitlab-ci/build-openxr-openhmd.sh"
2019-04-09 16:07:14 +00:00
format-and-spellcheck:
stage: build
image: $DEBIAN_CONTAINER_IMAGE
script:
2020-03-23 20:33:57 +00:00
- scripts/format-and-spellcheck.sh
artifacts:
paths:
- patches/
expire_in: 1 week
when: on_failure
2019-04-09 16:07:14 +00:00
debian:build-cmake:
stage: build
image: $DEBIAN_CONTAINER_IMAGE
script:
2020-03-23 20:33:57 +00:00
- mkdir build
- pushd build
- cmake -GNinja ..
- ninja
2019-09-24 14:13:11 +00:00
arch:build-cmake:
stage: build
image: $ARCH_CONTAINER_IMAGE
script:
2020-03-23 20:33:57 +00:00
- mkdir build
- pushd build
- cmake -GNinja ..
- ninja
2019-09-24 14:13:11 +00:00
debian:build-meson:
stage: build
image: $DEBIAN_CONTAINER_IMAGE
script:
2020-03-23 20:33:57 +00:00
# Generate "changes since last release"
- pip3 install proclamation
- pushd doc/changes
- proclamation build --overwrite vNEXT
- popd
# Now proceed with build.
- mkdir build
- pushd build
- meson ..
- ninja
artifacts:
paths:
- build/doc/html/
2019-04-09 16:07:14 +00:00
2019-09-24 14:13:11 +00:00
arch:build-meson:
stage: build
image: $ARCH_CONTAINER_IMAGE
script:
2020-03-23 20:33:57 +00:00
- mkdir build
- pushd build
- meson -Ddocs=disabled ..
- ninja
###
# Pages
###
pages:
2019-08-23 14:42:41 +00:00
stage: pages
only:
- master
dependencies:
2019-09-24 14:13:11 +00:00
- debian:build-meson
script:
2019-09-22 14:59:17 +00:00
- mkdir -p public
- mv build/doc/html/* public/
artifacts:
paths:
- public