-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy path.gitlab-ci.yml
46 lines (40 loc) · 1.07 KB
/
.gitlab-ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
image: debian:bullseye-slim
stages:
- build
- test
variables:
DEPENDENCIES: valac valadoc gtk-doc-tools meson lcov
gobject-introspection libgirepository1.0-dev
libglib2.0-dev libgee-0.8-dev
cache:
paths:
- .cache/apt
before_script:
- mkdir -p .cache/apt
- apt-get -o dir::cache::archives=".cache/apt" update -qq
- apt-get -o dir::cache::archives=".cache/apt" install -qq -y $DEPENDENCIES
build:
stage: build
artifacts:
paths:
- valadoc
- gtkdoc
script:
- meson _build -Ddocs=valadoc,gtkdoc -Dtypelib=true
- ninja -C _build
- DESTDIR=$(mktemp -d) ninja install -C _build -v
- mv _build/valadoc _build/gtkdoc .
test:
stage: test
artifacts:
paths:
- coverage
script:
- meson _build -Db_coverage=true
- meson test -C _build -t 100 --print-errorlogs --verbose
- cd _build/src
- lcov -d . -o lcov.info -c
- lcov -d . -o lcov.info -r lcov.info "*/_build/*"
- genhtml -t "gpseq" -o ../../coverage lcov.info
- lcov -l lcov.info
coverage: '/Total:\| *(\d+\.?\d+\%)/'