Refactor java verify jobs
[ci-management.git] / jjb / global-templates-java.yaml
1 ---
2 - job-template:
3     # Job template for Java verify jobs
4     #
5     # The purpose of this job template is to run:
6     # 1. maven clean install
7     #
8     # Required Variables:
9     #     branch:    git branch (eg. stable/lithium or master)
10
11     name: '{project-name}-{stream}-verify-java'
12
13     project-type: freestyle
14     concurrent: true
15     node: '{build-node}'
16     pattern: '**'
17
18     properties:
19       - infra-properties:
20           build-days-to-keep: '{build-days-to-keep}'
21
22     parameters:
23       - infra-parameters:
24           project: '{project}'
25           branch: '{branch}'
26           refspec: 'refs/heads/{branch}'
27           artifacts: '{archive-artifacts}'
28       - maven-exec:
29           maven-version: '{maven-version}'
30       - maven-params:
31           mvn-params: '{mvn-params}'
32
33     scm:
34       - gerrit-trigger-scm:
35           refspec: '$GERRIT_REFSPEC'
36           choosing-strategy: 'gerrit'
37           submodule-recursive: '{submodule-recursive}'
38
39     wrappers:
40       - infra-wrappers:
41           build-timeout: '{build-timeout}'
42
43     triggers:
44       - gerrit-trigger-patch-submitted:
45           server: '{server-name}'
46           project: '{project}'
47           branch: '{branch}'
48           files: '{obj:pattern}'
49
50     builders:
51       - provide-maven-settings:
52           global-settings-file: 'global-settings'
53           settings-file: '{mvn-settings}'
54       - maven-target:
55           maven-version: '{maven-version}'
56           goals: 'clean install -B
57             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn {mvn-params}'
58           settings: '{mvn-settings}'
59           settings-type: cfp
60           global-settings: 'global-settings'
61           global-settings-type: cfp
62
63     publishers:
64       - infra-shiplogs:
65           maven-version: '{maven-version}'
66
67 - job-template:
68     # Job template for Java verify jobs running checkstyle at the end
69     # When checkstyle will be fully incorporated, it is meant to replace
70     #  '{project-name}-{stream}-verify-java-checkstyle'
71     #
72     # The purpose of this job template is to run:
73     # 1. maven clean install
74     #
75     # This job publishes checkstyle results.
76     #
77     # Required Variables:
78     #     branch:    git branch (eg. stable/lithium or master)
79
80     name: '{project-name}-{stream}-verify-java-checkstyle'
81     project-type: freestyle
82     concurrent: true
83     node: '{build-node}'
84     properties:
85       - infra-properties:
86           build-days-to-keep: '{build-days-to-keep}'
87     parameters:
88       - infra-parameters:
89           project: '{project}'
90           branch: '{branch}'
91           refspec: 'refs/heads/{branch}'
92           artifacts: '{archive-artifacts}'
93       - maven-exec:
94           maven-version: '{maven-version}'
95       - maven-params:
96           mvn-params: '{mvn-params}'
97     scm:
98       - gerrit-trigger-scm:
99           refspec: '$GERRIT_REFSPEC'
100           choosing-strategy: 'gerrit'
101           submodule-recursive: '{submodule-recursive}'
102     wrappers:
103       - infra-wrappers:
104           build-timeout: '{build-timeout}'
105     triggers:
106       - gerrit-trigger-patch-submitted:
107           server: '{server-name}'
108           project: '{project}'
109           branch: '{branch}'
110           files: '**'
111     builders:
112       - provide-maven-settings:
113           global-settings-file: 'global-settings'
114           settings-file: '{mvn-settings}'
115       - maven-target:
116           maven-version: '{maven-version}'
117           goals: 'clean install -B
118             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn {mvn-params}'
119           settings: '{mvn-settings}'
120           settings-type: cfp
121           global-settings: 'global-settings'
122           global-settings-type: cfp
123     publishers:
124       - infra-shiplogs:
125           maven-version: '{maven-version}'
126       - checkstyle-result
127
128 - job-template:
129     # Job template for Java verify jobs with POM not at the root
130     #
131     # The purpose of this job template is to run:
132     # 1. maven clean install
133     #
134     # This job supports subprojects.
135     #
136     # Required Variables:
137     #     branch:    git branch (eg. stable/lithium or master)
138     #     pom:       name/location of the pom.xml file relative to the workspace
139     #     pattern:   ant file-path pattern relative to the workspace used to
140     #                trigger the job
141
142     name: '{project-name}-{stream}-{subproject}-verify-java'
143
144     project-type: freestyle
145     concurrent: true
146     node: '{build-node}'
147
148     properties:
149       - infra-properties:
150           build-days-to-keep: '{build-days-to-keep}'
151
152     parameters:
153       - infra-parameters:
154           project: '{project}'
155           branch: '{branch}'
156           refspec: 'refs/heads/{branch}'
157           artifacts: '{archive-artifacts}'
158       - maven-exec:
159           maven-version: '{maven-version}'
160
161     scm:
162       - gerrit-trigger-scm:
163           refspec: '$GERRIT_REFSPEC'
164           choosing-strategy: 'gerrit'
165           submodule-recursive: '{submodule-recursive}'
166
167     wrappers:
168       - infra-wrappers:
169           build-timeout: '{build-timeout}'
170
171     triggers:
172       - gerrit-trigger-patch-submitted:
173           server: '{server-name}'
174           project: '{project}'
175           branch: '{branch}'
176           files: '{pattern}'
177
178     builders:
179       - provide-maven-settings:
180           global-settings-file: 'global-settings'
181           settings-file: '{mvn-settings}'
182       - maven-target:
183           maven-version: '{maven-version}'
184           pom: '{pom}'
185           goals: 'clean install -B
186             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
187           settings: '{mvn-settings}'
188           settings-type: cfp
189           global-settings: 'global-settings'
190           global-settings-type: cfp
191
192     publishers:
193       - infra-shiplogs:
194           maven-version: '{maven-version}'
195
196 - job-template:
197     # Job template for Java daily release jobs
198     #
199     # The purpose of this job template is to run:
200     # 1. maven clean deploy with Sonar scans
201     #
202     # Required Variables:
203     #     branch:    git branch (eg. stable/lithium or master)
204
205     name: '{project-name}-{stream}-release-java-daily'
206
207     project-type: freestyle
208     node: '{build-node}'
209     disabled: '{disabled}'
210     maven-deploy-properties:
211     properties:
212       - infra-properties:
213           build-days-to-keep: '{build-days-to-keep}'
214
215     parameters:
216       - infra-parameters:
217           project: '{project}'
218           branch: '{branch}'
219           refspec: 'refs/heads/{branch}'
220           artifacts: '{archive-artifacts}'
221       - maven-exec:
222           maven-version: '{maven-version}'
223
224     scm:
225       - gerrit-trigger-scm:
226           refspec: ''
227           choosing-strategy: 'default'
228           submodule-recursive: '{submodule-recursive}'
229
230     wrappers:
231       - infra-wrappers:
232           build-timeout: '{build-timeout}'
233
234     triggers:
235       # 11 AM UTC
236       - timed: 'H 11 * * *'
237       - gerrit-trigger-release-manually:
238           server: '{server-name}'
239           project: '{project}'
240           branch: '{branch}'
241
242     builders:
243       - provide-maven-settings:
244           global-settings-file: 'global-settings'
245           settings-file: '{mvn-settings}'
246
247       - maven-target:
248           maven-version: '{maven-version}'
249           goals: 'clean deploy -B
250             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
251           properties:
252             - '{maven-deploy-properties}'
253           java-opts:
254             - '-Xmx4096m -XX:MaxPermSize=512m'
255           settings: '{mvn-settings}'
256           settings-type: cfp
257           global-settings: 'global-settings'
258           global-settings-type: cfp
259
260     publishers:
261       - infra-shiplogs:
262           maven-version: '{maven-version}'
263
264 - job-template:
265     # Job template for Java daily release jobs running checkstyle at the end
266     # When checkstyle will be fully incorporated, it is meant to replace
267     #  '{project-name}-{stream}-release-java-daily'
268     #
269     # The purpose of this job template is to run:
270     # 1. maven clean deploy with Sonar scans
271     #
272     # This job publishes checkstyle results.
273     # This job uses a conditional regex match step to set versions.
274     #
275     # Required Variables:
276     #     branch:    git branch (eg. stable/lithium or master)
277
278     name: '{project-name}-{stream}-release-java-daily-checkstyle'
279     project-type: freestyle
280     node: '{build-node}'
281     disabled: '{disabled}'
282     maven-deploy-properties:
283     properties:
284       - infra-properties:
285           build-days-to-keep: '{build-days-to-keep}'
286     parameters:
287       - infra-parameters:
288           project: '{project}'
289           branch: '{branch}'
290           refspec: 'refs/heads/{branch}'
291           artifacts: '{archive-artifacts}'
292       - maven-exec:
293           maven-version: '{maven-version}'
294     scm:
295       - gerrit-trigger-scm:
296           refspec: ''
297           choosing-strategy: 'default'
298           submodule-recursive: '{submodule-recursive}'
299     wrappers:
300       - infra-wrappers:
301           build-timeout: '{build-timeout}'
302     triggers:
303       # 11 AM UTC
304       - timed: 'H 11 * * *'
305       - gerrit-trigger-release-manually:
306           server: '{server-name}'
307           project: '{project}'
308           branch: '{branch}'
309     builders:
310       - provide-maven-settings:
311           global-settings-file: 'global-settings'
312           settings-file: '{mvn-settings}'
313       - conditional-step:
314           condition-kind: regex-match
315           regex: DoSetVersion
316           label: '{setVersion}'
317           steps:
318             - inject:
319                 properties-file: version.properties
320             - maven-target:
321                 maven-version: '{maven-version}'
322                 goals: 'versions:set versions:update-child-modules versions:commit -B'
323                 properties:
324                   - 'newVersion=${{release_version}}'
325                 settings: '{mvn-settings}'
326                 settings-type: cfp
327                 global-settings: 'global-settings'
328                 global-settings-type: cfp
329       - maven-target:
330           maven-version: '{maven-version}'
331           goals: 'clean deploy -B
332             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
333           properties: '{obj:mvn_properties}'
334           settings: '{mvn-settings}'
335           settings-type: cfp
336           global-settings: 'global-settings'
337           global-settings-type: cfp
338     publishers:
339       - infra-shiplogs:
340           maven-version: '{maven-version}'
341       - checkstyle-result-daily
342
343 - job-template:
344     # Job template for Java daily release jobs
345     #
346     # The purpose of this job template is to run:
347     # 1. maven set versions
348     # 2. maven clean deploy with Sonar scans
349     #
350     # Required Variables:
351     #     branch:    git branch (eg. stable/lithium or master)
352
353     name: '{project-name}-{stream}-release-version-java-daily'
354
355     project-type: freestyle
356     disabled: '{disabled}'
357     node: '{build-node}'
358     maven-deploy-properties:
359     properties:
360       - infra-properties:
361           build-days-to-keep: '{build-days-to-keep}'
362
363     parameters:
364       - infra-parameters:
365           project: '{project}'
366           branch: '{branch}'
367           refspec: 'refs/heads/{branch}'
368           artifacts: '{archive-artifacts}'
369       - maven-exec:
370           maven-version: '{maven-version}'
371
372     scm:
373       - gerrit-trigger-scm:
374           refspec: ''
375           choosing-strategy: 'default'
376           submodule-recursive: '{submodule-recursive}'
377
378     wrappers:
379       - infra-wrappers:
380           build-timeout: '{build-timeout}'
381
382     triggers:
383       # 11 AM UTC
384       - timed: 'H H(10-17) * * *'
385       - gerrit-trigger-release-manually:
386           server: '{server-name}'
387           project: '{project}'
388           branch: '{branch}'
389
390     builders:
391       - provide-maven-settings:
392           global-settings-file: 'global-settings'
393           settings-file: '{mvn-settings}'
394
395       - inject:
396           properties-file: version.properties
397       - maven-target:
398           maven-version: '{maven-version}'
399           goals: 'versions:set versions:update-child-modules versions:commit -B'
400           properties:
401             - 'newVersion=${{release_version}}'
402           settings: '{mvn-settings}'
403           settings-type: cfp
404           global-settings: 'global-settings'
405           global-settings-type: cfp
406
407       - maven-target:
408           maven-version: '{maven-version}'
409           goals: 'clean deploy -B
410             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
411           properties:
412             - '{maven-deploy-properties}'
413           settings: '{mvn-settings}'
414           settings-type: cfp
415           global-settings: 'global-settings'
416           global-settings-type: cfp
417
418     publishers:
419       - infra-shiplogs:
420           maven-version: '{maven-version}'
421
422 - job-template:
423     # Job template for Java daily release jobs
424     #
425     # The purpose of this job template is to run:
426     # 1. maven set versions
427     # 2. maven clean deploy -P {mvn-profile} with Sonar scans
428     #
429     # Required Variables:
430     #     branch:    git branch (eg. stable/lithium or master)
431
432     name: '{project-name}-{stream}-release-version-profile-java-daily'
433
434     project-type: freestyle
435     node: '{build-node}'
436     disabled: '{disabled}'
437     maven-deploy-properties:
438     properties:
439       - infra-properties:
440           build-days-to-keep: '{build-days-to-keep}'
441
442     parameters:
443       - infra-parameters:
444           project: '{project}'
445           branch: '{branch}'
446           refspec: 'refs/heads/{branch}'
447           artifacts: '{archive-artifacts}'
448       - maven-exec:
449           maven-version: '{maven-version}'
450
451     scm:
452       - gerrit-trigger-scm:
453           refspec: ''
454           choosing-strategy: 'default'
455           submodule-recursive: '{submodule-recursive}'
456
457     wrappers:
458       - infra-wrappers:
459           build-timeout: '{build-timeout}'
460
461     triggers:
462       # 11 AM UTC
463       - timed: 'H 11 * * *'
464       - gerrit-trigger-release-manually:
465           server: '{server-name}'
466           project: '{project}'
467           branch: '{branch}'
468
469     builders:
470       - provide-maven-settings:
471           global-settings-file: 'global-settings'
472           settings-file: '{mvn-settings}'
473
474       - inject:
475           properties-file: version.properties
476       - maven-target:
477           maven-version: '{maven-version}'
478           goals: 'versions:set versions:update-child-modules versions:commit -B'
479           properties:
480             - 'newVersion=${{release_version}}'
481           settings: '{mvn-settings}'
482           settings-type: cfp
483           global-settings: 'global-settings'
484           global-settings-type: cfp
485
486       - maven-target:
487           maven-version: '{maven-version}'
488           goals: 'clean deploy -P {mvn-profile} -B
489             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
490           properties:
491             - '{maven-deploy-properties}'
492           settings: '{mvn-settings}'
493           settings-type: cfp
494           global-settings: 'global-settings'
495           global-settings-type: cfp
496
497     publishers:
498       - infra-shiplogs:
499           maven-version: '{maven-version}'
500
501
502 - job-template:
503     # Job template for Java daily release jobs with POM not at the root
504     #
505     # The purpose of this job template is to run:
506     # 1. maven clean deploy with Sonar scans
507     #
508     # This job supports subprojects.
509     #
510     # Required Variables:
511     #     branch:    git branch (eg. stable/lithium or master)
512     #     pom:       name/location of the pom.xml file relative to the workspace
513
514     name: '{project-name}-{stream}-{subproject}-release-java-daily'
515
516     project-type: freestyle
517     node: '{build-node}'
518     disabled: '{disabled}'
519     maven-deploy-properties:
520     properties:
521       - infra-properties:
522           build-days-to-keep: '{build-days-to-keep}'
523
524     parameters:
525       - infra-parameters:
526           project: '{project}'
527           branch: '{branch}'
528           refspec: 'refs/heads/{branch}'
529           artifacts: '{archive-artifacts}'
530       - maven-exec:
531           maven-version: '{maven-version}'
532
533     scm:
534       - gerrit-trigger-scm:
535           refspec: ''
536           choosing-strategy: 'default'
537           submodule-recursive: '{submodule-recursive}'
538
539     wrappers:
540       - infra-wrappers:
541           build-timeout: '{build-timeout}'
542
543     triggers:
544       # 11 AM UTC
545       - timed: 'H 11 * * *'
546       - gerrit-trigger-release-manually:
547           server: '{server-name}'
548           project: '{project}'
549           branch: '{branch}'
550
551     builders:
552       - provide-maven-settings:
553           global-settings-file: 'global-settings'
554           settings-file: '{mvn-settings}'
555
556       - maven-target:
557           maven-version: '{maven-version}'
558           pom: '{pom}'
559           goals: 'clean deploy -B
560             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
561           properties:
562             - '{maven-deploy-properties}'
563           java-opts:
564             - '-Xmx4096m -XX:MaxPermSize=512m'
565           settings: '{mvn-settings}'
566           settings-type: cfp
567           global-settings: 'global-settings'
568           global-settings-type: cfp
569
570     publishers:
571       - infra-shiplogs:
572           maven-version: '{maven-version}'
573
574 - job-template:
575     # Job template for Java daily release jobs with POM not at the root
576     #
577     # The purpose of this job template is to run:
578     # 1. maven set versions
579     # 2. maven clean deploy with Sonar scans
580     #
581     # This job supports subprojects.
582     #
583     # Required Variables:
584     #     branch:    git branch (eg. stable/lithium or master)
585     #     pom:       name/location of the pom.xml file relative to the workspace
586
587     name: '{project-name}-{stream}-{subproject}-release-version-java-daily'
588
589     project-type: freestyle
590     node: '{build-node}'
591     disabled: '{disabled}'
592     maven-deploy-properties:
593     properties:
594       - infra-properties:
595           build-days-to-keep: '{build-days-to-keep}'
596
597     parameters:
598       - infra-parameters:
599           project: '{project}'
600           branch: '{branch}'
601           refspec: 'refs/heads/{branch}'
602           artifacts: '{archive-artifacts}'
603       - maven-exec:
604           maven-version: '{maven-version}'
605
606     scm:
607       - gerrit-trigger-scm:
608           refspec: ''
609           choosing-strategy: 'default'
610           submodule-recursive: '{submodule-recursive}'
611
612     wrappers:
613       - infra-wrappers:
614           build-timeout: '{build-timeout}'
615
616     triggers:
617       # 11 AM UTC
618       - timed: 'H 11 * * *'
619       - gerrit-trigger-release-manually:
620           server: '{server-name}'
621           project: '{project}'
622           branch: '{branch}'
623
624     builders:
625       - provide-maven-settings:
626           global-settings-file: 'global-settings'
627           settings-file: '{mvn-settings}'
628
629       - inject:
630           properties-file: version.properties
631       - maven-target:
632           maven-version: '{maven-version}'
633           pom: '{pom}'
634           goals: 'versions:set versions:update-child-modules versions:commit -B'
635           properties:
636             - 'newVersion=${{release_version}}'
637           settings: '{mvn-settings}'
638           settings-type: cfp
639           global-settings: 'global-settings'
640           global-settings-type: cfp
641
642       - maven-target:
643           maven-version: '{maven-version}'
644           pom: '{pom}'
645           goals: 'clean deploy -B
646             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
647           properties:
648             - '{maven-deploy-properties}'
649           settings: '{mvn-settings}'
650           settings-type: cfp
651           global-settings: 'global-settings'
652           global-settings-type: cfp
653
654     publishers:
655       - infra-shiplogs:
656           maven-version: '{maven-version}'
657
658
659 - job-template:
660     # Job template for Java merge jobs
661     #
662     # The purpose of this job template is to run:
663     # 1. maven clean deploy
664     #
665     # Required Variables:
666     #     branch:    git branch (eg. stable/lithium or master)
667
668     name: '{project-name}-{stream}-merge-java'
669
670     project-type: freestyle
671     node: '{build-node}'
672
673     properties:
674       - infra-properties:
675           build-days-to-keep: '{build-days-to-keep}'
676
677     parameters:
678       - infra-parameters:
679           project: '{project}'
680           branch: '{branch}'
681           refspec: 'refs/heads/{branch}'
682           artifacts: '{archive-artifacts}'
683       - maven-exec:
684           maven-version: '{maven-version}'
685
686     scm:
687       - gerrit-trigger-scm:
688           refspec: ''
689           choosing-strategy: 'default'
690           submodule-recursive: '{submodule-recursive}'
691
692     wrappers:
693       - infra-wrappers:
694           build-timeout: '{build-timeout}'
695
696     triggers:
697       - gerrit-trigger-patch-merged:
698           server: '{server-name}'
699           project: '{project}'
700           branch: '{branch}'
701           files: '**'
702
703     builders:
704       - provide-maven-settings:
705           global-settings-file: 'global-settings'
706           settings-file: '{mvn-settings}'
707       - maven-target:
708           maven-version: '{maven-version}'
709           goals: 'clean deploy -B
710             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
711           settings: '{mvn-settings}'
712           settings-type: cfp
713           global-settings: 'global-settings'
714           global-settings-type: cfp
715
716     publishers:
717       - infra-shiplogs:
718           maven-version: '{maven-version}'
719
720 - job-template:
721     # Job template for Java merge jobs based on
722     #   '{project-name}-{stream}-merge-java'
723     # The purpose of this job template is to run:
724     # 1. maven clean deploy
725     #
726     # This project supports maven properties.
727     #
728     # Required Variables:
729     #     branch:    git branch (eg. stable/lithium or master)
730     #     maven-properties: properties passed to maven
731
732     name: '{project-name}-{stream}-merge-properties-java'
733
734     project-type: freestyle
735     node: '{build-node}'
736
737     properties:
738       - infra-properties:
739           build-days-to-keep: '{build-days-to-keep}'
740
741     parameters:
742       - infra-parameters:
743           project: '{project}'
744           branch: '{branch}'
745           refspec: 'refs/heads/{branch}'
746           artifacts: '{archive-artifacts}'
747       - maven-exec:
748           maven-version: '{maven-version}'
749
750     scm:
751       - gerrit-trigger-scm:
752           refspec: ''
753           choosing-strategy: 'default'
754           submodule-recursive: '{submodule-recursive}'
755
756     wrappers:
757       - infra-wrappers:
758           build-timeout: '{build-timeout}'
759
760     triggers:
761       - gerrit-trigger-patch-merged:
762           server: '{server-name}'
763           project: '{project}'
764           branch: '{branch}'
765           files: '**'
766
767     builders:
768       - provide-maven-settings:
769           global-settings-file: 'global-settings'
770           settings-file: '{mvn-settings}'
771       - maven-target:
772           maven-version: '{maven-version}'
773           goals: 'clean deploy -B
774             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
775           settings: '{mvn-settings}'
776           settings-type: cfp
777           global-settings: 'global-settings'
778           global-settings-type: cfp
779           properties: '{obj:mvn_properties}'
780
781     publishers:
782       - infra-shiplogs:
783           maven-version: '{maven-version}'
784
785 - job-template:
786     # Job template for Java merge jobs that takes a maven template
787     #
788     # The purpose of this job template is to run:
789     # 1. maven clean deploy -P {mvn-profile}
790     #
791     # Required Variables:
792     #     branch:    git branch (eg. stable/lithium or master)
793
794     name: '{project-name}-{stream}-merge-profile-java'
795
796     project-type: freestyle
797     node: '{build-node}'
798
799     properties:
800       - infra-properties:
801           build-days-to-keep: '{build-days-to-keep}'
802
803     parameters:
804       - infra-parameters:
805           project: '{project}'
806           branch: '{branch}'
807           refspec: 'refs/heads/{branch}'
808           artifacts: '{archive-artifacts}'
809       - maven-exec:
810           maven-version: '{maven-version}'
811
812     scm:
813       - gerrit-trigger-scm:
814           refspec: ''
815           choosing-strategy: 'default'
816           submodule-recursive: '{submodule-recursive}'
817
818     wrappers:
819       - infra-wrappers:
820           build-timeout: '{build-timeout}'
821
822     triggers:
823       - gerrit-trigger-patch-merged:
824           server: '{server-name}'
825           project: '{project}'
826           branch: '{branch}'
827           files: '{files}'
828
829     builders:
830       - provide-maven-settings:
831           global-settings-file: 'global-settings'
832           settings-file: '{mvn-settings}'
833
834       - docker-login
835
836       - maven-target:
837           maven-version: '{maven-version}'
838           goals: 'clean deploy -P {mvn-profile} -B
839             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
840           settings: '{mvn-settings}'
841           settings-type: cfp
842           global-settings: 'global-settings'
843           global-settings-type: cfp
844           properties:
845             - docker.pull.registry=nexus3.onap.org:10001
846             - docker.push.registry=nexus3.onap.org:10003
847
848     publishers:
849       - infra-shiplogs:
850           maven-version: '{maven-version}'
851
852 - job-template:
853     # Job template for Java merge jobs with POM not at the root
854     #
855     # The purpose of this job template is to run:
856     # 1. maven clean deploy
857     #
858     # This job supports subprojects.
859     #
860     # Required Variables:
861     #     branch:    git branch (eg. stable/lithium or master)
862     #     pom:       name/location of the pom.xml file relative to the workspace
863     #     pattern:   ant file-path pattern relative to the workspace used to
864     #                trigger the job
865
866     name: '{project-name}-{stream}-{subproject}-merge-java'
867
868     project-type: freestyle
869     node: '{build-node}'
870
871     properties:
872       - infra-properties:
873           build-days-to-keep: '{build-days-to-keep}'
874
875     parameters:
876       - infra-parameters:
877           project: '{project}'
878           branch: '{branch}'
879           refspec: 'refs/heads/{branch}'
880           artifacts: '{archive-artifacts}'
881       - maven-exec:
882           maven-version: '{maven-version}'
883
884     scm:
885       - gerrit-trigger-scm:
886           refspec: ''
887           choosing-strategy: 'default'
888           submodule-recursive: '{submodule-recursive}'
889
890     wrappers:
891       - infra-wrappers:
892           build-timeout: '{build-timeout}'
893
894     triggers:
895       - gerrit-trigger-patch-merged:
896           server: '{server-name}'
897           project: '{project}'
898           branch: '{branch}'
899           files: '{pattern}'
900
901     builders:
902       - provide-maven-settings:
903           global-settings-file: 'global-settings'
904           settings-file: '{mvn-settings}'
905       - maven-target:
906           maven-version: '{maven-version}'
907           pom: '{pom}'
908           goals: 'clean deploy -B
909             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
910           settings: '{mvn-settings}'
911           settings-type: cfp
912           global-settings: 'global-settings'
913           global-settings-type: cfp
914
915     publishers:
916       - infra-shiplogs:
917           maven-version: '{maven-version}'
918
919 - job-template:
920     # Job template for Docker daily jobs
921     #
922     # The purpose of this job template is to run:
923     # 1. login to the docker registry
924     # 2. docker push
925     #
926     # Required Variables:
927     #     branch:    git branch (eg. stable/lithium or master)
928
929     name: '{project-name}-{stream}-docker-java-daily'
930     id: '{project-name}-{stream}-docker-java-daily'
931     project-type: freestyle
932     node: 'ubuntu1604-docker-8c-8g'
933     disabled: '{disabled}'
934     properties:
935       - infra-properties:
936           build-days-to-keep: '{build-days-to-keep}'
937
938     parameters:
939       - infra-parameters:
940           project: '{project}'
941           branch: '{branch}'
942           refspec: 'refs/heads/{branch}'
943           artifacts: '{archive-artifacts}'
944       - maven-exec:
945           maven-version: '{maven-version}'
946       - maven-params:
947           mvn-params: '{mvn-params}'
948
949     scm:
950       - gerrit-trigger-scm:
951           refspec: ''
952           choosing-strategy: 'default'
953           submodule-recursive: '{submodule-recursive}'
954
955     wrappers:
956       - infra-wrappers:
957           build-timeout: '{build-timeout}'
958
959     triggers:
960       # 12 AM UTC
961       - timed: 'H 12 * * *'
962       - gerrit-trigger-release-manually:
963           server: '{server-name}'
964           project: '{project}'
965           branch: '{branch}'
966
967     builders:
968
969       - provide-maven-settings:
970           global-settings-file: 'global-settings'
971           settings-file: '{mvn-settings}'
972
973       - docker-login
974
975       - maven-docker-push-daily:
976           maven-version: '{maven-version}'
977           mvn-settings: '{mvn-settings}'
978           pom: '{docker-pom}'
979           # use default as mvn-profile if profile is not needed
980           mvn-profile: '{mvn-profile}'
981           mvn-params: '{mvn-params}'
982
983     publishers:
984       - infra-shiplogs:
985           maven-version: '{maven-version}'
986
987 - job-template:
988     # Job template for Docker daily jobs
989     #
990     # The purpose of this job template is to run:
991     # 1. login to the docker registry
992     # 2. docker push
993     #
994     # Required Variables:
995     #     branch:    git branch (eg. stable/lithium or master)
996
997     name: '{project-name}-{stream}-docker-java-daily'
998     id: docker-java-daily
999     project-type: freestyle
1000     node: '{build-node}'
1001     disabled: '{disabled}'
1002     properties:
1003       - infra-properties:
1004           build-days-to-keep: '{build-days-to-keep}'
1005
1006     parameters:
1007       - infra-parameters:
1008           project: '{project}'
1009           branch: '{branch}'
1010           refspec: 'refs/heads/{branch}'
1011           artifacts: '{archive-artifacts}'
1012       - maven-exec:
1013           maven-version: '{maven-version}'
1014       - maven-params:
1015           mvn-params: '{mvn-params}'
1016
1017     scm:
1018       - gerrit-trigger-scm:
1019           refspec: ''
1020           choosing-strategy: 'default'
1021           submodule-recursive: '{submodule-recursive}'
1022
1023     wrappers:
1024       - infra-wrappers-docker-build:
1025           build-timeout: '{build-timeout}'
1026
1027     triggers:
1028       # 12 AM UTC
1029       - timed: 'H 12 * * *'
1030       - gerrit-trigger-release-manually:
1031           server: '{server-name}'
1032           project: '{project}'
1033           branch: '{branch}'
1034
1035     builders:
1036
1037       - provide-maven-settings:
1038           global-settings-file: 'global-settings'
1039           settings-file: '{mvn-settings}'
1040
1041       - docker-login
1042
1043       - maven-docker-push-daily:
1044           maven-version: '{maven-version}'
1045           mvn-settings: '{mvn-settings}'
1046           pom: '{docker-pom}'
1047           # use default as mvn-profile if profile is not needed
1048           mvn-profile: '{mvn-profile}'
1049           mvn-params: '{mvn-params}'
1050
1051     publishers:
1052       - infra-shiplogs:
1053           maven-version: '{maven-version}'
1054
1055
1056 - job-template:
1057     # Job template for building & pushing docker images
1058     #
1059     # The purpose of this job template is to run:
1060     #  1. login to the docker registry
1061     #  2. maven clean deploy on the specified profile
1062     #
1063     # This job uses a conditional regex match step to set versions.
1064     # This template supports maven properties.
1065     #
1066     # Required Variables:
1067     #     pom:       name/location of the pom.xml file relative to the workspace
1068     #     profile:   the docker profile defined in the pom
1069     #     maven-properties: properties passed to maven
1070
1071     name: '{project-name}-{stream}-docker-java-properties-daily'
1072     project-type: freestyle
1073     node: 'ubuntu1604-docker-8c-8g'
1074     disabled: '{disabled}'
1075     properties:
1076       - infra-properties:
1077           build-days-to-keep: '{build-days-to-keep}'
1078     parameters:
1079       - infra-parameters:
1080           project: '{project}'
1081           branch: '{branch}'
1082           refspec: 'refs/heads/{branch}'
1083           artifacts: '{archive-artifacts}'
1084       - maven-exec:
1085           maven-version: '{maven-version}'
1086       - maven-params:
1087           mvn-params: '{mvn-params}'
1088     scm:
1089       - gerrit-trigger-scm:
1090           refspec: ''
1091           choosing-strategy: 'default'
1092           submodule-recursive: '{submodule-recursive}'
1093     wrappers:
1094       - infra-wrappers:
1095           build-timeout: '{build-timeout}'
1096     triggers:
1097       # 12 AM UTC
1098       - timed: 'H 12 * * *'
1099       - gerrit-trigger-release-manually:
1100           server: '{server-name}'
1101           project: '{project}'
1102           branch: '{branch}'
1103     builders:
1104       - provide-maven-settings:
1105           global-settings-file: 'global-settings'
1106           settings-file: '{mvn-settings}'
1107       - conditional-step:
1108           condition-kind: regex-match
1109           regex: DoSetVersion
1110           label: '{setVersion}'
1111           steps:
1112             - inject:
1113                 properties-file: version.properties
1114             - maven-target:
1115                 maven-version: '{maven-version}'
1116                 goals: 'versions:set versions:update-child-modules versions:commit -B'
1117                 properties:
1118                   - 'newVersion=${{release_version}}'
1119                 settings: '{mvn-settings}'
1120                 settings-type: cfp
1121                 global-settings: 'global-settings'
1122                 global-settings-type: cfp
1123       - docker-login
1124       - maven-docker-push-daily:
1125           maven-version: '{maven-version}'
1126           mvn-settings: '{mvn-settings}'
1127           pom: '{docker-pom}'
1128           properties: '{maven-properties}'
1129           # use default as mvn-profile if profile is not needed
1130           mvn-profile: '{mvn-profile}'
1131           mvn-params: '{mvn-params}'
1132     publishers:
1133       - infra-shiplogs:
1134           maven-version: '{maven-version}'
1135
1136 - job-template:
1137     # Job template for building & pushing docker images
1138     #
1139     # The purpose of this job template is to run:
1140     #  1. login to the docker registry
1141     #  2. run a specified shell builder
1142     #
1143     # Required Variables:
1144     #     pom:       name/location of the pom.xml file relative to the workspace
1145     #     maven-properties: properties passed to maven
1146
1147     name: '{project-name}-{stream}-docker-java-shell-daily'
1148     project-type: freestyle
1149     node: 'ubuntu1604-docker-8c-8g'
1150     disabled: '{disabled}'
1151     properties:
1152       - infra-properties:
1153           build-days-to-keep: '{build-days-to-keep}'
1154
1155     parameters:
1156       - infra-parameters:
1157           project: '{project}'
1158           branch: '{branch}'
1159           refspec: 'refs/heads/{branch}'
1160           artifacts: '{archive-artifacts}'
1161       - maven-exec:
1162           maven-version: '{maven-version}'
1163
1164     scm:
1165       - gerrit-trigger-scm:
1166           refspec: ''
1167           choosing-strategy: 'default'
1168           submodule-recursive: '{submodule-recursive}'
1169
1170     wrappers:
1171       - infra-wrappers:
1172           build-timeout: '{build-timeout}'
1173
1174     triggers:
1175       # 12 AM UTC
1176       - timed: 'H 12 * * *'
1177       - gerrit-trigger-release-manually:
1178           server: '{server-name}'
1179           project: '{project}'
1180           branch: '{branch}'
1181
1182     builders:
1183
1184       - provide-maven-settings:
1185           global-settings-file: 'global-settings'
1186           settings-file: '{mvn-settings}'
1187
1188       - docker-login
1189
1190       - maven-target:
1191           maven-version: '{maven-version}'
1192           goals: '{mvn-goals}'
1193           settings: '{mvn-settings}'
1194           settings-type: cfp
1195           global-settings: 'global-settings'
1196           global-settings-type: cfp
1197
1198       - shell: '{script}'
1199
1200     publishers:
1201       - infra-shiplogs:
1202           maven-version: '{maven-version}'
1203
1204 - job-template:
1205     # Job template for building & pushing docker images
1206     #
1207     # The purpose of this job template is to run:
1208     #  1. login to the docker registry
1209     #  2. inject a version.properties file and set versions
1210     #  3. run a specified shell builder
1211     #
1212     # Required Variables:
1213     #     pom:       name/location of the pom.xml file relative to the workspace
1214     #     maven-properties: properties passed to maven
1215
1216     name: '{project-name}-{stream}-docker-java-version-shell-daily'
1217     project-type: freestyle
1218     node: 'ubuntu1604-docker-8c-8g'
1219     disabled: '{disabled}'
1220     properties:
1221       - infra-properties:
1222           build-days-to-keep: '{build-days-to-keep}'
1223
1224     parameters:
1225       - infra-parameters:
1226           project: '{project}'
1227           branch: '{branch}'
1228           refspec: 'refs/heads/{branch}'
1229           artifacts: '{archive-artifacts}'
1230       - maven-exec:
1231           maven-version: '{maven-version}'
1232
1233     scm:
1234       - gerrit-trigger-scm:
1235           refspec: ''
1236           choosing-strategy: 'default'
1237           submodule-recursive: '{submodule-recursive}'
1238
1239     wrappers:
1240       - infra-wrappers:
1241           build-timeout: '{build-timeout}'
1242
1243     triggers:
1244       # 12 AM UTC
1245       - timed: 'H 12 * * *'
1246       - gerrit-trigger-release-manually:
1247           server: '{server-name}'
1248           project: '{project}'
1249           branch: '{branch}'
1250
1251     builders:
1252
1253       - provide-maven-settings:
1254           global-settings-file: 'global-settings'
1255           settings-file: '{mvn-settings}'
1256
1257       - inject:
1258           properties-file: version.properties
1259
1260       - maven-target:
1261           maven-version: '{maven-version}'
1262           goals: 'versions:set versions:update-child-modules versions:commit -B'
1263           properties:
1264             - 'newVersion=${{release_version}}'
1265           settings: '{mvn-settings}'
1266           settings-type: cfp
1267           global-settings: 'global-settings'
1268           global-settings-type: cfp
1269
1270       - docker-login
1271
1272       - maven-target:
1273           maven-version: '{maven-version}'
1274           goals: '{mvn-goals}'
1275           settings: '{mvn-settings}'
1276           settings-type: cfp
1277           global-settings: 'global-settings'
1278           global-settings-type: cfp
1279
1280       - shell: '{script}'
1281
1282     publishers:
1283       - infra-shiplogs:
1284           maven-version: '{maven-version}'
1285
1286 - job-template:
1287     # Job template for building & pushing docker images
1288     #
1289     # The purpose of this job template is to run:
1290     #  1. login to the docker registry
1291     #  2. inject a version.properties file and set versions
1292     #  3. run a specified shell builder
1293     #
1294     # This template supports subprojects.
1295     #
1296     # Required Variables:
1297     #     pom:       name/location of the pom.xml file relative to the workspace
1298     #     maven-properties: properties passed to maven
1299
1300     name: '{project-name}-{stream}-{subproject}-docker-java-version-shell-daily'
1301     project-type: freestyle
1302     node: 'ubuntu1604-docker-8c-8g'
1303     disabled: '{disabled}'
1304     properties:
1305       - infra-properties:
1306           build-days-to-keep: '{build-days-to-keep}'
1307
1308     parameters:
1309       - infra-parameters:
1310           project: '{project}'
1311           branch: '{branch}'
1312           refspec: 'refs/heads/{branch}'
1313           artifacts: '{archive-artifacts}'
1314       - maven-exec:
1315           maven-version: '{maven-version}'
1316
1317     scm:
1318       - gerrit-trigger-scm:
1319           refspec: ''
1320           choosing-strategy: 'default'
1321           submodule-recursive: '{submodule-recursive}'
1322
1323     wrappers:
1324       - infra-wrappers:
1325           build-timeout: '{build-timeout}'
1326
1327     triggers:
1328       # 12 AM UTC
1329       - timed: 'H 12 * * *'
1330       - gerrit-trigger-release-manually:
1331           server: '{server-name}'
1332           project: '{project}'
1333           branch: '{branch}'
1334
1335     builders:
1336
1337       - provide-maven-settings:
1338           global-settings-file: 'global-settings'
1339           settings-file: '{mvn-settings}'
1340
1341       - inject:
1342           properties-file: version.properties
1343
1344       - maven-target:
1345           maven-version: '{maven-version}'
1346           pom: '{pom}'
1347           goals: 'versions:set versions:update-child-modules versions:commit -B'
1348           properties:
1349             - 'newVersion=${{release_version}}'
1350           settings: '{mvn-settings}'
1351           settings-type: cfp
1352           global-settings: 'global-settings'
1353           global-settings-type: cfp
1354
1355       - docker-login
1356
1357       - maven-target:
1358           maven-version: '{maven-version}'
1359           pom: '{pom}'
1360           goals: '{mvn-goals}'
1361           settings: '{mvn-settings}'
1362           settings-type: cfp
1363           global-settings: 'global-settings'
1364           global-settings-type: cfp
1365
1366       - shell: '{script}'
1367
1368     publishers:
1369       - infra-shiplogs:
1370           maven-version: '{maven-version}'
1371
1372 - job-template:
1373     # Job template for building & pushing docker images
1374     #
1375     # The purpose of this job template is to run:
1376     #  1. login to the docker registry
1377     #  2. inject a version.properties file and set versions
1378     #  3. run a docker push
1379     #
1380     # Required Variables:
1381     #     pom:       name/location of the pom.xml file relative to the workspace
1382     #     profile:   the docker profile defined in the pom
1383     #     maven-properties: properties passed to maven
1384
1385     name: '{project-name}-{stream}-docker-version-java-daily'
1386     id: '{project-name}-{stream}-docker-version-java-daily'
1387     project-type: freestyle
1388     node: 'ubuntu1604-docker-8c-8g'
1389     disabled: '{disabled}'
1390     properties:
1391       - infra-properties:
1392           build-days-to-keep: '{build-days-to-keep}'
1393
1394     parameters:
1395       - infra-parameters:
1396           project: '{project}'
1397           branch: '{branch}'
1398           refspec: 'refs/heads/{branch}'
1399           artifacts: '{archive-artifacts}'
1400       - maven-exec:
1401           maven-version: '{maven-version}'
1402       - maven-params:
1403           mvn-params: '{mvn-params}'
1404
1405     scm:
1406       - gerrit-trigger-scm:
1407           refspec: ''
1408           choosing-strategy: 'default'
1409           submodule-recursive: '{submodule-recursive}'
1410
1411     wrappers:
1412       - infra-wrappers:
1413           build-timeout: '{build-timeout}'
1414
1415     triggers:
1416       # 12 AM UTC
1417       - timed: 'H 12 * * *'
1418       - gerrit-trigger-release-manually:
1419           server: '{server-name}'
1420           project: '{project}'
1421           branch: '{branch}'
1422
1423     builders:
1424
1425       - provide-maven-settings:
1426           global-settings-file: 'global-settings'
1427           settings-file: '{mvn-settings}'
1428
1429       - inject:
1430           properties-file: version.properties
1431
1432       - maven-target:
1433           maven-version: '{maven-version}'
1434           goals: 'versions:set versions:update-child-modules versions:commit -B'
1435           properties:
1436             - 'newVersion=${{release_version}}'
1437           settings: '{mvn-settings}'
1438           settings-type: cfp
1439           global-settings: 'global-settings'
1440           global-settings-type: cfp
1441
1442       - docker-login
1443
1444       - maven-docker-push-daily:
1445           maven-version: '{maven-version}'
1446           mvn-settings: '{mvn-settings}'
1447           pom: '{docker-pom}'
1448           # use default as mvn-profile if profile is not needed
1449           mvn-profile: '{mvn-profile}'
1450           mvn-params: '{mvn-params}'
1451
1452     publishers:
1453       - infra-shiplogs:
1454           maven-version: '{maven-version}'
1455
1456 - job-template:
1457     # Job template for building & pushing docker images
1458     #
1459     # The purpose of this job template is to run:
1460     #  1. login to the docker registry
1461     #  2. inject a version.properties file and set versions
1462     #  3. run a docker push
1463     #
1464     # Required Variables:
1465     #     pom:       name/location of the pom.xml file relative to the workspace
1466     #     profile:   the docker profile defined in the pom
1467     #     maven-properties: properties passed to maven
1468
1469     name: '{project-name}-{stream}-docker-version-java-daily'
1470     id: 'docker-version-java-daily'
1471     project-type: freestyle
1472     node: '{build-node}'
1473     disabled: '{disabled}'
1474     properties:
1475       - infra-properties:
1476           build-days-to-keep: '{build-days-to-keep}'
1477
1478     parameters:
1479       - infra-parameters:
1480           project: '{project}'
1481           branch: '{branch}'
1482           refspec: 'refs/heads/{branch}'
1483           artifacts: '{archive-artifacts}'
1484       - maven-exec:
1485           maven-version: '{maven-version}'
1486       - maven-params:
1487           mvn-params: '{mvn-params}'
1488
1489     scm:
1490       - gerrit-trigger-scm:
1491           refspec: ''
1492           choosing-strategy: 'default'
1493           submodule-recursive: '{submodule-recursive}'
1494
1495     wrappers:
1496       - infra-wrappers-docker-build:
1497           build-timeout: '{build-timeout}'
1498
1499     triggers:
1500       # 12 AM UTC
1501       - timed: 'H 12 * * *'
1502       - gerrit-trigger-release-manually:
1503           server: '{server-name}'
1504           project: '{project}'
1505           branch: '{branch}'
1506
1507     builders:
1508
1509       - provide-maven-settings:
1510           global-settings-file: 'global-settings'
1511           settings-file: '{mvn-settings}'
1512
1513       - inject:
1514           properties-file: version.properties
1515
1516       - maven-target:
1517           maven-version: '{maven-version}'
1518           goals: 'versions:set versions:update-child-modules versions:commit -B'
1519           properties:
1520             - 'newVersion=${{release_version}}'
1521           settings: '{mvn-settings}'
1522           settings-type: cfp
1523           global-settings: 'global-settings'
1524           global-settings-type: cfp
1525
1526       - docker-login
1527
1528       - maven-docker-push-daily:
1529           maven-version: '{maven-version}'
1530           mvn-settings: '{mvn-settings}'
1531           pom: '{docker-pom}'
1532           # use default as mvn-profile if profile is not needed
1533           mvn-profile: '{mvn-profile}'
1534           mvn-params: '{mvn-params}'
1535
1536     publishers:
1537       - infra-shiplogs:
1538           maven-version: '{maven-version}'
1539
1540 - job-template:
1541     # Job template for building & pushing docker images
1542     #
1543     # The purpose of this job template is to run:
1544     #  1. inject a version.properties file and set versions
1545     #  2. login to the docker registry
1546     #  3. run a docker push
1547     #
1548     # This job supports subprojects.
1549     #
1550     # Required Variables:
1551     #     pom:       name/location of the pom.xml file relative to the workspace
1552     #     maven-properties: properties passed to maven
1553
1554     name: '{project-name}-{stream}-{subproject}-docker-version-java-daily'
1555     project-type: freestyle
1556     node: 'ubuntu1604-docker-8c-8g'
1557     disabled: '{disabled}'
1558     properties:
1559       - infra-properties:
1560           build-days-to-keep: '{build-days-to-keep}'
1561
1562     parameters:
1563       - infra-parameters:
1564           project: '{project}'
1565           branch: '{branch}'
1566           refspec: 'refs/heads/{branch}'
1567           artifacts: '{archive-artifacts}'
1568       - maven-exec:
1569           maven-version: '{maven-version}'
1570       - maven-params:
1571           mvn-params: '{mvn-params}'
1572
1573     scm:
1574       - gerrit-trigger-scm:
1575           refspec: ''
1576           choosing-strategy: 'default'
1577           submodule-recursive: '{submodule-recursive}'
1578
1579     wrappers:
1580       - infra-wrappers:
1581           build-timeout: '{build-timeout}'
1582
1583     triggers:
1584       # 12 AM UTC
1585       - timed: 'H 12 * * *'
1586       - gerrit-trigger-release-manually:
1587           server: '{server-name}'
1588           project: '{project}'
1589           branch: '{branch}'
1590
1591     builders:
1592
1593       - provide-maven-settings:
1594           global-settings-file: 'global-settings'
1595           settings-file: '{mvn-settings}'
1596
1597       - inject:
1598           properties-file: version.properties
1599
1600       - maven-target:
1601           maven-version: '{maven-version}'
1602           pom: '{pom}'
1603           goals: 'versions:set versions:update-child-modules versions:commit -B'
1604           properties:
1605             - 'newVersion=${{release_version}}'
1606           settings: '{mvn-settings}'
1607           settings-type: cfp
1608           global-settings: 'global-settings'
1609           global-settings-type: cfp
1610
1611       - docker-login
1612
1613       - maven-docker-push-daily:
1614           maven-version: '{maven-version}'
1615           pom: '{pom}'
1616           mvn-settings: '{mvn-settings}'
1617           pom: '{docker-pom}'
1618           # use default as mvn-profile if profile is not needed
1619           mvn-profile: '{mvn-profile}'
1620           mvn-params: '{mvn-params}'
1621
1622     publishers:
1623       - infra-shiplogs:
1624           maven-version: '{maven-version}'
1625
1626 - job-template:
1627     # Job template for building & pushing docker images for AAI specific repos
1628     #
1629     # The purpose of this job template is to run:
1630     #  1. login to the docker registry
1631     #  2. run maven goals
1632     #  3. run include-docker-push.sh
1633     #
1634     # Required Variables:
1635     #     pom:       name/location of the pom.xml file relative to the workspace
1636     #     maven-properties: properties passed to maven
1637
1638     name: '{project-name}-{stream}-aai-docker-java-daily'
1639     project-type: freestyle
1640     node: 'ubuntu1604-docker-8c-8g'
1641     docker-image-name: ''
1642     disabled: '{disabled}'
1643     properties:
1644       - infra-properties:
1645           build-days-to-keep: '{build-days-to-keep}'
1646
1647     parameters:
1648       - infra-parameters:
1649           project: '{project}'
1650           branch: '{branch}'
1651           refspec: 'refs/heads/{branch}'
1652           artifacts: '{archive-artifacts}'
1653       - maven-exec:
1654           maven-version: '{maven-version}'
1655       - docker-image-name:
1656           docker-image-name: '{docker-image-name}'
1657
1658     scm:
1659       - gerrit-trigger-scm:
1660           refspec: ''
1661           choosing-strategy: 'default'
1662           submodule-recursive: '{submodule-recursive}'
1663
1664     wrappers:
1665       - infra-wrappers:
1666           build-timeout: '{build-timeout}'
1667
1668     triggers:
1669       # 12 AM UTC
1670       - timed: 'H 12 * * *'
1671       - gerrit-trigger-release-manually:
1672           server: '{server-name}'
1673           project: '{project}'
1674           branch: '{branch}'
1675
1676     builders:
1677
1678       - provide-maven-settings:
1679           global-settings-file: 'global-settings'
1680           settings-file: '{mvn-settings}'
1681
1682       - docker-login
1683
1684       - maven-target:
1685           maven-version: '{maven-version}'
1686           pom: 'pom.xml'
1687           goals: 'clean install -DskipTests -B
1688             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1689           settings: '{mvn-settings}'
1690           settings-type: cfp
1691           global-settings: 'global-settings'
1692           global-settings-type: cfp
1693
1694       - maven-target:
1695           maven-version: '{maven-version}'
1696           pom: '{pom}'
1697           goals: '{mvn-goals}'
1698           settings: '{mvn-settings}'
1699           settings-type: cfp
1700           global-settings: 'global-settings'
1701           global-settings-type: cfp
1702           properties:
1703             - maven.test.skip=true
1704             - docker.pull.registry=nexus3.onap.org:10001
1705             - docker.push.registry=nexus3.onap.org:10003
1706
1707       - shell: !include-raw-escape: include-docker-push.sh
1708
1709     publishers:
1710       - infra-shiplogs:
1711           maven-version: '{maven-version}'
1712
1713 - job-template:
1714     # Job template for building & pushing docker images for AAI specific repos
1715     #
1716     # The purpose of this job template is to run:
1717     #  1. login to the docker registry
1718     #  2. run maven goals
1719     #  3. run include-docker-push.sh
1720     #
1721     # This job supports subprojects
1722     #
1723     # Required Variables:
1724     #     pom:       name/location of the pom.xml file relative to the workspace
1725     #     maven-properties: properties passed to maven
1726
1727     name: '{project-name}-{stream}-{subproject}-aai-docker-java-daily'
1728     project-type: freestyle
1729     node: 'ubuntu1604-docker-8c-8g'
1730     disabled: '{disabled}'
1731     docker-image-name: ''
1732
1733     properties:
1734       - infra-properties:
1735           build-days-to-keep: '{build-days-to-keep}'
1736
1737     parameters:
1738       - infra-parameters:
1739           project: '{project}'
1740           branch: '{branch}'
1741           refspec: 'refs/heads/{branch}'
1742           artifacts: '{archive-artifacts}'
1743       - maven-exec:
1744           maven-version: '{maven-version}'
1745       - docker-image-name:
1746           docker-image-name: '{docker-image-name}'
1747
1748     scm:
1749       - gerrit-trigger-scm:
1750           refspec: ''
1751           choosing-strategy: 'default'
1752           submodule-recursive: '{submodule-recursive}'
1753
1754     wrappers:
1755       - infra-wrappers:
1756           build-timeout: '{build-timeout}'
1757
1758     triggers:
1759       # 12 AM UTC
1760       - timed: 'H 12 * * *'
1761       - gerrit-trigger-release-manually:
1762           server: '{server-name}'
1763           project: '{project}'
1764           branch: '{branch}'
1765
1766     builders:
1767
1768       - provide-maven-settings:
1769           global-settings-file: 'global-settings'
1770           settings-file: '{mvn-settings}'
1771
1772       - docker-login
1773
1774       - maven-target:
1775           maven-version: '{maven-version}'
1776           pom: 'pom.xml'
1777           goals: 'clean install -DskipTests -B
1778             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1779           settings: '{mvn-settings}'
1780           settings-type: cfp
1781           global-settings: 'global-settings'
1782           global-settings-type: cfp
1783
1784       - maven-target:
1785           maven-version: '{maven-version}'
1786           pom: '{pom}'
1787           goals: '{mvn-goals}'
1788           settings: '{mvn-settings}'
1789           settings-type: cfp
1790           global-settings: 'global-settings'
1791           global-settings-type: cfp
1792           properties:
1793             - maven.test.skip=true
1794             - docker.pull.registry=nexus3.onap.org:10001
1795             - docker.push.registry=nexus3.onap.org:10003
1796
1797       - shell: !include-raw-escape: include-docker-push.sh
1798
1799     publishers:
1800       - infra-shiplogs:
1801           maven-version: '{maven-version}'
1802
1803 - job-template:
1804     # Job template for Java merge jobs for SDC specific repos
1805     #
1806     # The purpose of this job template is to run:
1807     # 1. maven clean deploy
1808     #
1809     # Required Variables:
1810     #     branch:    git branch (eg. stable/lithium or master)
1811
1812     name: '{project-name}-{stream}-sdc-merge-java'
1813
1814     project-type: freestyle
1815     node: 'ubuntu1604-docker-8c-8g'
1816     build-timeout: 120
1817
1818     properties:
1819       - infra-properties:
1820           build-days-to-keep: '{build-days-to-keep}'
1821
1822     parameters:
1823       - infra-parameters:
1824           project: '{project}'
1825           branch: '{branch}'
1826           refspec: 'refs/heads/{branch}'
1827           artifacts: '{archive-artifacts}'
1828       - maven-exec:
1829           maven-version: '{maven-version}'
1830
1831     scm:
1832       - gerrit-trigger-scm:
1833           refspec: ''
1834           choosing-strategy: 'default'
1835           submodule-recursive: '{submodule-recursive}'
1836
1837     wrappers:
1838       - infra-wrappers:
1839           build-timeout: '{build-timeout}'
1840
1841     triggers:
1842       - gerrit-trigger-patch-merged:
1843           server: '{server-name}'
1844           project: '{project}'
1845           branch: '{branch}'
1846           files: '**'
1847
1848     builders:
1849       - provide-maven-settings:
1850           global-settings-file: 'global-settings'
1851           settings-file: '{mvn-settings}'
1852
1853       - docker-login
1854
1855       - maven-docker-push-daily-test:
1856           maven-version: '{maven-version}'
1857           mvn-settings: '{mvn-settings}'
1858           pom: '{docker-pom}'
1859           # use default as mvn-profile if profile is not needed
1860           mvn-profile: '{mvn-profile}'
1861
1862     publishers:
1863       - infra-shiplogs:
1864           maven-version: '{maven-version}'
1865
1866 - job-template:
1867     # Job template for building & pushing docker images for AAI specific repos
1868     #
1869     # The purpose of this job template is to run:
1870     #  1. login to the docker registry
1871     #  2. run maven clean install goals skipping tests
1872     #  3. run maven goals
1873     #
1874     # Required Variables:
1875     #     pom:       name/location of the pom.xml file relative to the workspace
1876     #     maven-properties: properties passed to maven
1877
1878     name: '{project-name}-{stream}-aai-docker-java-version-daily'
1879     project-type: freestyle
1880     node: 'ubuntu1604-docker-8c-8g'
1881     disabled: '{disabled}'
1882     properties:
1883       - infra-properties:
1884           build-days-to-keep: '{build-days-to-keep}'
1885
1886     parameters:
1887       - infra-parameters:
1888           project: '{project}'
1889           branch: '{branch}'
1890           refspec: 'refs/heads/{branch}'
1891           artifacts: '{archive-artifacts}'
1892       - maven-exec:
1893           maven-version: '{maven-version}'
1894
1895     scm:
1896       - gerrit-trigger-scm:
1897           refspec: ''
1898           choosing-strategy: 'default'
1899           submodule-recursive: '{submodule-recursive}'
1900
1901     wrappers:
1902       - infra-wrappers:
1903           build-timeout: '{build-timeout}'
1904
1905     triggers:
1906       # 12 AM UTC
1907       - timed: 'H 12 * * *'
1908       - gerrit-trigger-release-manually:
1909           server: '{server-name}'
1910           project: '{project}'
1911           branch: '{branch}'
1912
1913     builders:
1914
1915       - provide-maven-settings:
1916           global-settings-file: 'global-settings'
1917           settings-file: '{mvn-settings}'
1918
1919       - docker-login
1920
1921       - maven-target:
1922           maven-version: '{maven-version}'
1923           pom: 'pom.xml'
1924           goals: 'clean install -DskipTests -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1925           settings: '{mvn-settings}'
1926           settings-type: cfp
1927           global-settings: 'global-settings'
1928           global-settings-type: cfp
1929
1930       - maven-target:
1931           maven-version: '{maven-version}'
1932           pom: '{pom}'
1933           goals: '{mvn-goals}'
1934           settings: '{mvn-settings}'
1935           settings-type: cfp
1936           global-settings: 'global-settings'
1937           global-settings-type: cfp
1938           properties:
1939             - maven.test.skip=true
1940             - docker.pull.registry=nexus3.onap.org:10001
1941             - docker.push.registry=nexus3.onap.org:10003
1942
1943     publishers:
1944       - infra-shiplogs:
1945           maven-version: '{maven-version}'
1946