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