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