Files
xf86-video-ati/.gitlab-ci.yml
Alan Coopersmith a25ca015e6 gitlab CI: enable gitlab's builtin static analysis
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2022-07-23 18:58:08 -07:00

135 lines
3.2 KiB
YAML

# vim: set expandtab shiftwidth=2 tabstop=8 textwidth=0 filetype=yaml:
# FDO_DISTRIBUTION_TAG is the tag of the docker image used for the build
# jobs. If the image doesn't exist yet, the docker-image stage generates it
# or copies it from upstream (this is all handled by the templates).
#
# In order to generate a new image, one should generally change the tag.
# While removing the image from the registry would also work, that's not
# recommended except for ephemeral images during development.
#
variables:
FDO_DISTRIBUTION_VERSION: buster-slim
FDO_DISTRIBUTION_EXEC: 'bash .gitlab-ci/debian-install.sh'
FDO_DISTRIBUTION_TAG: "2021-05-10"
FDO_UPSTREAM_REPO: xorg/driver/xf86-video-ati
#
# This CI uses the freedesktop.org ci-templates.
# Please see the ci-templates documentation for details:
# https://freedesktop.pages.freedesktop.org/ci-templates/
.templates_sha: &template_sha 34f4ade99434043f88e164933f570301fd18b125 # see https://docs.gitlab.com/ee/ci/yaml/#includefile
include:
- project: 'freedesktop/ci-templates'
ref: *template_sha
file: '/templates/debian.yml'
- project: 'freedesktop/ci-templates'
ref: *template_sha
file: '/templates/ci-fairy.yml'
- template: Security/SAST.gitlab-ci.yml
stages:
- docker-image
- build
- test
#
# Verify that commit messages are as expected
#
check-commits:
extends:
- .fdo.ci-fairy
stage: test
script:
- ci-fairy check-commits --junit-xml=results.xml
except:
- master@$FDO_UPSTREAM_REPO
variables:
GIT_DEPTH: 100
artifacts:
reports:
junit: results.xml
allow_failure: true
#
# Verify that the merge request has the allow-collaboration checkbox ticked
#
check-merge-request:
extends:
- .fdo.ci-fairy
stage: test
script:
- ci-fairy check-merge-request --require-allow-collaboration --junit-xml=results.xml
artifacts:
when: on_failure
reports:
junit: results.xml
allow_failure: true
#
# Build a container with the given tag and the packages pre-installed.
# This only happens if/when the tag changes, otherwise the existing image is
# re-used.
#
container-build:
extends:
- .fdo.container-build@debian
stage: docker-image
variables:
GIT_STRATEGY: none
# The default build instructions
.default_build:
extends:
- .fdo.distribution-image@debian
stage: build
script:
- ./autogen.sh
- make -j${FDO_CI_CONCURRENT:-4} check V=1
variables:
CFLAGS: "-pipe -g -O2 -Werror"
ACLOCAL_PATH: /usr/local/xserver-$XSERVER_VERSION/share/aclocal
PKG_CONFIG_PATH: /usr/local/xserver-$XSERVER_VERSION/lib/pkgconfig
build-distcheck:
extends:
- .default_build
script:
- ./autogen.sh
- make -j${FDO_CI_CONCURRENT:-4} check V=1
- make install V=1
- make -j${FDO_CI_CONCURRENT:-4} distcheck
variables:
XSERVER_VERSION: "1.20"
build-gcc:
extends:
- .default_build
parallel:
matrix:
- XSERVER_VERSION: ["1.16", "1.17", "1.18", "1.19"]
build-clang:
extends:
- .default_build
parallel:
matrix:
- XSERVER_VERSION: ["1.20", "1.18", "1.19"]
variables:
CC: clang
build-noglamor:
extends:
- .default_build
script:
- ./autogen.sh --disable-glamor
- make -j${FDO_CI_CONCURRENT:-4} check V=1
parallel:
matrix:
- XSERVER_VERSION: ["1.13", "1.14", "1.15"]