blob: 7ee01e4d7fd3016050f92b05b7d92fe544bdf12b (
plain)
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
stages:
- generate
- deploy
.fedora.latest.template: &fedora_template
image: fedora:latest
before_script:
#in F34 rubygem-ronn got replaced by rubygem-ronn-ng
- dnf install -y GeoIP-devel libmaxminddb-devel make meson ninja-build gcc libasan geolite2-{city,country} rubygem-ronn
fedora.nogeo:
stage: generate
<<: *fedora_template
script:
- meson setup build -Duse_maxminddb=disabled -Duse_geoip=disabled --buildtype=plain -Dc_args="-O2 -g -Werror"
- ninja -C build
- ninja -C build test
- USE_MAXMIND=no USE_GEOIP=no USE_RUNTIME_LINKING=no CFLAGS="-O2 -g -Werror" make
fedora.geoip:
stage: generate
<<: *fedora_template
script:
- meson setup build -Duse_maxminddb=disabled -Duse_geoip=enabled -Duse_runtime_linking=disabled --buildtype=plain -Dc_args="-O2 -g -Werror"
- ninja -C build
- ninja -C build test
- USE_GEOIP=yes USE_RUNTIME_LINKING=no USE_MAXMIND=no CFLAGS="-O2 -g -Werror" make
fedora.dyn_geoip:
stage: generate
<<: *fedora_template
script:
- meson setup build -Duse_maxminddb=disabled -Duse_geoip=enabled -Duse_runtime_linking=enabled --buildtype=plain -Dc_args="-O2 -g -Werror"
- ninja -C build
- ninja -C build test
- USE_GEOIP=yes USE_RUNTIME_LINKING=yes USE_MAXMIND=no CFLAGS="-O2 -g -Werror" make
fedora.maxmind:
stage: generate
<<: *fedora_template
script:
- meson setup build -Duse_maxminddb=enabled -Duse_geoip=disabled -Duse_runtime_linking=disabled --buildtype=plain -Dc_args="-O2 -g -Werror"
- ninja -C build
- ninja -C build test
- USE_GEOIP=no USE_RUNTIME_LINKING=no USE_MAXMIND=yes CFLAGS="-O2 -g -Werror" make
fedora.dyn_maxmind:
stage: generate
<<: *fedora_template
script:
- meson setup build -Duse_maxminddb=enabled -Duse_geoip=disabled -Duse_runtime_linking=enabled --buildtype=plain -Dc_args="-O2 -g -Werror"
- ninja -C build
- ninja -C build test
- USE_GEOIP=no USE_RUNTIME_LINKING=yes USE_MAXMIND=yes CFLAGS="-O2 -g -Werror" make
fedora.dyn_maxmind_with_asan:
stage: generate
<<: *fedora_template
script:
- export ASAN_OPTIONS="detect_leaks=0"
- meson setup build -Db_sanitize=address -Dwerror=true
- ninja -C build test
- ./build/ipcalc -g 217.31.205.50
# Generates coverage report
pages-test:
stage: deploy
<<: *fedora_template
script:
- dnf install -y lcov
- meson setup build -Db_coverage=true -Duse_maxminddb=enabled -Duse_geoip=disabled -Duse_runtime_linking=enabled --buildtype=plain -Dc_args="-Og -g -Werror"
- ninja -C build
- ninja -C build test
- ninja -C build coverage-html && mv build/meson-logs/coveragereport public
tags:
- shared
except:
- master
pages:
stage: deploy
<<: *fedora_template
script:
- dnf install -y lcov
- meson setup build -Db_coverage=true -Duse_maxminddb=enabled -Duse_geoip=disabled -Duse_runtime_linking=enabled --buildtype=plain -Dc_args="-Og -g -Werror"
- ninja -C build
- ninja -C build test
- ninja -C build coverage-html && mv build/meson-logs/coveragereport public
- tests/run-coverage.sh
tags:
- shared
coverage: '/coverage lines: \d+\.\d+/'
artifacts:
when: on_success
paths:
- public
only:
- master
|