Add INFO.yaml verify job
[ci-management.git] / jjb / hicn / hicn.yaml
1 ---
2 - project:
3     name: hicn
4     jobs:
5       - 'hicn-verify-{stream}-{os}'
6       - 'hicn-merge-{stream}-{os}'
7
8     project: 'hicn'
9     os:
10       - ubuntu1804:
11           repo-os-part: 'ubuntu.bionic.main'
12       - ubuntu1604:
13           repo-os-part: 'ubuntu.xenial.main'
14       - centos7:
15           repo-os-part: 'centos7'
16
17     stream:
18       - master:
19           branch: 'master'
20           repo-stream-part: 'master'
21
22     type:
23       - short
24       - long
25
26 - project:
27     name: hicn-misc
28     jobs:
29       - 'hicn-checkstyle-verify-{stream}'
30     project: 'hicn'
31     stream:
32       - master:
33           branch: 'master'
34           repo-stream-part: 'master'
35     os: ubuntu1604
36
37 - project:
38     name: hicn-sysrepo
39     jobs:
40       - 'hicn-sysrepo-plugin-verify-{stream}'
41       - 'hicn-sysrepo-plugin-merge-{stream}'
42     project: 'hicn'
43     stream:
44       - master:
45           branch: 'master'
46           repo-stream-part: 'master'
47     os: ubuntu1804
48
49 - project:
50     name: hicn-view
51     views:
52       - project-view
53     project-name: hicn
54
55 - job-template:
56     name: 'hicn-checkstyle-verify-{stream}'
57
58     project-type: freestyle
59     node: '{os}-us'
60     concurrent: true
61
62     build-discarder:
63       daysToKeep: '{build-days-to-keep}'
64       numToKeep: '{build-num-to-keep}'
65       artifactDaysToKeep: '{build-artifact-days-to-keep}'
66       artifactNumToKeep: '{build-artifact-num-to-keep}'
67
68     parameters:
69       - project-parameter:
70           project: '{project}'
71       - gerrit-parameter:
72           branch: '{branch}'
73       - os-parameter:
74           os: '{os}'
75       - repo-name-parameter:
76           repo-name: '{repo-stream-part}.ubuntu.xenial.main'
77
78     scm:
79       - gerrit-trigger-scm:
80           credentials-id: 'jenkins-gerrit-credentials'
81           refspec: '$GERRIT_REFSPEC'
82           choosing-strategy: 'gerrit'
83
84     wrappers:
85       - fdio-infra-wrappers:
86           build-timeout: '{build-timeout}'
87
88     triggers:
89       - gerrit:
90           server-name: 'Primary'
91           trigger-on:
92             - patchset-created-event:
93                 exclude-drafts: 'true'
94                 exclude-trivial-rebase: 'false'
95                 exclude-no-code-change: 'true'
96             - draft-published-event
97             - comment-added-contains-event:
98                 comment-contains-value: 'checkstylecheck'
99             - comment-added-contains-event:
100                 comment-contains-value: 'docsonly'
101             - comment-added-contains-event:
102                 comment-contains-value: 'recheck'
103             - comment-added-contains-event:
104                 comment-contains-value: 'reverify'
105           projects:
106             - project-compare-type: 'ANT'
107               project-pattern: '{project}'
108               branches:
109                 - branch-compare-type: 'ANT'
110                   branch-pattern: '**/{branch}'
111               file-paths:
112                 - compare-type: REG_EXP
113                   pattern: ^((?!\/COMMIT_MSG|docs|_abc|_def[\/\.]).)*$
114               disable-strict-forbidden-file-verification: 'true'
115           override-votes: true
116           gerrit-build-notbuilt-verified-value: 0
117           gerrit-build-successful-verified-value: 1
118           # yamllint disable-line rule:line-length
119           notbuilt-message: 'Automatic retry of failed jobs may be in process. A proper vote should be set when retry completes.'
120           # yamllint disable-line rule:line-length
121           failed-message: 'Checkstyle failed. No further verify jobs will be started.'
122           successful-message: 'checkstyle_success'
123           skip-vote:
124             successful: true
125             failed: false
126             unstable: false
127             notbuilt: false
128
129     builders:
130       - shell:
131           !include-raw-escape: include-raw-hicn-checkstyle.sh
132
133     publishers:
134       - fdio-infra-shiplogs:
135           maven-version: 'mvn33-new'
136           archive-artifacts: '/tmp/hicn-failed-unittests/*/* **/core'
137       - naginator:
138           rerun-unstable-builds: true
139           max-failed-builds: 1
140           fixed-delay: 90
141
142 - job-template:
143     name: 'hicn-verify-{stream}-{os}'
144
145     project-type: freestyle
146     node: '{os}-us'
147     concurrent: true
148
149     build-discarder:
150       daysToKeep: '{build-days-to-keep}'
151       numToKeep: 100
152       artifactDaysToKeep: '{build-artifact-days-to-keep}'
153       artifactNumToKeep: '{build-artifact-num-to-keep}'
154
155     parameters:
156       - project-parameter:
157           project: '{project}'
158       - gerrit-parameter:
159           branch: '{branch}'
160       - os-parameter:
161           os: '{os}'
162       - repo-name-parameter:
163           repo-name: '{repo-stream-part}.{repo-os-part}'
164       - stream-parameter:
165           stream: '{stream}'
166
167     scm:
168       - gerrit-trigger-scm:
169           credentials-id: 'jenkins-gerrit-credentials'
170           refspec: '$GERRIT_REFSPEC'
171           choosing-strategy: 'gerrit'
172
173     wrappers:
174       - fdio-infra-wrappers:
175           build-timeout: 120
176
177     triggers:
178       - gerrit-trigger-checkstyle:
179           name: '{project}'
180           branch: '{branch}'
181
182     builders:
183       - shell:
184           !include-raw-escape:
185           - include-raw-hicn-build.sh
186
187     publishers:
188       - archive:
189           artifacts: >
190             **/build/*.rpm,
191             **/build/*.deb
192           allow-empty: 'true'
193           fingerprint: false
194           only-if-success: true
195           default-excludes: false
196       - fdio-infra-shiplogs:
197           maven-version: 'mvn33-new'
198
199 - job-template:
200     name: 'hicn-merge-{stream}-{os}'
201
202     project-type: freestyle
203     node: '{os}-us'
204
205     build-discarder:
206       daysToKeep: '{build-days-to-keep}'
207       numToKeep: 100
208       artifactDaysToKeep: '{build-artifact-days-to-keep}'
209       artifactNumToKeep: '{build-artifact-num-to-keep}'
210
211     parameters:
212       - project-parameter:
213           project: '{project}'
214       - gerrit-parameter:
215           branch: '{branch}'
216       - os-parameter:
217           os: '{os}'
218       - maven-project-parameter:
219           maven: 'mvn33-new'
220       - maven-exec:
221           maven-version: 'mvn33-new'
222       - stream-parameter:
223           stream: 'release'
224       - repo-name-parameter:
225           repo-name: '{repo-stream-part}.{repo-os-part}'
226
227     scm:
228       - gerrit-trigger-scm:
229           credentials-id: 'jenkins-gerrit-credentials'
230           refspec: ''
231           choosing-strategy: 'default'
232
233     wrappers:
234       - fdio-infra-wrappers:
235           build-timeout: '{build-timeout}'
236
237     triggers:
238       - gerrit-trigger-patch-merged:
239           name: '{project}'
240           branch: '{branch}'
241
242     builders:
243       - config-file-provider:
244           files:
245             - file-id: '.packagecloud'
246               target: '/root'
247       - config-file-provider:
248           files:
249             - file-id: 'packagecloud_api'
250               target: '/root'
251       - maven-target:
252           maven-version: 'mvn33-new'
253           goals: '--version'
254           settings: 'hicn-settings'
255           settings-type: cfp
256           global-settings: 'global-settings'
257           global-settings-type: cfp
258       - shell:
259           !include-raw-escape:
260           - include-raw-hicn-checkstyle.sh
261       - shell:
262           !include-raw-escape:
263           - include-raw-hicn-build.sh
264       - provide-maven-settings:
265           settings-file: 'hicn-settings'
266           global-settings-file: 'global-settings'
267       - shell:
268           !include-raw-escape:
269           - ../scripts/packagecloud_push.sh
270       - shell:
271           !include-raw-escape:
272           - ../scripts/maven_push_functions.sh
273           - include-raw-hicn-maven-push.sh
274
275     publishers:
276       - archive:
277           artifacts: >
278             **/build/*.rpm,
279             **/build/*.deb
280           allow-empty: 'true'
281           fingerprint: false
282           only-if-success: true
283           default-excludes: false
284       - fdio-infra-shiplogs:
285           maven-version: 'mvn33-new'
286       - naginator:
287           rerun-unstable-builds: false
288           max-failed-builds: 1
289           fixed-delay: 90
290
291 - project:
292     name: hicn-sonar
293     project: hicn
294     project-name: hicn
295     mvn-settings: hicn-settings
296     mvn-version: 'mvn33-new'
297     branch: master
298     build-node: ubuntu1604-basebuild-4c-4g
299     jobs:
300       - gerrit-maven-sonar
301
302 - job-template:
303     name: 'hicn-sysrepo-plugin-verify-{stream}'
304
305     project-type: freestyle
306     node: '{os}-us'
307     concurrent: true
308
309     build-discarder:
310       daysToKeep: '{build-days-to-keep}'
311       numToKeep: 100
312       artifactDaysToKeep: '{build-artifact-days-to-keep}'
313       artifactNumToKeep: '{build-artifact-num-to-keep}'
314
315     parameters:
316       - project-parameter:
317           project: '{project}'
318       - gerrit-parameter:
319           branch: '{branch}'
320       - os-parameter:
321           os: '{os}'
322       - repo-name-parameter:
323           repo-name: '{repo-stream-part}.ubuntu.bionic.main'
324       - stream-parameter:
325           stream: '{stream}'
326
327     scm:
328       - gerrit-trigger-scm:
329           credentials-id: 'jenkins-gerrit-credentials'
330           refspec: '$GERRIT_REFSPEC'
331           choosing-strategy: 'gerrit'
332
333     wrappers:
334       - fdio-infra-wrappers:
335           build-timeout: 120
336
337     triggers:
338       - gerrit:
339           server-name: 'Primary'
340           trigger-on:
341             - comment-added-contains-event:
342                 comment-contains-value: 'verify_sysrepo'
343           projects:
344             - project-compare-type: 'ANT'
345               project-pattern: '{project}'
346               branches:
347                 - branch-compare-type: 'ANT'
348                   branch-pattern: '**/{branch}'
349
350     builders:
351       - shell:
352           !include-raw-escape:
353           - include-raw-hicn-sysrepo-build.sh
354
355     publishers:
356       - archive:
357           artifacts: >
358             **/build/*.rpm,
359             **/build/*.deb
360           allow-empty: 'true'
361           fingerprint: false
362           only-if-success: true
363           default-excludes: false
364       - fdio-infra-shiplogs:
365           maven-version: 'mvn33-new'
366
367 - job-template:
368     name: 'hicn-sysrepo-plugin-merge-{stream}'
369
370     project-type: freestyle
371     node: '{os}-us'
372
373     build-discarder:
374       daysToKeep: '{build-days-to-keep}'
375       numToKeep: 100
376       artifactDaysToKeep: '{build-artifact-days-to-keep}'
377       artifactNumToKeep: '{build-artifact-num-to-keep}'
378
379     parameters:
380       - project-parameter:
381           project: '{project}'
382       - gerrit-parameter:
383           branch: '{branch}'
384       - os-parameter:
385           os: '{os}'
386       - maven-project-parameter:
387           maven: 'mvn33-new'
388       - maven-exec:
389           maven-version: 'mvn33-new'
390       - stream-parameter:
391           stream: 'release'
392       - repo-name-parameter:
393           repo-name: '{repo-stream-part}.ubuntu.bionic.main'
394
395     scm:
396       - gerrit-trigger-scm:
397           credentials-id: 'jenkins-gerrit-credentials'
398           refspec: ''
399           choosing-strategy: 'default'
400
401     wrappers:
402       - fdio-infra-wrappers:
403           build-timeout: '{build-timeout}'
404
405     triggers:
406       - gerrit:
407           server-name: 'Primary'
408           trigger-on:
409             - comment-added-contains-event:
410                 comment-contains-value: 'merge_sysrepo'
411           projects:
412             - project-compare-type: 'ANT'
413               project-pattern: '{project}'
414               branches:
415                 - branch-compare-type: 'ANT'
416                   branch-pattern: '**/{branch}'
417
418     builders:
419       - config-file-provider:
420           files:
421             - file-id: '.packagecloud'
422               target: '/root'
423       - config-file-provider:
424           files:
425             - file-id: 'packagecloud_api'
426               target: '/root'
427       - maven-target:
428           maven-version: 'mvn33-new'
429           goals: '--version'
430           settings: 'hicn-settings'
431           settings-type: cfp
432           global-settings: 'global-settings'
433           global-settings-type: cfp
434       - shell:
435           !include-raw-escape:
436           - include-raw-hicn-checkstyle.sh
437       - shell:
438           !include-raw-escape:
439           - include-raw-hicn-sysrepo-build.sh
440       - provide-maven-settings:
441           settings-file: 'hicn-settings'
442           global-settings-file: 'global-settings'
443       - shell:
444           !include-raw-escape:
445           - ../scripts/packagecloud_push.sh
446       - shell:
447           !include-raw-escape:
448           - ../scripts/maven_push_functions.sh
449           - include-raw-hicn-maven-push.sh
450
451     publishers:
452       - archive:
453           artifacts: >
454             **/build/*.rpm,
455             **/build/*.deb
456           allow-empty: 'true'
457           fingerprint: false
458           only-if-success: true
459           default-excludes: false
460       - fdio-infra-shiplogs:
461           maven-version: 'mvn33-new'
462       - naginator:
463           rerun-unstable-builds: false
464           max-failed-builds: 1
465           fixed-delay: 90