-
Notifications
You must be signed in to change notification settings - Fork 5
/
.gitlab-ci.yml
69 lines (65 loc) · 1.8 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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
image: fedora:latest
stages:
- review
- build
- deploy
style-check:
stage: review
script:
- ./.gitlab/ci/style-check.sh
artifacts:
expire_in: 1 week
name: "style-check-junit-report"
when: always
reports:
junit: style-check-junit-report.xml
paths:
- "style-check-junit-report.xml"
build-folks:
stage: build
except:
- tags
before_script:
- dnf update -y --nogpgcheck
- dnf -y install --nogpgcheck
dbus-glib-devel evolution-data-server-devel glib2-devel
gobject-introspection-devel libgee-devel libxml2-devel meson ninja-build
python3-dbusmock readline-devel redhat-rpm-config telepathy-glib-devel
telepathy-glib-vala vala valadoc gtk-doc
dbus-daemon # FIXME: dbus-broker breaks the CI, see https://github.com/bus1/dbus-broker/issues/145
script:
- meson _build -Ddocs=true
- meson compile -C _build
# Multiply the Meson test timeout by 3 (mostly for the stress tests)
# For most tests it doesn't matter anyway, since we internally use
# TestUtils.loop_run_with_timeout()
- meson test -C _build -t 3
artifacts:
reports:
junit: "_build/meson-logs/testlog.junit.xml"
name: "folks-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}"
when: always
paths:
- "_build/config.h"
- "_build/meson-logs"
- "_build/docs"
pages:
stage: deploy
dependencies:
- build-folks
script:
# Devhelp (Vala API)
- mkdir -p public/devhelp
- mv _build/docs/devhelp/* public/devhelp
# Gtk-doc (C API)
- >
for f in folks folks-dummy folks-eds folks-telepathy; do
mkdir -p public/gtkdoc/$f
# We're only interested in the generated HTML here
mv _build/docs/gtkdoc/$f/html/* public/gtkdoc/$f
done
artifacts:
paths:
- public
only:
- master