Merge "Remove commented out docs toxenv"
[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 -DskipTests=true
7     #
8     # Required Variables:
9     #     branch:    git branch (eg. stable/lithium or master)
10
11     name: '{project-name}-{stream}-verify-java-skip-tests'
12
13     project-type: freestyle
14     concurrent: true
15     node: '{build-node}'
16
17     properties:
18       - infra-properties:
19           build-days-to-keep: '{build-days-to-keep}'
20
21     parameters:
22       - infra-parameters:
23           project: '{project}'
24           branch: '{branch}'
25           refspec: 'refs/heads/{branch}'
26           artifacts: '{archive-artifacts}'
27       - maven-exec:
28           maven-version: '{maven-version}'
29
30     scm:
31       - gerrit-trigger-scm:
32           refspec: '$GERRIT_REFSPEC'
33           choosing-strategy: 'gerrit'
34           submodule-recursive: '{submodule-recursive}'
35
36     wrappers:
37       - infra-wrappers:
38           build-timeout: '{build-timeout}'
39
40     triggers:
41       - gerrit-trigger-patch-submitted:
42           server: '{server-name}'
43           project: '{project}'
44           branch: '{branch}'
45           files: '**'
46
47     builders:
48       - provide-maven-settings:
49           global-settings-file: 'global-settings'
50           settings-file: '{mvn-settings}'
51       - maven-target:
52           maven-version: '{maven-version}'
53           goals: 'clean install -DskipTests=true -B
54             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
55           settings: '{mvn-settings}'
56           settings-type: cfp
57           global-settings: 'global-settings'
58           global-settings-type: cfp
59           maven-opts:
60             - maven.test.skip=true
61
62     publishers:
63       - infra-shiplogs:
64           maven-version: '{maven-version}'
65
66 - job-template:
67     # Job template for Java verify jobs
68     #
69     # The purpose of this job template is to run:
70     # 1. maven clean install
71     #
72     # Required Variables:
73     #     branch:    git branch (eg. stable/lithium or master)
74
75     name: '{project-name}-{stream}-verify-java'
76
77     project-type: freestyle
78     concurrent: true
79     node: '{build-node}'
80
81     properties:
82       - infra-properties:
83           build-days-to-keep: '{build-days-to-keep}'
84
85     parameters:
86       - infra-parameters:
87           project: '{project}'
88           branch: '{branch}'
89           refspec: 'refs/heads/{branch}'
90           artifacts: '{archive-artifacts}'
91       - maven-exec:
92           maven-version: '{maven-version}'
93       - maven-params:
94           mvn-params: '{mvn-params}'
95
96     scm:
97       - gerrit-trigger-scm:
98           refspec: '$GERRIT_REFSPEC'
99           choosing-strategy: 'gerrit'
100           submodule-recursive: '{submodule-recursive}'
101
102     wrappers:
103       - infra-wrappers:
104           build-timeout: '{build-timeout}'
105
106     triggers:
107       - gerrit-trigger-patch-submitted:
108           server: '{server-name}'
109           project: '{project}'
110           branch: '{branch}'
111           files: '**'
112
113     builders:
114       - provide-maven-settings:
115           global-settings-file: 'global-settings'
116           settings-file: '{mvn-settings}'
117       - maven-target:
118           maven-version: '{maven-version}'
119           goals: 'clean install -B
120             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn {mvn-params}'
121           settings: '{mvn-settings}'
122           settings-type: cfp
123           global-settings: 'global-settings'
124           global-settings-type: cfp
125
126     publishers:
127       - infra-shiplogs:
128           maven-version: '{maven-version}'
129
130 - job-template:
131     # Job template for Java verify jobs running checkstyle at the end
132     # When checkstyle will be fully incorporated, it is meant to replace
133     #  '{project-name}-{stream}-verify-java-checkstyle'
134     #
135     # The purpose of this job template is to run:
136     # 1. maven clean install
137     #
138     # This job publishes checkstyle results.
139     #
140     # Required Variables:
141     #     branch:    git branch (eg. stable/lithium or master)
142
143     name: '{project-name}-{stream}-verify-java-checkstyle'
144     project-type: freestyle
145     concurrent: true
146     node: '{build-node}'
147     properties:
148       - infra-properties:
149           build-days-to-keep: '{build-days-to-keep}'
150     parameters:
151       - infra-parameters:
152           project: '{project}'
153           branch: '{branch}'
154           refspec: 'refs/heads/{branch}'
155           artifacts: '{archive-artifacts}'
156       - maven-exec:
157           maven-version: '{maven-version}'
158       - maven-params:
159           mvn-params: '{mvn-params}'
160     scm:
161       - gerrit-trigger-scm:
162           refspec: '$GERRIT_REFSPEC'
163           choosing-strategy: 'gerrit'
164           submodule-recursive: '{submodule-recursive}'
165     wrappers:
166       - infra-wrappers:
167           build-timeout: '{build-timeout}'
168     triggers:
169       - gerrit-trigger-patch-submitted:
170           server: '{server-name}'
171           project: '{project}'
172           branch: '{branch}'
173           files: '**'
174     builders:
175       - provide-maven-settings:
176           global-settings-file: 'global-settings'
177           settings-file: '{mvn-settings}'
178       - maven-target:
179           maven-version: '{maven-version}'
180           goals: 'clean install -B
181             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn {mvn-params}'
182           settings: '{mvn-settings}'
183           settings-type: cfp
184           global-settings: 'global-settings'
185           global-settings-type: cfp
186     publishers:
187       - infra-shiplogs:
188           maven-version: '{maven-version}'
189       - checkstyle-result
190
191 - job-template:
192     # Job template for Java verify jobs that takes a maven template
193     #
194     # The purpose of this job template is to run:
195     # 1. maven clean install -P {mvn-profile}
196     #
197     # Required Variables:
198     #     branch:    git branch (eg. stable/lithium or master)
199
200     name: '{project-name}-{stream}-verify-profile-java'
201
202     project-type: freestyle
203     concurrent: true
204     node: '{build-node}'
205
206     properties:
207       - infra-properties:
208           build-days-to-keep: '{build-days-to-keep}'
209
210     parameters:
211       - infra-parameters:
212           project: '{project}'
213           branch: '{branch}'
214           refspec: 'refs/heads/{branch}'
215           artifacts: '{archive-artifacts}'
216       - maven-exec:
217           maven-version: '{maven-version}'
218
219     scm:
220       - gerrit-trigger-scm:
221           refspec: '$GERRIT_REFSPEC'
222           choosing-strategy: 'gerrit'
223           submodule-recursive: '{submodule-recursive}'
224
225     wrappers:
226       - infra-wrappers:
227           build-timeout: '{build-timeout}'
228
229     triggers:
230       - gerrit-trigger-patch-submitted:
231           server: '{server-name}'
232           project: '{project}'
233           branch: '{branch}'
234           files: '{files}'
235
236     builders:
237       - provide-maven-settings:
238           global-settings-file: 'global-settings'
239           settings-file: '{mvn-settings}'
240       - maven-target:
241           maven-version: '{maven-version}'
242           goals: 'clean install -P {mvn-profile} -B
243             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
244           settings: '{mvn-settings}'
245           settings-type: cfp
246           global-settings: 'global-settings'
247           global-settings-type: cfp
248
249     publishers:
250       - infra-shiplogs:
251           maven-version: '{maven-version}'
252
253 - job-template:
254     # Job template for Java verify jobs with POM not at the root
255     #
256     # The purpose of this job template is to run:
257     # 1. maven clean install
258     #
259     # This job supports subprojects.
260     #
261     # Required Variables:
262     #     branch:    git branch (eg. stable/lithium or master)
263     #     pom:       name/location of the pom.xml file relative to the workspace
264     #     pattern:   ant file-path pattern relative to the workspace used to
265     #                trigger the job
266
267     name: '{project-name}-{stream}-{subproject}-verify-java'
268
269     project-type: freestyle
270     concurrent: true
271     node: '{build-node}'
272
273     properties:
274       - infra-properties:
275           build-days-to-keep: '{build-days-to-keep}'
276
277     parameters:
278       - infra-parameters:
279           project: '{project}'
280           branch: '{branch}'
281           refspec: 'refs/heads/{branch}'
282           artifacts: '{archive-artifacts}'
283       - maven-exec:
284           maven-version: '{maven-version}'
285
286     scm:
287       - gerrit-trigger-scm:
288           refspec: '$GERRIT_REFSPEC'
289           choosing-strategy: 'gerrit'
290           submodule-recursive: '{submodule-recursive}'
291
292     wrappers:
293       - infra-wrappers:
294           build-timeout: '{build-timeout}'
295
296     triggers:
297       - gerrit-trigger-patch-submitted:
298           server: '{server-name}'
299           project: '{project}'
300           branch: '{branch}'
301           files: '{pattern}'
302
303     builders:
304       - provide-maven-settings:
305           global-settings-file: 'global-settings'
306           settings-file: '{mvn-settings}'
307       - maven-target:
308           maven-version: '{maven-version}'
309           pom: '{pom}'
310           goals: 'clean install -B
311             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
312           settings: '{mvn-settings}'
313           settings-type: cfp
314           global-settings: 'global-settings'
315           global-settings-type: cfp
316
317     publishers:
318       - infra-shiplogs:
319           maven-version: '{maven-version}'
320
321 - job-template:
322     # Job template for Java daily release jobs
323     #
324     # The purpose of this job template is to run:
325     # 1. maven clean deploy with Sonar scans
326     #
327     # Required Variables:
328     #     branch:    git branch (eg. stable/lithium or master)
329
330     name: '{project-name}-{stream}-release-java-daily'
331
332     project-type: freestyle
333     node: '{build-node}'
334     disabled: '{disabled}'
335     maven-deploy-properties:
336     properties:
337       - infra-properties:
338           build-days-to-keep: '{build-days-to-keep}'
339
340     parameters:
341       - infra-parameters:
342           project: '{project}'
343           branch: '{branch}'
344           refspec: 'refs/heads/{branch}'
345           artifacts: '{archive-artifacts}'
346       - maven-exec:
347           maven-version: '{maven-version}'
348
349     scm:
350       - gerrit-trigger-scm:
351           refspec: ''
352           choosing-strategy: 'default'
353           submodule-recursive: '{submodule-recursive}'
354
355     wrappers:
356       - infra-wrappers:
357           build-timeout: '{build-timeout}'
358
359     triggers:
360       # 11 AM UTC
361       - timed: 'H 11 * * *'
362       - gerrit-trigger-release-manually:
363           server: '{server-name}'
364           project: '{project}'
365           branch: '{branch}'
366
367     builders:
368       - provide-maven-settings:
369           global-settings-file: 'global-settings'
370           settings-file: '{mvn-settings}'
371
372       - maven-target:
373           maven-version: '{maven-version}'
374           goals: 'clean deploy -B
375             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
376           properties:
377             - '{maven-deploy-properties}'
378           java-opts:
379             - '-Xmx4096m -XX:MaxPermSize=512m'
380           settings: '{mvn-settings}'
381           settings-type: cfp
382           global-settings: 'global-settings'
383           global-settings-type: cfp
384
385     publishers:
386       - infra-shiplogs:
387           maven-version: '{maven-version}'
388
389 - job-template:
390     # Job template for Java daily release jobs running checkstyle at the end
391     # When checkstyle will be fully incorporated, it is meant to replace
392     #  '{project-name}-{stream}-release-java-daily'
393     #
394     # The purpose of this job template is to run:
395     # 1. maven clean deploy with Sonar scans
396     #
397     # This job publishes checkstyle results.
398     # This job uses a conditional regex match step to set versions.
399     #
400     # Required Variables:
401     #     branch:    git branch (eg. stable/lithium or master)
402
403     name: '{project-name}-{stream}-release-java-daily-checkstyle'
404     project-type: freestyle
405     node: '{build-node}'
406     disabled: '{disabled}'
407     maven-deploy-properties:
408     properties:
409       - infra-properties:
410           build-days-to-keep: '{build-days-to-keep}'
411     parameters:
412       - infra-parameters:
413           project: '{project}'
414           branch: '{branch}'
415           refspec: 'refs/heads/{branch}'
416           artifacts: '{archive-artifacts}'
417       - maven-exec:
418           maven-version: '{maven-version}'
419     scm:
420       - gerrit-trigger-scm:
421           refspec: ''
422           choosing-strategy: 'default'
423           submodule-recursive: '{submodule-recursive}'
424     wrappers:
425       - infra-wrappers:
426           build-timeout: '{build-timeout}'
427     triggers:
428       # 11 AM UTC
429       - timed: 'H 11 * * *'
430       - gerrit-trigger-release-manually:
431           server: '{server-name}'
432           project: '{project}'
433           branch: '{branch}'
434     builders:
435       - provide-maven-settings:
436           global-settings-file: 'global-settings'
437           settings-file: '{mvn-settings}'
438       - conditional-step:
439           condition-kind: regex-match
440           regex: DoSetVersion
441           label: '{setVersion}'
442           steps:
443             - inject:
444                 properties-file: version.properties
445             - maven-target:
446                 maven-version: '{maven-version}'
447                 goals: 'versions:set versions:update-child-modules versions:commit -B'
448                 properties:
449                   - 'newVersion=${{release_version}}'
450                 settings: '{mvn-settings}'
451                 settings-type: cfp
452                 global-settings: 'global-settings'
453                 global-settings-type: cfp
454       - maven-target:
455           maven-version: '{maven-version}'
456           goals: 'clean deploy -B
457             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
458           properties: '{obj:mvn_properties}'
459           settings: '{mvn-settings}'
460           settings-type: cfp
461           global-settings: 'global-settings'
462           global-settings-type: cfp
463     publishers:
464       - infra-shiplogs:
465           maven-version: '{maven-version}'
466       - checkstyle-result-daily
467
468 - job-template:
469     # Job template for Java daily release jobs
470     #
471     # The purpose of this job template is to run:
472     # 1. maven set versions
473     # 2. maven clean deploy with Sonar scans
474     #
475     # Required Variables:
476     #     branch:    git branch (eg. stable/lithium or master)
477
478     name: '{project-name}-{stream}-release-version-java-daily'
479
480     project-type: freestyle
481     disabled: '{disabled}'
482     node: '{build-node}'
483     maven-deploy-properties:
484     properties:
485       - infra-properties:
486           build-days-to-keep: '{build-days-to-keep}'
487
488     parameters:
489       - infra-parameters:
490           project: '{project}'
491           branch: '{branch}'
492           refspec: 'refs/heads/{branch}'
493           artifacts: '{archive-artifacts}'
494       - maven-exec:
495           maven-version: '{maven-version}'
496
497     scm:
498       - gerrit-trigger-scm:
499           refspec: ''
500           choosing-strategy: 'default'
501           submodule-recursive: '{submodule-recursive}'
502
503     wrappers:
504       - infra-wrappers:
505           build-timeout: '{build-timeout}'
506
507     triggers:
508       # 11 AM UTC
509       - timed: 'H H(10-17) * * *'
510       - gerrit-trigger-release-manually:
511           server: '{server-name}'
512           project: '{project}'
513           branch: '{branch}'
514
515     builders:
516       - provide-maven-settings:
517           global-settings-file: 'global-settings'
518           settings-file: '{mvn-settings}'
519
520       - inject:
521           properties-file: version.properties
522       - maven-target:
523           maven-version: '{maven-version}'
524           goals: 'versions:set versions:update-child-modules versions:commit -B'
525           properties:
526             - 'newVersion=${{release_version}}'
527           settings: '{mvn-settings}'
528           settings-type: cfp
529           global-settings: 'global-settings'
530           global-settings-type: cfp
531
532       - maven-target:
533           maven-version: '{maven-version}'
534           goals: 'clean deploy -B
535             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
536           properties:
537             - '{maven-deploy-properties}'
538           settings: '{mvn-settings}'
539           settings-type: cfp
540           global-settings: 'global-settings'
541           global-settings-type: cfp
542
543     publishers:
544       - infra-shiplogs:
545           maven-version: '{maven-version}'
546
547 - job-template:
548     # Job template for Java daily release jobs
549     #
550     # The purpose of this job template is to run:
551     # 1. maven set versions
552     # 2. maven clean deploy -P {mvn-profile} with Sonar scans
553     #
554     # Required Variables:
555     #     branch:    git branch (eg. stable/lithium or master)
556
557     name: '{project-name}-{stream}-release-version-profile-java-daily'
558
559     project-type: freestyle
560     node: '{build-node}'
561     disabled: '{disabled}'
562     maven-deploy-properties:
563     properties:
564       - infra-properties:
565           build-days-to-keep: '{build-days-to-keep}'
566
567     parameters:
568       - infra-parameters:
569           project: '{project}'
570           branch: '{branch}'
571           refspec: 'refs/heads/{branch}'
572           artifacts: '{archive-artifacts}'
573       - maven-exec:
574           maven-version: '{maven-version}'
575
576     scm:
577       - gerrit-trigger-scm:
578           refspec: ''
579           choosing-strategy: 'default'
580           submodule-recursive: '{submodule-recursive}'
581
582     wrappers:
583       - infra-wrappers:
584           build-timeout: '{build-timeout}'
585
586     triggers:
587       # 11 AM UTC
588       - timed: 'H 11 * * *'
589       - gerrit-trigger-release-manually:
590           server: '{server-name}'
591           project: '{project}'
592           branch: '{branch}'
593
594     builders:
595       - provide-maven-settings:
596           global-settings-file: 'global-settings'
597           settings-file: '{mvn-settings}'
598
599       - inject:
600           properties-file: version.properties
601       - maven-target:
602           maven-version: '{maven-version}'
603           goals: 'versions:set versions:update-child-modules versions:commit -B'
604           properties:
605             - 'newVersion=${{release_version}}'
606           settings: '{mvn-settings}'
607           settings-type: cfp
608           global-settings: 'global-settings'
609           global-settings-type: cfp
610
611       - maven-target:
612           maven-version: '{maven-version}'
613           goals: 'clean deploy -P {mvn-profile} -B
614             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
615           properties:
616             - '{maven-deploy-properties}'
617           settings: '{mvn-settings}'
618           settings-type: cfp
619           global-settings: 'global-settings'
620           global-settings-type: cfp
621
622     publishers:
623       - infra-shiplogs:
624           maven-version: '{maven-version}'
625
626
627 - job-template:
628     # Job template for Java daily release jobs with POM not at the root
629     #
630     # The purpose of this job template is to run:
631     # 1. maven clean deploy with Sonar scans
632     #
633     # This job supports subprojects.
634     #
635     # Required Variables:
636     #     branch:    git branch (eg. stable/lithium or master)
637     #     pom:       name/location of the pom.xml file relative to the workspace
638
639     name: '{project-name}-{stream}-{subproject}-release-java-daily'
640
641     project-type: freestyle
642     node: '{build-node}'
643     disabled: '{disabled}'
644     maven-deploy-properties:
645     properties:
646       - infra-properties:
647           build-days-to-keep: '{build-days-to-keep}'
648
649     parameters:
650       - infra-parameters:
651           project: '{project}'
652           branch: '{branch}'
653           refspec: 'refs/heads/{branch}'
654           artifacts: '{archive-artifacts}'
655       - maven-exec:
656           maven-version: '{maven-version}'
657
658     scm:
659       - gerrit-trigger-scm:
660           refspec: ''
661           choosing-strategy: 'default'
662           submodule-recursive: '{submodule-recursive}'
663
664     wrappers:
665       - infra-wrappers:
666           build-timeout: '{build-timeout}'
667
668     triggers:
669       # 11 AM UTC
670       - timed: 'H 11 * * *'
671       - gerrit-trigger-release-manually:
672           server: '{server-name}'
673           project: '{project}'
674           branch: '{branch}'
675
676     builders:
677       - provide-maven-settings:
678           global-settings-file: 'global-settings'
679           settings-file: '{mvn-settings}'
680
681       - maven-target:
682           maven-version: '{maven-version}'
683           pom: '{pom}'
684           goals: 'clean deploy -B
685             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
686           properties:
687             - '{maven-deploy-properties}'
688           java-opts:
689             - '-Xmx4096m -XX:MaxPermSize=512m'
690           settings: '{mvn-settings}'
691           settings-type: cfp
692           global-settings: 'global-settings'
693           global-settings-type: cfp
694
695     publishers:
696       - infra-shiplogs:
697           maven-version: '{maven-version}'
698
699 - job-template:
700     # Job template for Java daily release jobs with POM not at the root
701     #
702     # The purpose of this job template is to run:
703     # 1. maven set versions
704     # 2. maven clean deploy with Sonar scans
705     #
706     # This job supports subprojects.
707     #
708     # Required Variables:
709     #     branch:    git branch (eg. stable/lithium or master)
710     #     pom:       name/location of the pom.xml file relative to the workspace
711
712     name: '{project-name}-{stream}-{subproject}-release-version-java-daily'
713
714     project-type: freestyle
715     node: '{build-node}'
716     disabled: '{disabled}'
717     maven-deploy-properties:
718     properties:
719       - infra-properties:
720           build-days-to-keep: '{build-days-to-keep}'
721
722     parameters:
723       - infra-parameters:
724           project: '{project}'
725           branch: '{branch}'
726           refspec: 'refs/heads/{branch}'
727           artifacts: '{archive-artifacts}'
728       - maven-exec:
729           maven-version: '{maven-version}'
730
731     scm:
732       - gerrit-trigger-scm:
733           refspec: ''
734           choosing-strategy: 'default'
735           submodule-recursive: '{submodule-recursive}'
736
737     wrappers:
738       - infra-wrappers:
739           build-timeout: '{build-timeout}'
740
741     triggers:
742       # 11 AM UTC
743       - timed: 'H 11 * * *'
744       - gerrit-trigger-release-manually:
745           server: '{server-name}'
746           project: '{project}'
747           branch: '{branch}'
748
749     builders:
750       - provide-maven-settings:
751           global-settings-file: 'global-settings'
752           settings-file: '{mvn-settings}'
753
754       - inject:
755           properties-file: version.properties
756       - maven-target:
757           maven-version: '{maven-version}'
758           pom: '{pom}'
759           goals: 'versions:set versions:update-child-modules versions:commit -B'
760           properties:
761             - 'newVersion=${{release_version}}'
762           settings: '{mvn-settings}'
763           settings-type: cfp
764           global-settings: 'global-settings'
765           global-settings-type: cfp
766
767       - maven-target:
768           maven-version: '{maven-version}'
769           pom: '{pom}'
770           goals: 'clean deploy -B
771             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
772           properties:
773             - '{maven-deploy-properties}'
774           settings: '{mvn-settings}'
775           settings-type: cfp
776           global-settings: 'global-settings'
777           global-settings-type: cfp
778
779     publishers:
780       - infra-shiplogs:
781           maven-version: '{maven-version}'
782
783 - job-template:
784     # Job template for Java daily release jobs with POM not at the root
785     #
786     # The purpose of this job template is to run:
787     # 1. maven set versions
788     # 2. maven clean deploy with Sonar scans
789     #
790     # This job supports subprojects.
791     #
792     # Required Variables:
793     #     branch:    git branch (eg. stable/lithium or master)
794     #     pom:       name/location of the pom.xml file relative to the workspace
795
796     name: '{project-name}-{stream}-{subproject}-release-version-java-shell-daily'
797
798     project-type: freestyle
799     node: '{build-node}'
800     disabled: '{disabled}'
801     maven-deploy-properties:
802     properties:
803       - infra-properties:
804           build-days-to-keep: '{build-days-to-keep}'
805
806     parameters:
807       - infra-parameters:
808           project: '{project}'
809           branch: '{branch}'
810           refspec: 'refs/heads/{branch}'
811           artifacts: '{archive-artifacts}'
812       - maven-exec:
813           maven-version: '{maven-version}'
814
815     scm:
816       - gerrit-trigger-scm:
817           refspec: ''
818           choosing-strategy: 'default'
819           submodule-recursive: '{submodule-recursive}'
820
821     wrappers:
822       - infra-wrappers:
823           build-timeout: '{build-timeout}'
824
825     triggers:
826       # 11 AM UTC
827       - timed: 'H 11 * * *'
828       - gerrit-trigger-release-manually:
829           server: '{server-name}'
830           project: '{project}'
831           branch: '{branch}'
832
833     builders:
834       - provide-maven-settings:
835           global-settings-file: 'global-settings'
836           settings-file: '{mvn-settings}'
837
838       - inject:
839           properties-file: version.properties
840       - maven-target:
841           maven-version: '{maven-version}'
842           pom: '{pom}'
843           goals: 'versions:set versions:update-child-modules versions:commit -B'
844           properties:
845             - 'newVersion=${{release_version}}'
846           settings: '{mvn-settings}'
847           settings-type: cfp
848           global-settings: 'global-settings'
849           global-settings-type: cfp
850
851       - shell: '{script}'
852
853       - maven-target:
854           maven-version: '{maven-version}'
855           pom: '{pom}'
856           goals: 'clean deploy sonar:sonar -Dsonar.host.url=${{SONAR}} -B
857             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
858           properties:
859             - '{maven-deploy-properties}'
860           settings: '{mvn-settings}'
861           settings-type: cfp
862           global-settings: 'global-settings'
863           global-settings-type: cfp
864
865     publishers:
866       - infra-shiplogs:
867           maven-version: '{maven-version}'
868
869 - job-template:
870     # Job template for Java merge jobs
871     #
872     # The purpose of this job template is to run:
873     # 1. maven clean deploy
874     #
875     # Required Variables:
876     #     branch:    git branch (eg. stable/lithium or master)
877
878     name: '{project-name}-{stream}-merge-java'
879
880     project-type: freestyle
881     node: '{build-node}'
882
883     properties:
884       - infra-properties:
885           build-days-to-keep: '{build-days-to-keep}'
886
887     parameters:
888       - infra-parameters:
889           project: '{project}'
890           branch: '{branch}'
891           refspec: 'refs/heads/{branch}'
892           artifacts: '{archive-artifacts}'
893       - maven-exec:
894           maven-version: '{maven-version}'
895
896     scm:
897       - gerrit-trigger-scm:
898           refspec: ''
899           choosing-strategy: 'default'
900           submodule-recursive: '{submodule-recursive}'
901
902     wrappers:
903       - infra-wrappers:
904           build-timeout: '{build-timeout}'
905
906     triggers:
907       - gerrit-trigger-patch-merged:
908           server: '{server-name}'
909           project: '{project}'
910           branch: '{branch}'
911           files: '**'
912
913     builders:
914       - provide-maven-settings:
915           global-settings-file: 'global-settings'
916           settings-file: '{mvn-settings}'
917       - maven-target:
918           maven-version: '{maven-version}'
919           goals: 'clean deploy -B
920             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
921           settings: '{mvn-settings}'
922           settings-type: cfp
923           global-settings: 'global-settings'
924           global-settings-type: cfp
925
926     publishers:
927       - infra-shiplogs:
928           maven-version: '{maven-version}'
929
930 - job-template:
931     # Job template for Java merge jobs based on
932     #   '{project-name}-{stream}-merge-java'
933     # The purpose of this job template is to run:
934     # 1. maven clean deploy
935     #
936     # This project supports maven properties.
937     #
938     # Required Variables:
939     #     branch:    git branch (eg. stable/lithium or master)
940     #     maven-properties: properties passed to maven
941
942     name: '{project-name}-{stream}-merge-properties-java'
943
944     project-type: freestyle
945     node: '{build-node}'
946
947     properties:
948       - infra-properties:
949           build-days-to-keep: '{build-days-to-keep}'
950
951     parameters:
952       - infra-parameters:
953           project: '{project}'
954           branch: '{branch}'
955           refspec: 'refs/heads/{branch}'
956           artifacts: '{archive-artifacts}'
957       - maven-exec:
958           maven-version: '{maven-version}'
959
960     scm:
961       - gerrit-trigger-scm:
962           refspec: ''
963           choosing-strategy: 'default'
964           submodule-recursive: '{submodule-recursive}'
965
966     wrappers:
967       - infra-wrappers:
968           build-timeout: '{build-timeout}'
969
970     triggers:
971       - gerrit-trigger-patch-merged:
972           server: '{server-name}'
973           project: '{project}'
974           branch: '{branch}'
975           files: '**'
976
977     builders:
978       - provide-maven-settings:
979           global-settings-file: 'global-settings'
980           settings-file: '{mvn-settings}'
981       - maven-target:
982           maven-version: '{maven-version}'
983           goals: 'clean deploy -B
984             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
985           settings: '{mvn-settings}'
986           settings-type: cfp
987           global-settings: 'global-settings'
988           global-settings-type: cfp
989           properties: '{obj:mvn_properties}'
990
991     publishers:
992       - infra-shiplogs:
993           maven-version: '{maven-version}'
994
995 - job-template:
996     # Job template for Java merge jobs that takes a maven template
997     #
998     # The purpose of this job template is to run:
999     # 1. maven clean deploy -P {mvn-profile}
1000     #
1001     # Required Variables:
1002     #     branch:    git branch (eg. stable/lithium or master)
1003
1004     name: '{project-name}-{stream}-merge-profile-java'
1005
1006     project-type: freestyle
1007     node: '{build-node}'
1008
1009     properties:
1010       - infra-properties:
1011           build-days-to-keep: '{build-days-to-keep}'
1012
1013     parameters:
1014       - infra-parameters:
1015           project: '{project}'
1016           branch: '{branch}'
1017           refspec: 'refs/heads/{branch}'
1018           artifacts: '{archive-artifacts}'
1019       - maven-exec:
1020           maven-version: '{maven-version}'
1021
1022     scm:
1023       - gerrit-trigger-scm:
1024           refspec: ''
1025           choosing-strategy: 'default'
1026           submodule-recursive: '{submodule-recursive}'
1027
1028     wrappers:
1029       - infra-wrappers:
1030           build-timeout: '{build-timeout}'
1031
1032     triggers:
1033       - gerrit-trigger-patch-merged:
1034           server: '{server-name}'
1035           project: '{project}'
1036           branch: '{branch}'
1037           files: '{files}'
1038
1039     builders:
1040       - provide-maven-settings:
1041           global-settings-file: 'global-settings'
1042           settings-file: '{mvn-settings}'
1043
1044       - docker-login
1045
1046       - maven-target:
1047           maven-version: '{maven-version}'
1048           goals: 'clean deploy -P {mvn-profile} -B
1049             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1050           settings: '{mvn-settings}'
1051           settings-type: cfp
1052           global-settings: 'global-settings'
1053           global-settings-type: cfp
1054           properties:
1055             - docker.pull.registry=nexus3.onap.org:10001
1056             - docker.push.registry=nexus3.onap.org:10003
1057
1058     publishers:
1059       - infra-shiplogs:
1060           maven-version: '{maven-version}'
1061
1062 - job-template:
1063     # Job template for Java merge jobs that should also be triggered by upstream
1064     # merges
1065     #
1066     # Required Variables:
1067     #   stream:         release stream
1068     #   branch:         git branch
1069     #   dependencies:   fully qualified upstream job name to trigger on
1070     #                   this may be ''
1071
1072     name: '{project-name}-{stream}-downstream-merge-java'
1073
1074     project-type: freestyle
1075     node: '{build-node}'
1076
1077     properties:
1078       - infra-properties:
1079           build-days-to-keep: '{build-days-to-keep}'
1080
1081     parameters:
1082       - infra-parameters:
1083           project: '{project}'
1084           branch: '{branch}'
1085           refspec: 'refs/heads/{branch}'
1086           artifacts: '{archive-artifacts}'
1087       - maven-exec:
1088           maven-version: '{maven-version}'
1089
1090     scm:
1091       - gerrit-trigger-scm:
1092           refspec: ''
1093           choosing-strategy: 'default'
1094           submodule-recursive: '{submodule-recursive}'
1095
1096     wrappers:
1097       - infra-wrappers:
1098           build-timeout: '{build-timeout}'
1099
1100     triggers:
1101       - reverse:
1102           jobs: '{dependencies}'
1103           result: 'success'
1104       - gerrit-trigger-patch-merged:
1105           server: '{server-name}'
1106           project: '{project}'
1107           branch: '{branch}'
1108           files: '**'
1109
1110     builders:
1111       - provide-maven-settings:
1112           global-settings-file: 'global-settings'
1113           settings-file: '{mvn-settings}'
1114       - maven-target:
1115           maven-version: '{maven-version}'
1116           goals: 'clean deploy -B
1117             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1118           settings: '{mvn-settings}'
1119           settings-type: cfp
1120           global-settings: 'global-settings'
1121           global-settings-type: cfp
1122
1123     publishers:
1124       - infra-shiplogs:
1125           maven-version: '{maven-version}'
1126
1127 - job-template:
1128     # Job template for Java merge jobs with POM not at the root
1129     #
1130     # The purpose of this job template is to run:
1131     # 1. maven clean deploy
1132     #
1133     # This job supports subprojects.
1134     #
1135     # Required Variables:
1136     #     branch:    git branch (eg. stable/lithium or master)
1137     #     pom:       name/location of the pom.xml file relative to the workspace
1138     #     pattern:   ant file-path pattern relative to the workspace used to
1139     #                trigger the job
1140
1141     name: '{project-name}-{stream}-{subproject}-merge-java'
1142
1143     project-type: freestyle
1144     node: '{build-node}'
1145
1146     properties:
1147       - infra-properties:
1148           build-days-to-keep: '{build-days-to-keep}'
1149
1150     parameters:
1151       - infra-parameters:
1152           project: '{project}'
1153           branch: '{branch}'
1154           refspec: 'refs/heads/{branch}'
1155           artifacts: '{archive-artifacts}'
1156       - maven-exec:
1157           maven-version: '{maven-version}'
1158
1159     scm:
1160       - gerrit-trigger-scm:
1161           refspec: ''
1162           choosing-strategy: 'default'
1163           submodule-recursive: '{submodule-recursive}'
1164
1165     wrappers:
1166       - infra-wrappers:
1167           build-timeout: '{build-timeout}'
1168
1169     triggers:
1170       - gerrit-trigger-patch-merged:
1171           server: '{server-name}'
1172           project: '{project}'
1173           branch: '{branch}'
1174           files: '{pattern}'
1175
1176     builders:
1177       - provide-maven-settings:
1178           global-settings-file: 'global-settings'
1179           settings-file: '{mvn-settings}'
1180       - maven-target:
1181           maven-version: '{maven-version}'
1182           pom: '{pom}'
1183           goals: 'clean deploy -B
1184             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1185           settings: '{mvn-settings}'
1186           settings-type: cfp
1187           global-settings: 'global-settings'
1188           global-settings-type: cfp
1189
1190     publishers:
1191       - infra-shiplogs:
1192           maven-version: '{maven-version}'
1193
1194 - job-template:
1195     # Job template for Docker daily jobs
1196     #
1197     # The purpose of this job template is to run:
1198     # 1. login to the docker registry
1199     # 2. docker push
1200     #
1201     # Required Variables:
1202     #     branch:    git branch (eg. stable/lithium or master)
1203
1204     name: '{project-name}-{stream}-docker-java-daily'
1205     id: '{project-name}-{stream}-docker-java-daily'
1206     project-type: freestyle
1207     node: 'ubuntu1604-docker-8c-8g'
1208     disabled: '{disabled}'
1209     properties:
1210       - infra-properties:
1211           build-days-to-keep: '{build-days-to-keep}'
1212
1213     parameters:
1214       - infra-parameters:
1215           project: '{project}'
1216           branch: '{branch}'
1217           refspec: 'refs/heads/{branch}'
1218           artifacts: '{archive-artifacts}'
1219       - maven-exec:
1220           maven-version: '{maven-version}'
1221       - maven-params:
1222           mvn-params: '{mvn-params}'
1223
1224     scm:
1225       - gerrit-trigger-scm:
1226           refspec: ''
1227           choosing-strategy: 'default'
1228           submodule-recursive: '{submodule-recursive}'
1229
1230     wrappers:
1231       - infra-wrappers:
1232           build-timeout: '{build-timeout}'
1233
1234     triggers:
1235       # 12 AM UTC
1236       - timed: 'H 12 * * *'
1237       - gerrit-trigger-release-manually:
1238           server: '{server-name}'
1239           project: '{project}'
1240           branch: '{branch}'
1241
1242     builders:
1243
1244       - provide-maven-settings:
1245           global-settings-file: 'global-settings'
1246           settings-file: '{mvn-settings}'
1247
1248       - docker-login
1249
1250       - maven-docker-push-daily:
1251           maven-version: '{maven-version}'
1252           mvn-settings: '{mvn-settings}'
1253           pom: '{docker-pom}'
1254           # use default as mvn-profile if profile is not needed
1255           mvn-profile: '{mvn-profile}'
1256           mvn-params: '{mvn-params}'
1257
1258     publishers:
1259       - infra-shiplogs:
1260           maven-version: '{maven-version}'
1261
1262 - job-template:
1263     # Job template for Docker daily jobs
1264     #
1265     # The purpose of this job template is to run:
1266     # 1. login to the docker registry
1267     # 2. docker push
1268     #
1269     # Required Variables:
1270     #     branch:    git branch (eg. stable/lithium or master)
1271
1272     name: '{project-name}-{stream}-docker-java-daily'
1273     id: docker-java-daily
1274     project-type: freestyle
1275     node: '{build-node}'
1276     disabled: '{disabled}'
1277     properties:
1278       - infra-properties:
1279           build-days-to-keep: '{build-days-to-keep}'
1280
1281     parameters:
1282       - infra-parameters:
1283           project: '{project}'
1284           branch: '{branch}'
1285           refspec: 'refs/heads/{branch}'
1286           artifacts: '{archive-artifacts}'
1287       - maven-exec:
1288           maven-version: '{maven-version}'
1289       - maven-params:
1290           mvn-params: '{mvn-params}'
1291
1292     scm:
1293       - gerrit-trigger-scm:
1294           refspec: ''
1295           choosing-strategy: 'default'
1296           submodule-recursive: '{submodule-recursive}'
1297
1298     wrappers:
1299       - infra-wrappers-docker-build:
1300           build-timeout: '{build-timeout}'
1301
1302     triggers:
1303       # 12 AM UTC
1304       - timed: 'H 12 * * *'
1305       - gerrit-trigger-release-manually:
1306           server: '{server-name}'
1307           project: '{project}'
1308           branch: '{branch}'
1309
1310     builders:
1311
1312       - provide-maven-settings:
1313           global-settings-file: 'global-settings'
1314           settings-file: '{mvn-settings}'
1315
1316       - docker-login
1317
1318       - maven-docker-push-daily:
1319           maven-version: '{maven-version}'
1320           mvn-settings: '{mvn-settings}'
1321           pom: '{docker-pom}'
1322           # use default as mvn-profile if profile is not needed
1323           mvn-profile: '{mvn-profile}'
1324           mvn-params: '{mvn-params}'
1325
1326     publishers:
1327       - infra-shiplogs:
1328           maven-version: '{maven-version}'
1329
1330
1331 - job-template:
1332     # Job template for building & pushing docker images
1333     #
1334     # The purpose of this job template is to run:
1335     #  1. login to the docker registry
1336     #  2. maven clean deploy on the specified profile
1337     #
1338     # This job uses a conditional regex match step to set versions.
1339     # This template supports maven properties.
1340     #
1341     # Required Variables:
1342     #     pom:       name/location of the pom.xml file relative to the workspace
1343     #     profile:   the docker profile defined in the pom
1344     #     maven-properties: properties passed to maven
1345
1346     name: '{project-name}-{stream}-docker-java-properties-daily'
1347     project-type: freestyle
1348     node: 'ubuntu1604-docker-8c-8g'
1349     disabled: '{disabled}'
1350     properties:
1351       - infra-properties:
1352           build-days-to-keep: '{build-days-to-keep}'
1353     parameters:
1354       - infra-parameters:
1355           project: '{project}'
1356           branch: '{branch}'
1357           refspec: 'refs/heads/{branch}'
1358           artifacts: '{archive-artifacts}'
1359       - maven-exec:
1360           maven-version: '{maven-version}'
1361       - maven-params:
1362           mvn-params: '{mvn-params}'
1363     scm:
1364       - gerrit-trigger-scm:
1365           refspec: ''
1366           choosing-strategy: 'default'
1367           submodule-recursive: '{submodule-recursive}'
1368     wrappers:
1369       - infra-wrappers:
1370           build-timeout: '{build-timeout}'
1371     triggers:
1372       # 12 AM UTC
1373       - timed: 'H 12 * * *'
1374       - gerrit-trigger-release-manually:
1375           server: '{server-name}'
1376           project: '{project}'
1377           branch: '{branch}'
1378     builders:
1379       - provide-maven-settings:
1380           global-settings-file: 'global-settings'
1381           settings-file: '{mvn-settings}'
1382       - conditional-step:
1383           condition-kind: regex-match
1384           regex: DoSetVersion
1385           label: '{setVersion}'
1386           steps:
1387             - inject:
1388                 properties-file: version.properties
1389             - maven-target:
1390                 maven-version: '{maven-version}'
1391                 goals: 'versions:set versions:update-child-modules versions:commit -B'
1392                 properties:
1393                   - 'newVersion=${{release_version}}'
1394                 settings: '{mvn-settings}'
1395                 settings-type: cfp
1396                 global-settings: 'global-settings'
1397                 global-settings-type: cfp
1398       - docker-login
1399       - maven-docker-push-daily:
1400           maven-version: '{maven-version}'
1401           mvn-settings: '{mvn-settings}'
1402           pom: '{docker-pom}'
1403           properties: '{maven-properties}'
1404           # use default as mvn-profile if profile is not needed
1405           mvn-profile: '{mvn-profile}'
1406           mvn-params: '{mvn-params}'
1407     publishers:
1408       - infra-shiplogs:
1409           maven-version: '{maven-version}'
1410
1411 - job-template:
1412     # Job template for building & pushing docker images
1413     #
1414     # The purpose of this job template is to run:
1415     #  1. login to the docker registry
1416     #  2. run a specified shell builder
1417     #
1418     # Required Variables:
1419     #     pom:       name/location of the pom.xml file relative to the workspace
1420     #     maven-properties: properties passed to maven
1421
1422     name: '{project-name}-{stream}-docker-java-shell-daily'
1423     project-type: freestyle
1424     node: 'ubuntu1604-docker-8c-8g'
1425     disabled: '{disabled}'
1426     properties:
1427       - infra-properties:
1428           build-days-to-keep: '{build-days-to-keep}'
1429
1430     parameters:
1431       - infra-parameters:
1432           project: '{project}'
1433           branch: '{branch}'
1434           refspec: 'refs/heads/{branch}'
1435           artifacts: '{archive-artifacts}'
1436       - maven-exec:
1437           maven-version: '{maven-version}'
1438
1439     scm:
1440       - gerrit-trigger-scm:
1441           refspec: ''
1442           choosing-strategy: 'default'
1443           submodule-recursive: '{submodule-recursive}'
1444
1445     wrappers:
1446       - infra-wrappers:
1447           build-timeout: '{build-timeout}'
1448
1449     triggers:
1450       # 12 AM UTC
1451       - timed: 'H 12 * * *'
1452       - gerrit-trigger-release-manually:
1453           server: '{server-name}'
1454           project: '{project}'
1455           branch: '{branch}'
1456
1457     builders:
1458
1459       - provide-maven-settings:
1460           global-settings-file: 'global-settings'
1461           settings-file: '{mvn-settings}'
1462
1463       - docker-login
1464
1465       - maven-target:
1466           maven-version: '{maven-version}'
1467           goals: '{mvn-goals}'
1468           settings: '{mvn-settings}'
1469           settings-type: cfp
1470           global-settings: 'global-settings'
1471           global-settings-type: cfp
1472
1473       - shell: '{script}'
1474
1475     publishers:
1476       - infra-shiplogs:
1477           maven-version: '{maven-version}'
1478
1479 - job-template:
1480     # Job template for building & pushing docker images
1481     #
1482     # The purpose of this job template is to run:
1483     #  1. login to the docker registry
1484     #  2. inject a version.properties file and set versions
1485     #  3. run a specified shell builder
1486     #
1487     # Required Variables:
1488     #     pom:       name/location of the pom.xml file relative to the workspace
1489     #     maven-properties: properties passed to maven
1490
1491     name: '{project-name}-{stream}-docker-java-version-shell-daily'
1492     project-type: freestyle
1493     node: 'ubuntu1604-docker-8c-8g'
1494     disabled: '{disabled}'
1495     properties:
1496       - infra-properties:
1497           build-days-to-keep: '{build-days-to-keep}'
1498
1499     parameters:
1500       - infra-parameters:
1501           project: '{project}'
1502           branch: '{branch}'
1503           refspec: 'refs/heads/{branch}'
1504           artifacts: '{archive-artifacts}'
1505       - maven-exec:
1506           maven-version: '{maven-version}'
1507
1508     scm:
1509       - gerrit-trigger-scm:
1510           refspec: ''
1511           choosing-strategy: 'default'
1512           submodule-recursive: '{submodule-recursive}'
1513
1514     wrappers:
1515       - infra-wrappers:
1516           build-timeout: '{build-timeout}'
1517
1518     triggers:
1519       # 12 AM UTC
1520       - timed: 'H 12 * * *'
1521       - gerrit-trigger-release-manually:
1522           server: '{server-name}'
1523           project: '{project}'
1524           branch: '{branch}'
1525
1526     builders:
1527
1528       - provide-maven-settings:
1529           global-settings-file: 'global-settings'
1530           settings-file: '{mvn-settings}'
1531
1532       - inject:
1533           properties-file: version.properties
1534
1535       - maven-target:
1536           maven-version: '{maven-version}'
1537           goals: 'versions:set versions:update-child-modules versions:commit -B'
1538           properties:
1539             - 'newVersion=${{release_version}}'
1540           settings: '{mvn-settings}'
1541           settings-type: cfp
1542           global-settings: 'global-settings'
1543           global-settings-type: cfp
1544
1545       - docker-login
1546
1547       - maven-target:
1548           maven-version: '{maven-version}'
1549           goals: '{mvn-goals}'
1550           settings: '{mvn-settings}'
1551           settings-type: cfp
1552           global-settings: 'global-settings'
1553           global-settings-type: cfp
1554
1555       - shell: '{script}'
1556
1557     publishers:
1558       - infra-shiplogs:
1559           maven-version: '{maven-version}'
1560
1561 - job-template:
1562     # Job template for building & pushing docker images
1563     #
1564     # The purpose of this job template is to run:
1565     #  1. login to the docker registry
1566     #  2. inject a version.properties file and set versions
1567     #  3. run a specified shell builder
1568     #
1569     # This template supports subprojects.
1570     #
1571     # Required Variables:
1572     #     pom:       name/location of the pom.xml file relative to the workspace
1573     #     maven-properties: properties passed to maven
1574
1575     name: '{project-name}-{stream}-{subproject}-docker-java-version-shell-daily'
1576     project-type: freestyle
1577     node: 'ubuntu1604-docker-8c-8g'
1578     disabled: '{disabled}'
1579     properties:
1580       - infra-properties:
1581           build-days-to-keep: '{build-days-to-keep}'
1582
1583     parameters:
1584       - infra-parameters:
1585           project: '{project}'
1586           branch: '{branch}'
1587           refspec: 'refs/heads/{branch}'
1588           artifacts: '{archive-artifacts}'
1589       - maven-exec:
1590           maven-version: '{maven-version}'
1591
1592     scm:
1593       - gerrit-trigger-scm:
1594           refspec: ''
1595           choosing-strategy: 'default'
1596           submodule-recursive: '{submodule-recursive}'
1597
1598     wrappers:
1599       - infra-wrappers:
1600           build-timeout: '{build-timeout}'
1601
1602     triggers:
1603       # 12 AM UTC
1604       - timed: 'H 12 * * *'
1605       - gerrit-trigger-release-manually:
1606           server: '{server-name}'
1607           project: '{project}'
1608           branch: '{branch}'
1609
1610     builders:
1611
1612       - provide-maven-settings:
1613           global-settings-file: 'global-settings'
1614           settings-file: '{mvn-settings}'
1615
1616       - inject:
1617           properties-file: version.properties
1618
1619       - maven-target:
1620           maven-version: '{maven-version}'
1621           pom: '{pom}'
1622           goals: 'versions:set versions:update-child-modules versions:commit -B'
1623           properties:
1624             - 'newVersion=${{release_version}}'
1625           settings: '{mvn-settings}'
1626           settings-type: cfp
1627           global-settings: 'global-settings'
1628           global-settings-type: cfp
1629
1630       - docker-login
1631
1632       - maven-target:
1633           maven-version: '{maven-version}'
1634           pom: '{pom}'
1635           goals: '{mvn-goals}'
1636           settings: '{mvn-settings}'
1637           settings-type: cfp
1638           global-settings: 'global-settings'
1639           global-settings-type: cfp
1640
1641       - shell: '{script}'
1642
1643     publishers:
1644       - infra-shiplogs:
1645           maven-version: '{maven-version}'
1646
1647 - job-template:
1648     # Job template for building & pushing docker images
1649     #
1650     # The purpose of this job template is to run:
1651     #  1. login to the docker registry
1652     #  2. inject a version.properties file and set versions
1653     #  3. run a docker push
1654     #
1655     # Required Variables:
1656     #     pom:       name/location of the pom.xml file relative to the workspace
1657     #     profile:   the docker profile defined in the pom
1658     #     maven-properties: properties passed to maven
1659
1660     name: '{project-name}-{stream}-docker-version-java-daily'
1661     id: '{project-name}-{stream}-docker-version-java-daily'
1662     project-type: freestyle
1663     node: 'ubuntu1604-docker-8c-8g'
1664     disabled: '{disabled}'
1665     properties:
1666       - infra-properties:
1667           build-days-to-keep: '{build-days-to-keep}'
1668
1669     parameters:
1670       - infra-parameters:
1671           project: '{project}'
1672           branch: '{branch}'
1673           refspec: 'refs/heads/{branch}'
1674           artifacts: '{archive-artifacts}'
1675       - maven-exec:
1676           maven-version: '{maven-version}'
1677       - maven-params:
1678           mvn-params: '{mvn-params}'
1679
1680     scm:
1681       - gerrit-trigger-scm:
1682           refspec: ''
1683           choosing-strategy: 'default'
1684           submodule-recursive: '{submodule-recursive}'
1685
1686     wrappers:
1687       - infra-wrappers:
1688           build-timeout: '{build-timeout}'
1689
1690     triggers:
1691       # 12 AM UTC
1692       - timed: 'H 12 * * *'
1693       - gerrit-trigger-release-manually:
1694           server: '{server-name}'
1695           project: '{project}'
1696           branch: '{branch}'
1697
1698     builders:
1699
1700       - provide-maven-settings:
1701           global-settings-file: 'global-settings'
1702           settings-file: '{mvn-settings}'
1703
1704       - inject:
1705           properties-file: version.properties
1706
1707       - maven-target:
1708           maven-version: '{maven-version}'
1709           goals: 'versions:set versions:update-child-modules versions:commit -B'
1710           properties:
1711             - 'newVersion=${{release_version}}'
1712           settings: '{mvn-settings}'
1713           settings-type: cfp
1714           global-settings: 'global-settings'
1715           global-settings-type: cfp
1716
1717       - docker-login
1718
1719       - maven-docker-push-daily:
1720           maven-version: '{maven-version}'
1721           mvn-settings: '{mvn-settings}'
1722           pom: '{docker-pom}'
1723           # use default as mvn-profile if profile is not needed
1724           mvn-profile: '{mvn-profile}'
1725           mvn-params: '{mvn-params}'
1726
1727     publishers:
1728       - infra-shiplogs:
1729           maven-version: '{maven-version}'
1730
1731 - job-template:
1732     # Job template for building & pushing docker images
1733     #
1734     # The purpose of this job template is to run:
1735     #  1. login to the docker registry
1736     #  2. inject a version.properties file and set versions
1737     #  3. run a docker push
1738     #
1739     # Required Variables:
1740     #     pom:       name/location of the pom.xml file relative to the workspace
1741     #     profile:   the docker profile defined in the pom
1742     #     maven-properties: properties passed to maven
1743
1744     name: '{project-name}-{stream}-docker-version-java-daily'
1745     id: 'docker-version-java-daily'
1746     project-type: freestyle
1747     node: '{build-node}'
1748     disabled: '{disabled}'
1749     properties:
1750       - infra-properties:
1751           build-days-to-keep: '{build-days-to-keep}'
1752
1753     parameters:
1754       - infra-parameters:
1755           project: '{project}'
1756           branch: '{branch}'
1757           refspec: 'refs/heads/{branch}'
1758           artifacts: '{archive-artifacts}'
1759       - maven-exec:
1760           maven-version: '{maven-version}'
1761       - maven-params:
1762           mvn-params: '{mvn-params}'
1763
1764     scm:
1765       - gerrit-trigger-scm:
1766           refspec: ''
1767           choosing-strategy: 'default'
1768           submodule-recursive: '{submodule-recursive}'
1769
1770     wrappers:
1771       - infra-wrappers-docker-build:
1772           build-timeout: '{build-timeout}'
1773
1774     triggers:
1775       # 12 AM UTC
1776       - timed: 'H 12 * * *'
1777       - gerrit-trigger-release-manually:
1778           server: '{server-name}'
1779           project: '{project}'
1780           branch: '{branch}'
1781
1782     builders:
1783
1784       - provide-maven-settings:
1785           global-settings-file: 'global-settings'
1786           settings-file: '{mvn-settings}'
1787
1788       - inject:
1789           properties-file: version.properties
1790
1791       - maven-target:
1792           maven-version: '{maven-version}'
1793           goals: 'versions:set versions:update-child-modules versions:commit -B'
1794           properties:
1795             - 'newVersion=${{release_version}}'
1796           settings: '{mvn-settings}'
1797           settings-type: cfp
1798           global-settings: 'global-settings'
1799           global-settings-type: cfp
1800
1801       - docker-login
1802
1803       - maven-docker-push-daily:
1804           maven-version: '{maven-version}'
1805           mvn-settings: '{mvn-settings}'
1806           pom: '{docker-pom}'
1807           # use default as mvn-profile if profile is not needed
1808           mvn-profile: '{mvn-profile}'
1809           mvn-params: '{mvn-params}'
1810
1811     publishers:
1812       - infra-shiplogs:
1813           maven-version: '{maven-version}'
1814
1815 - job-template:
1816     # Job template for building & pushing docker images
1817     #
1818     # The purpose of this job template is to run:
1819     #  1. inject a version.properties file and set versions
1820     #  2. login to the docker registry
1821     #  3. run a docker push
1822     #
1823     # This job supports subprojects.
1824     #
1825     # Required Variables:
1826     #     pom:       name/location of the pom.xml file relative to the workspace
1827     #     maven-properties: properties passed to maven
1828
1829     name: '{project-name}-{stream}-{subproject}-docker-version-java-daily'
1830     project-type: freestyle
1831     node: 'ubuntu1604-docker-8c-8g'
1832     disabled: '{disabled}'
1833     properties:
1834       - infra-properties:
1835           build-days-to-keep: '{build-days-to-keep}'
1836
1837     parameters:
1838       - infra-parameters:
1839           project: '{project}'
1840           branch: '{branch}'
1841           refspec: 'refs/heads/{branch}'
1842           artifacts: '{archive-artifacts}'
1843       - maven-exec:
1844           maven-version: '{maven-version}'
1845       - maven-params:
1846           mvn-params: '{mvn-params}'
1847
1848     scm:
1849       - gerrit-trigger-scm:
1850           refspec: ''
1851           choosing-strategy: 'default'
1852           submodule-recursive: '{submodule-recursive}'
1853
1854     wrappers:
1855       - infra-wrappers:
1856           build-timeout: '{build-timeout}'
1857
1858     triggers:
1859       # 12 AM UTC
1860       - timed: 'H 12 * * *'
1861       - gerrit-trigger-release-manually:
1862           server: '{server-name}'
1863           project: '{project}'
1864           branch: '{branch}'
1865
1866     builders:
1867
1868       - provide-maven-settings:
1869           global-settings-file: 'global-settings'
1870           settings-file: '{mvn-settings}'
1871
1872       - inject:
1873           properties-file: version.properties
1874
1875       - maven-target:
1876           maven-version: '{maven-version}'
1877           pom: '{pom}'
1878           goals: 'versions:set versions:update-child-modules versions:commit -B'
1879           properties:
1880             - 'newVersion=${{release_version}}'
1881           settings: '{mvn-settings}'
1882           settings-type: cfp
1883           global-settings: 'global-settings'
1884           global-settings-type: cfp
1885
1886       - docker-login
1887
1888       - maven-docker-push-daily:
1889           maven-version: '{maven-version}'
1890           pom: '{pom}'
1891           mvn-settings: '{mvn-settings}'
1892           pom: '{docker-pom}'
1893           # use default as mvn-profile if profile is not needed
1894           mvn-profile: '{mvn-profile}'
1895           mvn-params: '{mvn-params}'
1896
1897     publishers:
1898       - infra-shiplogs:
1899           maven-version: '{maven-version}'
1900
1901 - job-template:
1902     # Job template for building & pushing docker images for AAI specific repos
1903     #
1904     # The purpose of this job template is to run:
1905     #  1. login to the docker registry
1906     #  2. run maven goals
1907     #  3. run include-docker-push.sh
1908     #
1909     # Required Variables:
1910     #     pom:       name/location of the pom.xml file relative to the workspace
1911     #     maven-properties: properties passed to maven
1912
1913     name: '{project-name}-{stream}-aai-docker-java-daily'
1914     project-type: freestyle
1915     node: 'ubuntu1604-docker-8c-8g'
1916     docker-image-name: ''
1917     disabled: '{disabled}'
1918     properties:
1919       - infra-properties:
1920           build-days-to-keep: '{build-days-to-keep}'
1921
1922     parameters:
1923       - infra-parameters:
1924           project: '{project}'
1925           branch: '{branch}'
1926           refspec: 'refs/heads/{branch}'
1927           artifacts: '{archive-artifacts}'
1928       - maven-exec:
1929           maven-version: '{maven-version}'
1930       - docker-image-name:
1931           docker-image-name: '{docker-image-name}'
1932
1933     scm:
1934       - gerrit-trigger-scm:
1935           refspec: ''
1936           choosing-strategy: 'default'
1937           submodule-recursive: '{submodule-recursive}'
1938
1939     wrappers:
1940       - infra-wrappers:
1941           build-timeout: '{build-timeout}'
1942
1943     triggers:
1944       # 12 AM UTC
1945       - timed: 'H 12 * * *'
1946       - gerrit-trigger-release-manually:
1947           server: '{server-name}'
1948           project: '{project}'
1949           branch: '{branch}'
1950
1951     builders:
1952
1953       - provide-maven-settings:
1954           global-settings-file: 'global-settings'
1955           settings-file: '{mvn-settings}'
1956
1957       - docker-login
1958
1959       - maven-target:
1960           maven-version: '{maven-version}'
1961           pom: 'pom.xml'
1962           goals: 'clean install -DskipTests -B
1963             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1964           settings: '{mvn-settings}'
1965           settings-type: cfp
1966           global-settings: 'global-settings'
1967           global-settings-type: cfp
1968
1969       - maven-target:
1970           maven-version: '{maven-version}'
1971           pom: '{pom}'
1972           goals: '{mvn-goals}'
1973           settings: '{mvn-settings}'
1974           settings-type: cfp
1975           global-settings: 'global-settings'
1976           global-settings-type: cfp
1977           properties:
1978             - maven.test.skip=true
1979             - docker.pull.registry=nexus3.onap.org:10001
1980             - docker.push.registry=nexus3.onap.org:10003
1981
1982       - shell: !include-raw-escape: include-docker-push.sh
1983
1984     publishers:
1985       - infra-shiplogs:
1986           maven-version: '{maven-version}'
1987
1988 - job-template:
1989     # Job template for building & pushing docker images for AAI specific repos
1990     #
1991     # The purpose of this job template is to run:
1992     #  1. login to the docker registry
1993     #  2. run maven goals
1994     #  3. run include-docker-push.sh
1995     #
1996     # This job supports subprojects
1997     #
1998     # Required Variables:
1999     #     pom:       name/location of the pom.xml file relative to the workspace
2000     #     maven-properties: properties passed to maven
2001
2002     name: '{project-name}-{stream}-{subproject}-aai-docker-java-daily'
2003     project-type: freestyle
2004     node: 'ubuntu1604-docker-8c-8g'
2005     disabled: '{disabled}'
2006     docker-image-name: ''
2007
2008     properties:
2009       - infra-properties:
2010           build-days-to-keep: '{build-days-to-keep}'
2011
2012     parameters:
2013       - infra-parameters:
2014           project: '{project}'
2015           branch: '{branch}'
2016           refspec: 'refs/heads/{branch}'
2017           artifacts: '{archive-artifacts}'
2018       - maven-exec:
2019           maven-version: '{maven-version}'
2020       - docker-image-name:
2021           docker-image-name: '{docker-image-name}'
2022
2023     scm:
2024       - gerrit-trigger-scm:
2025           refspec: ''
2026           choosing-strategy: 'default'
2027           submodule-recursive: '{submodule-recursive}'
2028
2029     wrappers:
2030       - infra-wrappers:
2031           build-timeout: '{build-timeout}'
2032
2033     triggers:
2034       # 12 AM UTC
2035       - timed: 'H 12 * * *'
2036       - gerrit-trigger-release-manually:
2037           server: '{server-name}'
2038           project: '{project}'
2039           branch: '{branch}'
2040
2041     builders:
2042
2043       - provide-maven-settings:
2044           global-settings-file: 'global-settings'
2045           settings-file: '{mvn-settings}'
2046
2047       - docker-login
2048
2049       - maven-target:
2050           maven-version: '{maven-version}'
2051           pom: 'pom.xml'
2052           goals: 'clean install -DskipTests -B
2053             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
2054           settings: '{mvn-settings}'
2055           settings-type: cfp
2056           global-settings: 'global-settings'
2057           global-settings-type: cfp
2058
2059       - maven-target:
2060           maven-version: '{maven-version}'
2061           pom: '{pom}'
2062           goals: '{mvn-goals}'
2063           settings: '{mvn-settings}'
2064           settings-type: cfp
2065           global-settings: 'global-settings'
2066           global-settings-type: cfp
2067           properties:
2068             - maven.test.skip=true
2069             - docker.pull.registry=nexus3.onap.org:10001
2070             - docker.push.registry=nexus3.onap.org:10003
2071
2072       - shell: !include-raw-escape: include-docker-push.sh
2073
2074     publishers:
2075       - infra-shiplogs:
2076           maven-version: '{maven-version}'
2077
2078 - job-template:
2079     # Job template for Java daily release jobs
2080     #
2081     # The purpose of this job template is to run:
2082     # 1. inject a version.properties file and set versions
2083     # 2. change version in all POM files to the release version specified
2084     #    in version.properties. This is done using a script instread of
2085     #    the mvn version plugin that assumes some specific parent structure
2086     #
2087     # The POM files are required to use the Maven staging plugin so the deploy
2088     # does not deploy directly to the release repo.
2089     #
2090     # Required Variables:
2091     #     branch:    git branch (eg. stable/lithium or master)
2092
2093     name: '{project-name}-{stream}-release-version2-java-daily'
2094
2095     project-type: freestyle
2096     node: '{build-node}'
2097     disabled: '{disabled}'
2098     maven-deploy-properties:
2099     properties:
2100       - infra-properties:
2101           build-days-to-keep: '{build-days-to-keep}'
2102
2103     parameters:
2104       - infra-parameters:
2105           project: '{project}'
2106           branch: '{branch}'
2107           refspec: 'refs/heads/{branch}'
2108           artifacts: '{archive-artifacts}'
2109       - maven-exec:
2110           maven-version: '{maven-version}'
2111
2112     scm:
2113       - gerrit-trigger-scm:
2114           refspec: ''
2115           choosing-strategy: 'default'
2116           submodule-recursive: '{submodule-recursive}'
2117
2118     wrappers:
2119       - infra-wrappers:
2120           build-timeout: '{build-timeout}'
2121
2122     triggers:
2123       # 11 AM UTC
2124       - timed: 'H 11 * * *'
2125       - gerrit-trigger-release-manually:
2126           server: '{server-name}'
2127           project: '{project}'
2128           branch: '{branch}'
2129
2130     builders:
2131       - provide-maven-settings:
2132           global-settings-file: 'global-settings'
2133           settings-file: '{mvn-settings}'
2134       - maven-install:
2135           maven-version: '{maven-version}'
2136
2137       - inject:
2138           properties-file: version.properties
2139
2140       - shell: !include-raw-escape: include-update-pom-versions.sh
2141
2142       - maven-target:
2143           maven-version: '{maven-version}'
2144           goals: 'clean deploy site:site site:stage-deploy -B
2145             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
2146           properties:
2147             - '{maven-deploy-properties}'
2148           settings: '{mvn-settings}'
2149           settings-type: cfp
2150           global-settings: 'global-settings'
2151           global-settings-type: cfp
2152
2153     publishers:
2154       - infra-shiplogs:
2155           maven-version: '{maven-version}'
2156
2157 - job-template:
2158     # Job template for Java daily release jobs
2159     #
2160     # The purpose of this job template is to run:
2161     # 1. inject a version.properties file and set versions
2162     # 2. change version in all POM files to the release version specified
2163     #     in version.properties. This is done using a script instread of
2164     #     the mvn version plugin that assumes some specific parent structure
2165     #
2166     # The POM files are required to use the Maven staging plugin so the deploy
2167     # does not deploy directly to the release repo.
2168     #
2169     # Required Variables:
2170     #     branch:    git branch (eg. stable/lithium or master)
2171     #     pom:       name/location of the pom.xml file relative to the workspace
2172     #     pattern:   ant file-path pattern relative to the workspace used to
2173     #                trigger the job
2174
2175     name: '{project-name}-{stream}-{subproject}-release-version2-java-daily'
2176
2177     project-type: freestyle
2178     node: '{build-node}'
2179     disabled: '{disabled}'
2180     maven-deploy-properties:
2181     properties:
2182       - infra-properties:
2183           build-days-to-keep: '{build-days-to-keep}'
2184
2185     parameters:
2186       - infra-parameters:
2187           project: '{project}'
2188           branch: '{branch}'
2189           refspec: 'refs/heads/{branch}'
2190           artifacts: '{archive-artifacts}'
2191       - maven-exec:
2192           maven-version: '{maven-version}'
2193
2194     scm:
2195       - gerrit-trigger-scm:
2196           refspec: ''
2197           choosing-strategy: 'default'
2198           submodule-recursive: '{submodule-recursive}'
2199
2200     wrappers:
2201       - infra-wrappers:
2202           build-timeout: '{build-timeout}'
2203
2204     triggers:
2205       # 11 AM UTC
2206       - timed: 'H 11 * * *'
2207       - gerrit-trigger-release-manually:
2208           server: '{server-name}'
2209           project: '{project}'
2210           branch: '{branch}'
2211           files: '{pattern}'
2212
2213     builders:
2214       - provide-maven-settings:
2215           global-settings-file: 'global-settings'
2216           settings-file: '{mvn-settings}'
2217       - maven-install:
2218           maven-version: '{maven-version}'
2219
2220       - inject:
2221           properties-file: version.properties
2222
2223       - shell: !include-raw-escape: include-update-pom-versions.sh
2224
2225       - maven-target:
2226           maven-version: '{maven-version}'
2227           pom: '{pom}'
2228           goals: 'clean deploy site:site site:stage-deploy -B
2229             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
2230           properties:
2231             - '{maven-deploy-properties}'
2232           settings: '{mvn-settings}'
2233           settings-type: cfp
2234           global-settings: 'global-settings'
2235           global-settings-type: cfp
2236
2237     publishers:
2238       - infra-shiplogs:
2239           maven-version: '{maven-version}'
2240
2241 - job-template:
2242     # Job template for Java daily release jobs
2243     #
2244     # The purpose of this job template is to run:
2245     #  1. inject a version.properties file and set versions
2246     #  2. change version in all POM files to the release version specified
2247     #     in version.properties. This is done using a script instread of
2248     #     the mvn version plugin that assumes some specific parent structure
2249     #     This version does NOT change the version within the <parent> tag
2250     #
2251     # The POM files are required to use the Maven staging plugin so the deploy
2252     # does not deploy directly to the release repo.
2253     #
2254     # Required Variables:
2255     #     branch:    git branch (eg. stable/lithium or master)
2256     #     pom:       name/location of the pom.xml file relative to the workspace
2257     #     pattern:   ant file-path pattern relative to the workspace used to
2258     #                trigger the job
2259
2260     name: '{project-name}-{stream}-{subproject}-release-version3-java-daily'
2261
2262     project-type: freestyle
2263     node: '{build-node}'
2264     disabled: '{disabled}'
2265     maven-deploy-properties:
2266     properties:
2267       - infra-properties:
2268           build-days-to-keep: '{build-days-to-keep}'
2269
2270     parameters:
2271       - infra-parameters:
2272           project: '{project}'
2273           branch: '{branch}'
2274           refspec: 'refs/heads/{branch}'
2275           artifacts: '{archive-artifacts}'
2276       - maven-exec:
2277           maven-version: '{maven-version}'
2278
2279     scm:
2280       - gerrit-trigger-scm:
2281           refspec: ''
2282           choosing-strategy: 'default'
2283           submodule-recursive: '{submodule-recursive}'
2284
2285     wrappers:
2286       - infra-wrappers:
2287           build-timeout: '{build-timeout}'
2288
2289     triggers:
2290       # 11 AM UTC
2291       - timed: 'H 11 * * *'
2292       - gerrit-trigger-release-manually:
2293           server: '{server-name}'
2294           project: '{project}'
2295           branch: '{branch}'
2296           files: '{pattern}'
2297
2298     builders:
2299       - provide-maven-settings:
2300           global-settings-file: 'global-settings'
2301           settings-file: '{mvn-settings}'
2302       - maven-install:
2303           maven-version: '{maven-version}'
2304
2305       - inject:
2306           properties-file: version.properties
2307
2308       - shell: !include-raw-escape: include-update-pom-versions-not-parent.sh
2309
2310       - maven-target:
2311           maven-version: '{maven-version}'
2312           pom: '{pom}'
2313           goals: 'clean deploy site:site site:stage-deploy -B
2314             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
2315           properties:
2316             - '{maven-deploy-properties}'
2317           settings: '{mvn-settings}'
2318           settings-type: cfp
2319           global-settings: 'global-settings'
2320           global-settings-type: cfp
2321
2322     publishers:
2323       - infra-shiplogs:
2324           maven-version: '{maven-version}'
2325
2326 - job-template:
2327     # Job template for Java merge jobs for SDC specific repos
2328     #
2329     # The purpose of this job template is to run:
2330     # 1. maven clean deploy
2331     #
2332     # Required Variables:
2333     #     branch:    git branch (eg. stable/lithium or master)
2334
2335     name: '{project-name}-{stream}-sdc-merge-java'
2336
2337     project-type: freestyle
2338     node: 'ubuntu1604-docker-8c-8g'
2339     build-timeout: 120
2340
2341     properties:
2342       - infra-properties:
2343           build-days-to-keep: '{build-days-to-keep}'
2344
2345     parameters:
2346       - infra-parameters:
2347           project: '{project}'
2348           branch: '{branch}'
2349           refspec: 'refs/heads/{branch}'
2350           artifacts: '{archive-artifacts}'
2351       - maven-exec:
2352           maven-version: '{maven-version}'
2353
2354     scm:
2355       - gerrit-trigger-scm:
2356           refspec: ''
2357           choosing-strategy: 'default'
2358           submodule-recursive: '{submodule-recursive}'
2359
2360     wrappers:
2361       - infra-wrappers:
2362           build-timeout: '{build-timeout}'
2363
2364     triggers:
2365       - gerrit-trigger-patch-merged:
2366           server: '{server-name}'
2367           project: '{project}'
2368           branch: '{branch}'
2369           files: '**'
2370
2371     builders:
2372       - provide-maven-settings:
2373           global-settings-file: 'global-settings'
2374           settings-file: '{mvn-settings}'
2375
2376       - docker-login
2377
2378       - maven-docker-push-daily-test:
2379           maven-version: '{maven-version}'
2380           mvn-settings: '{mvn-settings}'
2381           pom: '{docker-pom}'
2382           # use default as mvn-profile if profile is not needed
2383           mvn-profile: '{mvn-profile}'
2384
2385     publishers:
2386       - infra-shiplogs:
2387           maven-version: '{maven-version}'
2388
2389 - job-template:
2390     # Job template for building & pushing docker images for AAI specific repos
2391     #
2392     # The purpose of this job template is to run:
2393     #  1. login to the docker registry
2394     #  2. run maven clean install goals skipping tests
2395     #  3. run maven goals
2396     #
2397     # Required Variables:
2398     #     pom:       name/location of the pom.xml file relative to the workspace
2399     #     maven-properties: properties passed to maven
2400
2401     name: '{project-name}-{stream}-aai-docker-java-version-daily'
2402     project-type: freestyle
2403     node: 'ubuntu1604-docker-8c-8g'
2404     disabled: '{disabled}'
2405     properties:
2406       - infra-properties:
2407           build-days-to-keep: '{build-days-to-keep}'
2408
2409     parameters:
2410       - infra-parameters:
2411           project: '{project}'
2412           branch: '{branch}'
2413           refspec: 'refs/heads/{branch}'
2414           artifacts: '{archive-artifacts}'
2415       - maven-exec:
2416           maven-version: '{maven-version}'
2417
2418     scm:
2419       - gerrit-trigger-scm:
2420           refspec: ''
2421           choosing-strategy: 'default'
2422           submodule-recursive: '{submodule-recursive}'
2423
2424     wrappers:
2425       - infra-wrappers:
2426           build-timeout: '{build-timeout}'
2427
2428     triggers:
2429       # 12 AM UTC
2430       - timed: 'H 12 * * *'
2431       - gerrit-trigger-release-manually:
2432           server: '{server-name}'
2433           project: '{project}'
2434           branch: '{branch}'
2435
2436     builders:
2437
2438       - provide-maven-settings:
2439           global-settings-file: 'global-settings'
2440           settings-file: '{mvn-settings}'
2441
2442       - docker-login
2443
2444       - maven-target:
2445           maven-version: '{maven-version}'
2446           pom: 'pom.xml'
2447           goals: 'clean install -DskipTests -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
2448           settings: '{mvn-settings}'
2449           settings-type: cfp
2450           global-settings: 'global-settings'
2451           global-settings-type: cfp
2452
2453       - maven-target:
2454           maven-version: '{maven-version}'
2455           pom: '{pom}'
2456           goals: '{mvn-goals}'
2457           settings: '{mvn-settings}'
2458           settings-type: cfp
2459           global-settings: 'global-settings'
2460           global-settings-type: cfp
2461           properties:
2462             - maven.test.skip=true
2463             - docker.pull.registry=nexus3.onap.org:10001
2464             - docker.push.registry=nexus3.onap.org:10003
2465
2466     publishers:
2467       - infra-shiplogs:
2468           maven-version: '{maven-version}'
2469