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