mirror of
https://gitlab.freedesktop.org/emersion/libdisplay-info.git
synced 2024-11-16 19:48:30 +01:00
8b9c8e01f5
We'll add non-Alpine build steps soon. Signed-off-by: Simon Ser <contact@emersion.fr>
86 lines
2.4 KiB
YAML
86 lines
2.4 KiB
YAML
.templates_sha: &templates_sha 3f37cc0e461f5b0c815409bf6f55759f26a74e9c
|
|
|
|
include:
|
|
- project: 'freedesktop/ci-templates'
|
|
ref: *templates_sha
|
|
file: '/templates/ci-fairy.yml'
|
|
- project: 'freedesktop/ci-templates'
|
|
ref: *templates_sha
|
|
file: '/templates/alpine.yml'
|
|
|
|
# When updating a prepare-container-* step, make sure to bump
|
|
# FDO_DISTRIBUTION_TAG, otherwise the container won't get rebuilt.
|
|
# To force a rebuild of the container, use:
|
|
# $ git push -f -o ci.variable="FDO_FORCE_REBUILD=1"
|
|
variables:
|
|
FDO_UPSTREAM_REPO: 'emersion/libdisplay-info'
|
|
FDO_DISTRIBUTION_TAG: '2022-08-15.0'
|
|
|
|
stages:
|
|
- "Contribution checks"
|
|
- "Prepare container"
|
|
- "Build and test"
|
|
|
|
check-mr:
|
|
extends: .fdo.ci-fairy
|
|
stage: "Contribution checks"
|
|
script:
|
|
- ci-fairy check-commits --signed-off-by
|
|
- ci-fairy check-merge-request --require-allow-collaboration
|
|
rules:
|
|
- if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "main"'
|
|
when: always
|
|
- when: never
|
|
|
|
prepare-container-alpine:
|
|
extends: .fdo.container-build@alpine@x86_64
|
|
stage: "Prepare container"
|
|
variables:
|
|
FDO_DISTRIBUTION_PACKAGES: |
|
|
build-base clang compiler-rt meson make git gcovr py3-pygments
|
|
FDO_DISTRIBUTION_EXEC: |
|
|
git clone git://linuxtv.org/edid-decode.git
|
|
cd edid-decode
|
|
git checkout 6816e6a691f40e6fbb64e6d40f012d7727c6315f
|
|
make
|
|
make install
|
|
cd ..
|
|
rm -rf edid-decode
|
|
rules:
|
|
- when: on_success
|
|
|
|
build-alpine-gcc:
|
|
extends: .fdo.distribution-image@alpine
|
|
stage: "Build and test"
|
|
script:
|
|
- CC=gcc meson setup build/ --fatal-meson-warnings -Dwerror=true -Db_coverage=true
|
|
- ninja -C build/
|
|
- ninja -C build/ test
|
|
- ninja -C build/ -j1 coverage-xml coverage-html
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- build/meson-logs/
|
|
reports:
|
|
junit: build/meson-logs/testlog.junit.xml
|
|
coverage_report:
|
|
coverage_format: cobertura
|
|
path: build/meson-logs/coverage.xml
|
|
rules:
|
|
- when: on_success
|
|
|
|
build-alpine-clang:
|
|
extends: .fdo.distribution-image@alpine
|
|
stage: "Build and test"
|
|
script:
|
|
- CC=clang meson setup build/ --fatal-meson-warnings -Dwerror=true -Db_sanitize=address,undefined -Db_lundef=false
|
|
- ninja -C build/
|
|
- ninja -C build/ test
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- build/meson-logs/
|
|
reports:
|
|
junit: build/meson-logs/testlog.junit.xml
|
|
rules:
|
|
- when: on_success
|