New include syntax
[lttng-ci.git] / jobs / liburcu.yaml
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
39 - ansicolor:
40 colormap: xterm
41
42 scm:
43 - git:
44 url: git://github.com/urcu/userspace-rcu.git
45 browser: githubweb
46 browser-url: https://github.com/urcu/userspace-rcu
47 branches:
48 - origin/{version}
49
50 triggers:
51 - pollscm:
52 cron: "@hourly"
53
54 properties:
55 - github:
56 url: https://github.com/urcu/userspace-rcu
57
58
59 ## Templates
60 - job-template:
61 name: liburcu_{version}_{buildtype}
62 defaults: liburcu
63
64 project-type: matrix
65 node: 'master' # Applies only to matrix flyweight task
66 axes:
67 - axis:
68 type: slave
69 name: arch
70 values: '{obj:arch}'
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
81 values: '{obj:build}'
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)'
92 #total-thresholds:
93 #failed:
94 # total-all: 0
95 # total-high: 0
96 # total-normal: 0
97 # total-low: 0
98 - archive:
99 artifacts: 'build/**'
100 allow-empty: false
101 - ircbot:
102 strategy: new-failure-and-fixed
103 matrix-notifier: only-parent
104 channels:
105 - name: '#lttng'
106
107 - job-template:
108 name: liburcu_{version}_cppcheck
109 defaults: liburcu
110
111 triggers:
112 - pollscm:
113 cron: "@daily"
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
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:
137 - pollscm:
138 cron: "@daily"
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
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
176
177
178 ## Project
179 - project:
180 name: liburcu
181 version:
182 !include: jobs/inc/liburcu-versions.yaml.inc
183 jobs:
184 - 'liburcu_{version}_{buildtype}':
185 buildtype: build
186 arch: !!python/tuple [x86-32, x86-64]
187 build: !!python/tuple [std, oot, dist]
188 - 'liburcu_{version}_{buildtype}':
189 buildtype: portbuild
190 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el]
191 build: !!python/tuple [std]
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
199 - 'liburcu_{version}_cppcheck'
200 - 'liburcu_{version}_scan-build'
201 - 'liburcu_{version}_coverity':
202 version: master
203
This page took 0.034067 seconds and 5 git commands to generate.