# 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: bookworm-slim FDO_DISTRIBUTION_EXEC: 'bash .gitlab-ci/debian-install.sh' FDO_DISTRIBUTION_PACKAGES: 'ca-certificates' FDO_DISTRIBUTION_TAG: "2024-02-23.2" 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 9568e38927f9e9c48d4f586f84a071c3a4bdcd39 # 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: "21.1" # excludes version already checked in build-distcheck build-gcc: extends: - .default_build parallel: matrix: - XSERVER_VERSION: ["1.16", "1.17", "1.18", "1.19", "1.20"] build-clang: extends: - .default_build parallel: matrix: - XSERVER_VERSION: ["1.18", "1.19", "1.20", "21.1"] 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"]