Add version check to lttng-tools build
[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:
31 daysToKeep: -1
32 numToKeep: 2
33 artifactDaysToKeep: -1
34 artifactNumToKeep: -1
35
36 wrappers:
37 - workspace-cleanup
38 - timestamps
e8078c79
MJ
39 - ansicolor:
40 colormap: xterm
e3022ad9
MJ
41
42 scm:
43 - git:
9a00aa82 44 url: git://github.com/urcu/userspace-rcu.git
e3022ad9 45 browser: githubweb
9a00aa82 46 browser-url: https://github.com/urcu/userspace-rcu
e3022ad9
MJ
47 branches:
48 - origin/{version}
49
50 triggers:
e8078c79
MJ
51 - pollscm:
52 cron: "@hourly"
e3022ad9
MJ
53
54 properties:
55 - github:
9a00aa82 56 url: https://github.com/urcu/userspace-rcu
e3022ad9
MJ
57
58
59## Templates
60- job-template:
b6e61d51 61 name: liburcu_{version}_{buildtype}
e3022ad9
MJ
62 defaults: liburcu
63
64 project-type: matrix
ca8c6144 65 node: 'master' # Applies only to matrix flyweight task
e3022ad9
MJ
66 axes:
67 - axis:
68 type: slave
69 name: arch
b6e61d51 70 values: '{obj:arch}'
e3022ad9
MJ
71 - axis:
72 type: user-defined
73 name: conf
74 values:
75 - std
76 - static
77 - tls_fallback
78 - axis:
79 type: user-defined
80 name: build
9d0846f3 81 values: '{obj:build}'
e3022ad9
MJ
82
83 builders:
84 - shell:
85 !include-raw-escape scripts/liburcu/build.sh
86
87 # TODO: Scan for open tasks
88 publishers:
89 - warnings:
90 console-log-parsers:
91 - 'GNU Make + GNU C Compiler (gcc)'
e8078c79 92 #total-thresholds:
99e596d1
MJ
93 #failed:
94 # total-all: 0
95 # total-high: 0
96 # total-normal: 0
97 # total-low: 0
e3022ad9
MJ
98 - archive:
99 artifacts: 'build/**'
100 allow-empty: false
1d573689 101 - ircbot:
95654431 102 strategy: new-failure-and-fixed
1d573689
MJ
103 matrix-notifier: only-parent
104 channels:
105 - name: '#lttng'
e3022ad9
MJ
106
107- job-template:
108 name: liburcu_{version}_cppcheck
109 defaults: liburcu
110
111 triggers:
e8078c79
MJ
112 - pollscm:
113 cron: "@daily"
e3022ad9
MJ
114
115 builders:
116 - shell: |
117 rm -f liburcu-cppcheck.xml
118 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE 2> liburcu-cppcheck.xml
119
120 publishers:
121 - archive:
122 artifacts: 'liburcu-cppcheck.xml'
123 allow-empty: false
e3022ad9
MJ
124 - cppcheck:
125 pattern: 'liburcu-cppcheck.xml'
126 - email:
127 recipients: 'ci-notification@lists.lttng.org'
128 notify-every-unstable-build: true
129 send-to-individuals: false
130
131- job-template:
132 name: liburcu_{version}_scan-build
133 defaults: liburcu
134 node: 'x86-64'
135
136 triggers:
e8078c79
MJ
137 - pollscm:
138 cron: "@daily"
e3022ad9
MJ
139
140 builders:
141 - shell:
142 !include-raw-escape scripts/liburcu/scan-build.sh
143
144 publishers:
145 - html-publisher:
146 name: 'HTML Report'
147 dir: 'scan-build-archive/'
148 files: 'index.html'
149
e8078c79
MJ
150- job-template:
151 name: liburcu_{version}_coverity
152 defaults: liburcu
153 node: 'x86-64'
154
155 triggers:
156 - pollscm:
157 cron: "@daily"
158
159 wrappers:
160 - workspace-cleanup
161 - timestamps
162 - ansicolor:
163 colormap: xterm
164 - credentials-binding:
165 - username-password-separated:
166 credential-id: liburcu_coverity_token
167 username: COVERITY_SCAN_PROJECT_NAME
168 password: COVERITY_SCAN_TOKEN
169
170 builders:
171 - shell:
172 !include-raw-escape scripts/common/coverity.sh
173
174 publishers:
175 - workspace-cleanup
e3022ad9
MJ
176
177
178## Project
179- project:
180 name: liburcu
181 version:
6ea8351e 182 !include jobs/inc/liburcu-versions.yaml.inc
e3022ad9 183 jobs:
57ae8ff4
MJ
184 - 'liburcu_{version}_{buildtype}':
185 buildtype: build
b6e61d51 186 arch: !!python/tuple [x86-32, x86-64]
9d0846f3 187 build: !!python/tuple [std, oot, dist]
57ae8ff4
MJ
188 - 'liburcu_{version}_{buildtype}':
189 buildtype: portbuild
72f4f0c1 190 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el]
9d0846f3 191 build: !!python/tuple [std]
7491c28d
MJ
192 - 'liburcu_{version}_{buildtype}':
193 buildtype: solarisbuild
194 arch: !!python/tuple [solaris10, solaris11]
195 build: !!python/tuple [std]
196 version:
197 - master
198 - stable-0.9
e3022ad9
MJ
199 - 'liburcu_{version}_cppcheck'
200 - 'liburcu_{version}_scan-build'
e8078c79
MJ
201 - 'liburcu_{version}_coverity':
202 version: master
e3022ad9 203
This page took 0.031173 seconds and 4 git commands to generate.