jjb: fix lttng-tools build script to run unit tests for 2.8
[lttng-ci.git] / jobs / liburcu.yaml
CommitLineData
e3022ad9
MJ
1# {project}_{version}_{jobtype}
2# liburcu_stable-0.8_build
3#
4# jobtypes:
5# - build
6# - portbuild
7# - cppcheck
8# - coverity
9# - scan-build
10# - pylint
11
12- defaults:
13 name: liburcu
14 description: |
15 liburcu is a LGPLv2.1 userspace RCU (read-copy-update) library. This
16 data synchronization library provides read-side access which scales
17 linearly with the number of cores. It does so by allowing multiples
18 copies of a given data structure to live at the same time, and by
19 monitoring the data structure accesses to detect grace periods after
20 which memory reclamation is possible.
21
22 liburcu-cds provides efficient data structures based on RCU and
23 lock-free algorithms. Those structures include hash tables, queues,
24 stacks, and doubly-linked lists.
25
26 <p>Job is managed by Jenkins Job Builder.</p>
27
28 project-type: freestyle
29
30 logrotate:
e3022ad9 31 numToKeep: 2
e3022ad9
MJ
32
33 wrappers:
34 - workspace-cleanup
35 - timestamps
e8078c79
MJ
36 - ansicolor:
37 colormap: xterm
e3022ad9
MJ
38
39 scm:
40 - git:
51ca880a 41 url: git://github.com/{github_user}/{github_name}.git
e3022ad9 42 browser: githubweb
51ca880a 43 browser-url: https://github.com/{github_user}/{github_name}
e3022ad9
MJ
44 branches:
45 - origin/{version}
6d35c326 46 basedir: src/liburcu
e3022ad9
MJ
47
48 triggers:
e8078c79
MJ
49 - pollscm:
50 cron: "@hourly"
e3022ad9
MJ
51
52 properties:
53 - github:
51ca880a 54 url: https://github.com/{github_user}/{github_name}
e3022ad9
MJ
55
56
57## Templates
58- job-template:
b6e61d51 59 name: liburcu_{version}_{buildtype}
e3022ad9
MJ
60 defaults: liburcu
61
62 project-type: matrix
ca8c6144 63 node: 'master' # Applies only to matrix flyweight task
e3022ad9
MJ
64 axes:
65 - axis:
66 type: slave
67 name: arch
b6e61d51 68 values: '{obj:arch}'
e3022ad9
MJ
69 - axis:
70 type: user-defined
71 name: conf
72 values:
73 - std
74 - static
75 - tls_fallback
76 - axis:
77 type: user-defined
78 name: build
9d0846f3 79 values: '{obj:build}'
e3022ad9
MJ
80
81 builders:
82 - shell:
ef63064f 83 !include-raw-escape: scripts/liburcu/build.sh
e3022ad9
MJ
84
85 # TODO: Scan for open tasks
86 publishers:
87 - warnings:
88 console-log-parsers:
89 - 'GNU Make + GNU C Compiler (gcc)'
51ca880a
MJ
90 total-thresholds:
91 unstable:
d2c76ee5
MJ
92 total-all: 0
93 total-high: 0
94 total-normal: 0
95 total-low: 0
e3022ad9
MJ
96 - archive:
97 artifacts: 'build/**'
98 allow-empty: false
1d573689 99 - ircbot:
95654431 100 strategy: new-failure-and-fixed
1d573689
MJ
101 matrix-notifier: only-parent
102 channels:
103 - name: '#lttng'
e3022ad9
MJ
104
105- job-template:
106 name: liburcu_{version}_cppcheck
107 defaults: liburcu
108
109 triggers:
e8078c79
MJ
110 - pollscm:
111 cron: "@daily"
e3022ad9
MJ
112
113 builders:
114 - shell: |
115 rm -f liburcu-cppcheck.xml
6d35c326 116 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/liburcu 2> liburcu-cppcheck.xml
e3022ad9
MJ
117
118 publishers:
119 - archive:
120 artifacts: 'liburcu-cppcheck.xml'
121 allow-empty: false
e3022ad9
MJ
122 - cppcheck:
123 pattern: 'liburcu-cppcheck.xml'
124 - email:
125 recipients: 'ci-notification@lists.lttng.org'
126 notify-every-unstable-build: true
127 send-to-individuals: false
128
129- job-template:
130 name: liburcu_{version}_scan-build
131 defaults: liburcu
132 node: 'x86-64'
133
134 triggers:
e8078c79
MJ
135 - pollscm:
136 cron: "@daily"
e3022ad9
MJ
137
138 builders:
139 - shell:
ef63064f 140 !include-raw-escape: scripts/liburcu/scan-build.sh
e3022ad9
MJ
141
142 publishers:
143 - html-publisher:
144 name: 'HTML Report'
145 dir: 'scan-build-archive/'
146 files: 'index.html'
147
e8078c79
MJ
148- job-template:
149 name: liburcu_{version}_coverity
150 defaults: liburcu
151 node: 'x86-64'
152
153 triggers:
154 - pollscm:
155 cron: "@daily"
156
157 wrappers:
158 - workspace-cleanup
159 - timestamps
160 - ansicolor:
161 colormap: xterm
162 - credentials-binding:
163 - username-password-separated:
164 credential-id: liburcu_coverity_token
165 username: COVERITY_SCAN_PROJECT_NAME
166 password: COVERITY_SCAN_TOKEN
167
168 builders:
169 - shell:
ef63064f 170 !include-raw-escape: scripts/common/coverity.sh
e8078c79
MJ
171
172 publishers:
173 - workspace-cleanup
6d35c326
MJ
174 - archive:
175 artifacts: 'analysis-results.tgz,cov-int/**'
176 allow-empty: false
e3022ad9
MJ
177
178
179## Project
180- project:
181 name: liburcu
51ca880a
MJ
182 github_user: urcu
183 github_name: userspace-rcu
e3022ad9 184 version:
ef63064f 185 !include: jobs/inc/liburcu-versions.yaml.inc
e3022ad9 186 jobs:
57ae8ff4
MJ
187 - 'liburcu_{version}_{buildtype}':
188 buildtype: build
b6e61d51 189 arch: !!python/tuple [x86-32, x86-64]
9d0846f3 190 build: !!python/tuple [std, oot, dist]
57ae8ff4
MJ
191 - 'liburcu_{version}_{buildtype}':
192 buildtype: portbuild
72f4f0c1 193 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el]
9d0846f3 194 build: !!python/tuple [std]
7491c28d
MJ
195 - 'liburcu_{version}_{buildtype}':
196 buildtype: solarisbuild
197 arch: !!python/tuple [solaris10, solaris11]
198 build: !!python/tuple [std]
51ca880a 199 version: # Solaris support was introduced in 0.9
7491c28d
MJ
200 - master
201 - stable-0.9
e3022ad9
MJ
202 - 'liburcu_{version}_cppcheck'
203 - 'liburcu_{version}_scan-build'
e8078c79
MJ
204 - 'liburcu_{version}_coverity':
205 version: master
e3022ad9 206
This page took 0.04857 seconds and 4 git commands to generate.