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