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