Merge "Modify logs publisher"
[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-arm
28     jobs:
29       - 'hicn-arm-verify-{stream}-{os}'
30       - 'hicn-arm-merge-{stream}-{os}'
31
32     project: 'hicn'
33     os:
34       - ubuntu1804:
35           repo-os-part: 'ubuntu-arm.bionic.main'
36
37     stream:
38       - master:
39           branch: 'master'
40           repo-stream-part: 'master'
41
42     type:
43       - short
44       - long
45
46 - project:
47     name: hicn-misc
48     jobs:
49       - 'hicn-checkstyle-verify-{stream}'
50     project: 'hicn'
51     stream:
52       - master:
53           branch: 'master'
54           repo-stream-part: 'master'
55     os: ubuntu1604
56
57 - project:
58     name: hicn-sysrepo
59     jobs:
60       - 'hicn-sysrepo-plugin-verify-{stream}'
61       - 'hicn-sysrepo-plugin-merge-{stream}'
62     project: 'hicn'
63     stream:
64       - master:
65           branch: 'master'
66           repo-stream-part: 'master'
67     os: ubuntu1804
68
69 - project:
70     name: hicn-view
71     views:
72       - project-view
73     project-name: hicn
74
75 - job-template:
76     name: 'hicn-checkstyle-verify-{stream}'
77
78     project-type: freestyle
79     node: '{os}-us'
80     concurrent: true
81     archive-artifacts: '**/tmp/hicn-failed-unittests/*/* **/core'
82
83     build-discarder:
84       daysToKeep: '{build-days-to-keep}'
85       numToKeep: '{build-num-to-keep}'
86       artifactDaysToKeep: '{build-artifact-days-to-keep}'
87       artifactNumToKeep: '{build-artifact-num-to-keep}'
88
89     parameters:
90       - project-parameter:
91           project: '{project}'
92       - gerrit-parameter:
93           branch: '{branch}'
94       - os-parameter:
95           os: '{os}'
96       - repo-name-parameter:
97           repo-name: '{repo-stream-part}.ubuntu.xenial.main'
98       - string:
99           name: ARCHIVE_ARTIFACTS
100           default: '{archive-artifacts}'
101           description: Artifacts to archive to the logs server.
102
103     scm:
104       - gerrit-trigger-scm:
105           credentials-id: 'jenkins-gerrit-credentials'
106           refspec: '$GERRIT_REFSPEC'
107           choosing-strategy: 'gerrit'
108
109     wrappers:
110       - fdio-infra-wrappers:
111           build-timeout: '{build-timeout}'
112
113     triggers:
114       - gerrit:
115           server-name: 'Primary'
116           trigger-on:
117             - patchset-created-event:
118                 exclude-drafts: 'true'
119                 exclude-trivial-rebase: 'false'
120                 exclude-no-code-change: 'true'
121             - draft-published-event
122             - comment-added-contains-event:
123                 comment-contains-value: 'checkstylecheck'
124             - comment-added-contains-event:
125                 comment-contains-value: 'docsonly'
126             - comment-added-contains-event:
127                 comment-contains-value: 'recheck'
128             - comment-added-contains-event:
129                 comment-contains-value: 'reverify'
130           projects:
131             - project-compare-type: 'ANT'
132               project-pattern: '{project}'
133               branches:
134                 - branch-compare-type: 'ANT'
135                   branch-pattern: '**/{branch}'
136               file-paths:
137                 - compare-type: REG_EXP
138                   pattern: ^((?!\/COMMIT_MSG|docs|_abc|_def[\/\.]).)*$
139               disable-strict-forbidden-file-verification: 'true'
140           override-votes: true
141           gerrit-build-notbuilt-verified-value: 0
142           gerrit-build-successful-verified-value: 1
143           # yamllint disable-line rule:line-length
144           notbuilt-message: 'Automatic retry of failed jobs may be in process. A proper vote should be set when retry completes.'
145           # yamllint disable-line rule:line-length
146           failed-message: 'Checkstyle failed. No further verify jobs will be started.'
147           successful-message: 'checkstyle_success'
148           skip-vote:
149             successful: true
150             failed: false
151             unstable: false
152             notbuilt: false
153
154     builders:
155       - shell:
156           !include-raw-escape: include-raw-hicn-checkstyle.sh
157
158     publishers:
159       - lf-infra-publish
160       - naginator:
161           rerun-unstable-builds: true
162           max-failed-builds: 1
163           fixed-delay: 90
164
165 - job-template:
166     name: 'hicn-verify-{stream}-{os}'
167
168     project-type: freestyle
169     node: '{os}-us'
170     concurrent: true
171     archive-artifacts: >
172       **/build/*.rpm,
173       **/build/*.deb
174     allow-empty: 'true'
175     fingerprint: false
176     only-if-success: true
177     default-excludes: false
178
179     build-discarder:
180       daysToKeep: '{build-days-to-keep}'
181       numToKeep: 100
182       artifactDaysToKeep: '{build-artifact-days-to-keep}'
183       artifactNumToKeep: '{build-artifact-num-to-keep}'
184
185     parameters:
186       - project-parameter:
187           project: '{project}'
188       - gerrit-parameter:
189           branch: '{branch}'
190       - os-parameter:
191           os: '{os}'
192       - repo-name-parameter:
193           repo-name: '{repo-stream-part}.{repo-os-part}'
194       - stream-parameter:
195           stream: '{stream}'
196       - string:
197           name: ARCHIVE_ARTIFACTS
198           default: '{archive-artifacts}'
199           description: Artifacts to archive to the logs server.
200
201     scm:
202       - gerrit-trigger-scm:
203           credentials-id: 'jenkins-gerrit-credentials'
204           refspec: '$GERRIT_REFSPEC'
205           choosing-strategy: 'gerrit'
206
207     wrappers:
208       - fdio-infra-wrappers:
209           build-timeout: 120
210
211     triggers:
212       - gerrit-trigger-checkstyle:
213           name: '{project}'
214           branch: '{branch}'
215
216     builders:
217       - shell:
218           !include-raw-escape:
219           - include-raw-hicn-build.sh
220
221     publishers:
222       - lf-infra-publish
223
224 - job-template:
225     name: 'hicn-arm-verify-{stream}-{os}'
226
227     project-type: freestyle
228     node: '{os}arm-us'
229     concurrent: true
230     archive-artifacts: >
231       **/build/*.deb
232     allow-empty: 'true'
233     fingerprint: false
234     only-if-success: true
235     default-excludes: false
236
237     build-discarder:
238       daysToKeep: '{build-days-to-keep}'
239       numToKeep: 100
240       artifactDaysToKeep: '{build-artifact-days-to-keep}'
241       artifactNumToKeep: '{build-artifact-num-to-keep}'
242
243     parameters:
244       - project-parameter:
245           project: '{project}'
246       - gerrit-parameter:
247           branch: '{branch}'
248       - os-parameter:
249           os: '{os}'
250       - repo-name-parameter:
251           repo-name: '{repo-stream-part}.{repo-os-part}'
252       - stream-parameter:
253           stream: '{stream}'
254       - string:
255           name: ARCHIVE_ARTIFACTS
256           default: '{archive-artifacts}'
257           description: Artifacts to archive to the logs server.
258
259     scm:
260       - gerrit-trigger-scm:
261           credentials-id: 'jenkins-gerrit-credentials'
262           refspec: '$GERRIT_REFSPEC'
263           choosing-strategy: 'gerrit'
264
265     wrappers:
266       - fdio-infra-wrappers:
267           build-timeout: 120
268
269     triggers:
270       - gerrit-trigger-checkstyle:
271           name: '{project}'
272           branch: '{branch}'
273
274     builders:
275       - shell:
276           !include-raw-escape:
277           - include-raw-hicn-build.sh
278
279     publishers:
280       - fdio-infra-shiplogs:
281           maven-version: 'mvn33-new'
282
283 - job-template:
284     name: 'hicn-merge-{stream}-{os}'
285
286     project-type: freestyle
287     node: '{os}-us'
288     archive-artifacts: >
289       **/build/*.rpm,
290       **/build/*.deb
291     allow-empty: 'true'
292     fingerprint: false
293     only-if-success: true
294     default-excludes: false
295
296     build-discarder:
297       daysToKeep: '{build-days-to-keep}'
298       numToKeep: 100
299       artifactDaysToKeep: '{build-artifact-days-to-keep}'
300       artifactNumToKeep: '{build-artifact-num-to-keep}'
301
302     parameters:
303       - project-parameter:
304           project: '{project}'
305       - gerrit-parameter:
306           branch: '{branch}'
307       - os-parameter:
308           os: '{os}'
309       - maven-project-parameter:
310           maven: 'mvn33-new'
311       - maven-exec:
312           maven-version: 'mvn33-new'
313       - stream-parameter:
314           stream: 'release'
315       - repo-name-parameter:
316           repo-name: '{repo-stream-part}.{repo-os-part}'
317       - string:
318           name: ARCHIVE_ARTIFACTS
319           default: '{archive-artifacts}'
320           description: Artifacts to archive to the logs server.
321
322     scm:
323       - gerrit-trigger-scm:
324           credentials-id: 'jenkins-gerrit-credentials'
325           refspec: ''
326           choosing-strategy: 'default'
327
328     wrappers:
329       - fdio-infra-wrappers:
330           build-timeout: '{build-timeout}'
331
332     triggers:
333       - gerrit-trigger-patch-merged:
334           name: '{project}'
335           branch: '{branch}'
336
337     builders:
338       - config-file-provider:
339           files:
340             - file-id: '.packagecloud'
341               target: '/root'
342       - config-file-provider:
343           files:
344             - file-id: 'packagecloud_api'
345               target: '/root'
346       - maven-target:
347           maven-version: 'mvn33-new'
348           goals: '--version'
349           settings: 'hicn-settings'
350           settings-type: cfp
351           global-settings: 'global-settings'
352           global-settings-type: cfp
353       - shell:
354           !include-raw-escape:
355           - include-raw-hicn-checkstyle.sh
356       - shell:
357           !include-raw-escape:
358           - include-raw-hicn-build.sh
359       - provide-maven-settings:
360           settings-file: 'hicn-settings'
361           global-settings-file: 'global-settings'
362       - shell:
363           !include-raw-escape:
364           - ../scripts/packagecloud_push.sh
365       - shell:
366           !include-raw-escape:
367           - ../scripts/maven_push_functions.sh
368           - include-raw-hicn-maven-push.sh
369
370     publishers:
371       - lf-infra-publish
372       - naginator:
373           rerun-unstable-builds: false
374           max-failed-builds: 1
375           fixed-delay: 90
376
377 - job-template:
378     name: 'hicn-arm-merge-{stream}-{os}'
379
380     project-type: freestyle
381     node: '{os}arm-us'
382     archive-artifacts: >
383       **/build/*.deb
384     allow-empty: 'true'
385     fingerprint: false
386     only-if-success: true
387     default-excludes: false
388
389     build-discarder:
390       daysToKeep: '{build-days-to-keep}'
391       numToKeep: 100
392       artifactDaysToKeep: '{build-artifact-days-to-keep}'
393       artifactNumToKeep: '{build-artifact-num-to-keep}'
394
395     parameters:
396       - project-parameter:
397           project: '{project}'
398       - gerrit-parameter:
399           branch: '{branch}'
400       - os-parameter:
401           os: '{os}'
402       - maven-project-parameter:
403           maven: 'mvn33-new'
404       - maven-exec:
405           maven-version: 'mvn33-new'
406       - stream-parameter:
407           stream: 'release'
408       - repo-name-parameter:
409           repo-name: '{repo-stream-part}.{repo-os-part}'
410       - string:
411           name: ARCHIVE_ARTIFACTS
412           default: '{archive-artifacts}'
413           description: Artifacts to archive to the logs server.
414
415     scm:
416       - gerrit-trigger-scm:
417           credentials-id: 'jenkins-gerrit-credentials'
418           refspec: ''
419           choosing-strategy: 'default'
420
421     wrappers:
422       - fdio-infra-wrappers:
423           build-timeout: '{build-timeout}'
424
425     triggers:
426       - gerrit-trigger-patch-merged:
427           name: '{project}'
428           branch: '{branch}'
429
430     builders:
431       - config-file-provider:
432           files:
433             - file-id: '.packagecloud'
434               target: '/root'
435       - config-file-provider:
436           files:
437             - file-id: 'packagecloud_api'
438               target: '/root'
439       - maven-target:
440           maven-version: 'mvn33-new'
441           goals: '--version'
442           settings: 'hicn-settings'
443           settings-type: cfp
444           global-settings: 'global-settings'
445           global-settings-type: cfp
446       - shell:
447           !include-raw-escape:
448           - include-raw-hicn-checkstyle.sh
449       - shell:
450           !include-raw-escape:
451           - include-raw-hicn-build.sh
452       - provide-maven-settings:
453           settings-file: 'hicn-settings'
454           global-settings-file: 'global-settings'
455       - shell:
456           !include-raw-escape:
457           - ../scripts/packagecloud_push.sh
458       - shell:
459           !include-raw-escape:
460           - ../scripts/maven_push_functions.sh
461           - include-raw-hicn-maven-push.sh
462
463     publishers:
464       - fdio-infra-shiplogs:
465           maven-version: 'mvn33-new'
466       - naginator:
467           rerun-unstable-builds: false
468           max-failed-builds: 1
469           fixed-delay: 90
470
471 - project:
472     name: hicn-sonar
473     project: hicn
474     project-name: hicn
475     mvn-settings: hicn-settings
476     mvn-version: 'mvn33-new'
477     branch: master
478     build-node: ubuntu1604-basebuild-4c-4g
479     jobs:
480       - gerrit-maven-sonar
481
482 - job-template:
483     name: 'hicn-sysrepo-plugin-verify-{stream}'
484
485     project-type: freestyle
486     node: '{os}-us'
487     concurrent: true
488     archive-artifacts: >
489       **/build/*.rpm,
490       **/build/*.deb
491     allow-empty: 'true'
492     fingerprint: false
493     only-if-success: true
494     default-excludes: false
495
496     build-discarder:
497       daysToKeep: '{build-days-to-keep}'
498       numToKeep: 100
499       artifactDaysToKeep: '{build-artifact-days-to-keep}'
500       artifactNumToKeep: '{build-artifact-num-to-keep}'
501
502     parameters:
503       - project-parameter:
504           project: '{project}'
505       - gerrit-parameter:
506           branch: '{branch}'
507       - os-parameter:
508           os: '{os}'
509       - repo-name-parameter:
510           repo-name: '{repo-stream-part}.ubuntu.bionic.main'
511       - stream-parameter:
512           stream: '{stream}'
513       - string:
514           name: ARCHIVE_ARTIFACTS
515           default: '{archive-artifacts}'
516           description: Artifacts to archive to the logs server.
517
518     scm:
519       - gerrit-trigger-scm:
520           credentials-id: 'jenkins-gerrit-credentials'
521           refspec: '$GERRIT_REFSPEC'
522           choosing-strategy: 'gerrit'
523
524     wrappers:
525       - fdio-infra-wrappers:
526           build-timeout: 120
527
528     triggers:
529       - gerrit:
530           server-name: 'Primary'
531           trigger-on:
532             - comment-added-contains-event:
533                 comment-contains-value: 'verify_sysrepo'
534           projects:
535             - project-compare-type: 'ANT'
536               project-pattern: '{project}'
537               branches:
538                 - branch-compare-type: 'ANT'
539                   branch-pattern: '**/{branch}'
540
541     builders:
542       - shell:
543           !include-raw-escape:
544           - include-raw-hicn-sysrepo-build.sh
545
546     publishers:
547       - lf-infra-publish
548
549 - job-template:
550     name: 'hicn-sysrepo-plugin-merge-{stream}'
551
552     project-type: freestyle
553     node: '{os}-us'
554     archive-artifacts: >
555       **/build/*.rpm,
556       **/build/*.deb
557     allow-empty: 'true'
558     fingerprint: false
559     only-if-success: true
560     default-excludes: false
561
562     build-discarder:
563       daysToKeep: '{build-days-to-keep}'
564       numToKeep: 100
565       artifactDaysToKeep: '{build-artifact-days-to-keep}'
566       artifactNumToKeep: '{build-artifact-num-to-keep}'
567
568     parameters:
569       - project-parameter:
570           project: '{project}'
571       - gerrit-parameter:
572           branch: '{branch}'
573       - os-parameter:
574           os: '{os}'
575       - maven-project-parameter:
576           maven: 'mvn33-new'
577       - maven-exec:
578           maven-version: 'mvn33-new'
579       - stream-parameter:
580           stream: 'release'
581       - repo-name-parameter:
582           repo-name: '{repo-stream-part}.ubuntu.bionic.main'
583       - string:
584           name: ARCHIVE_ARTIFACTS
585           default: '{archive-artifacts}'
586           description: Artifacts to archive to the logs server.
587
588     scm:
589       - gerrit-trigger-scm:
590           credentials-id: 'jenkins-gerrit-credentials'
591           refspec: ''
592           choosing-strategy: 'default'
593
594     wrappers:
595       - fdio-infra-wrappers:
596           build-timeout: '{build-timeout}'
597
598     triggers:
599       - gerrit:
600           server-name: 'Primary'
601           trigger-on:
602             - comment-added-contains-event:
603                 comment-contains-value: 'merge_sysrepo'
604           projects:
605             - project-compare-type: 'ANT'
606               project-pattern: '{project}'
607               branches:
608                 - branch-compare-type: 'ANT'
609                   branch-pattern: '**/{branch}'
610
611     builders:
612       - config-file-provider:
613           files:
614             - file-id: '.packagecloud'
615               target: '/root'
616       - config-file-provider:
617           files:
618             - file-id: 'packagecloud_api'
619               target: '/root'
620       - maven-target:
621           maven-version: 'mvn33-new'
622           goals: '--version'
623           settings: 'hicn-settings'
624           settings-type: cfp
625           global-settings: 'global-settings'
626           global-settings-type: cfp
627       - shell:
628           !include-raw-escape:
629           - include-raw-hicn-checkstyle.sh
630       - shell:
631           !include-raw-escape:
632           - include-raw-hicn-sysrepo-build.sh
633       - provide-maven-settings:
634           settings-file: 'hicn-settings'
635           global-settings-file: 'global-settings'
636       - shell:
637           !include-raw-escape:
638           - ../scripts/packagecloud_push.sh
639       - shell:
640           !include-raw-escape:
641           - ../scripts/maven_push_functions.sh
642           - include-raw-hicn-maven-push.sh
643
644     publishers:
645       - lf-infra-publish
646       - naginator:
647           rerun-unstable-builds: false
648           max-failed-builds: 1
649           fixed-delay: 90
650
651 - project:
652     name: hicn-info
653     project-name: hicn
654     jobs:
655       - gerrit-info-yaml-verify
656     build-node: centos7-builder-4c-4g
657     project: hicn
658     branch: master