blueprint-compiler/.gitlab-ci.yml
Jordan Petridis 0dc27cd01d ci: Use the same build job for creating the dist tarball as well
We don't need two jobs and its fine to always run meson dist
2025-07-02 14:37:00 +03:00

65 lines
1.6 KiB
YAML

include:
- project: "GNOME/citemplates"
file: "templates/default-rules.yml"
- component: "gitlab.gnome.org/GNOME/citemplates/release-service@master"
inputs:
dist-job-name: "build"
build:
image: registry.gitlab.gnome.org/gnome/blueprint-compiler
stage: build
script:
- black --check --diff ./ tests
- isort --check --diff --profile black ./ tests
- mypy --python-version=3.9 blueprintcompiler/
- G_DEBUG=fatal-warnings xvfb-run coverage run -m unittest
- coverage report
- coverage html
- coverage xml
- meson _build -Ddocs=true --prefix=/usr
- ninja -C _build
- ninja -C _build install
- ninja -C _build docs/en
- git clone https://gitlab.gnome.org/jwestman/blueprint-regression-tests.git
- cd blueprint-regression-tests
- git checkout 5f9e155c1333e84e6f683cdb26b02a5925fd8db3
- ./test.sh
- cd ..
- meson dist -C _build --include-subprojects --no-tests
- cp -r "_build/meson-dist/" "${CI_PROJECT_DIR}/public-dist/"
coverage: '/TOTAL.*\s([.\d]+)%/'
artifacts:
paths:
- _build
- htmlcov
- public-dist
reports:
coverage_report:
coverage_format: cobertura
path: coverage.xml
fuzz:
image: registry.gitlab.gnome.org/gnome/blueprint-compiler
stage: build
script:
- meson _build
- ninja -C _build install
- ./tests/fuzz.sh 5000
artifacts:
when: always
paths:
- corpus
- crashes
pages:
stage: deploy
dependencies:
- build
script:
- mv _build/docs/en public
- mv htmlcov public/coverage
artifacts:
paths:
- public
only:
- main