Add step for version to release-checkstyle
[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           java-opts:
427             - '-Xmx4096m -XX:MaxPermSize=512m'
428           settings: '{mvn-settings}'
429           settings-type: cfp
430           global-settings: 'global-settings'
431           global-settings-type: cfp
432
433     publishers:
434       - infra-shiplogs:
435           maven-version: '{maven-version}'
436
437 - job-template:
438     # Job template for Java daily release jobs running checkstyle at the end
439     # When checkstyle will be fully incorporated, it is meant to replace
440     #  '{project-name}-{stream}-release-java-daily'
441     # The purpose of this job template is to run "maven version && maven clean
442     # deploy" for projects using this template.
443     #
444     # Required Variables:
445     #     branch:    git branch (eg. stable/lithium or master)
446     name: '{project-name}-{stream}-release-java-daily-checkstyle'
447     project-type: freestyle
448     node: '{build-node}'
449     maven-deploy-properties:
450     properties:
451       - infra-properties:
452           build-days-to-keep: '{build-days-to-keep}'
453     parameters:
454       - infra-parameters:
455           project: '{project}'
456           branch: '{branch}'
457           refspec: 'refs/heads/{branch}'
458           artifacts: '{archive-artifacts}'
459       - maven-exec:
460           maven-version: '{maven-version}'
461     scm:
462       - gerrit-trigger-scm:
463           refspec: ''
464           choosing-strategy: 'default'
465           submodule-recursive: '{submodule-recursive}'
466     wrappers:
467       - infra-wrappers:
468           build-timeout: '{build-timeout}'
469     triggers:
470       # 11 AM UTC
471       - timed: 'H 11 * * *'
472       - gerrit-trigger-release-manually:
473           server: '{server-name}'
474           project: '{project}'
475           branch: '{branch}'
476     builders:
477       - provide-maven-settings:
478           global-settings-file: 'global-settings'
479           settings-file: '{mvn-settings}'
480       - conditional-step:
481           condition-kind: regex-match
482           regex: DoSetVersion
483           label: '{setVersion}'
484           steps:
485             - inject:
486                 properties-file: version.properties
487             - maven-target:
488                 maven-version: '{maven-version}'
489                 goals: 'versions:set versions:update-child-modules versions:commit -B'
490                 properties:
491                   - 'newVersion=${{release_version}}'
492                 settings: '{mvn-settings}'
493                 settings-type: cfp
494                 global-settings: 'global-settings'
495                 global-settings-type: cfp
496       - maven-target:
497           maven-version: '{maven-version}'
498           goals: 'clean deploy sonar:sonar -Dsonar.host.url=${{SONAR}} -B
499             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
500           properties: '{obj:mvn_properties}'
501           settings: '{mvn-settings}'
502           settings-type: cfp
503           global-settings: 'global-settings'
504           global-settings-type: cfp
505     publishers:
506       - infra-shiplogs:
507           maven-version: '{maven-version}'
508       - checkstyle-result-daily
509
510 - job-template:
511     # Job template for Java daily release jobs
512     #
513     # The purpose of this job template is to run "maven version && maven clean
514     # deploy" for projects using this template.
515     #
516     # Required Variables:
517     #     branch:    git branch (eg. stable/lithium or master)
518     name: '{project-name}-{stream}-release-version-java-daily-no-sonar'
519
520     project-type: freestyle
521     node: '{build-node}'
522     maven-deploy-properties:
523     properties:
524       - infra-properties:
525           build-days-to-keep: '{build-days-to-keep}'
526
527     parameters:
528       - infra-parameters:
529           project: '{project}'
530           branch: '{branch}'
531           refspec: 'refs/heads/{branch}'
532           artifacts: '{archive-artifacts}'
533       - maven-exec:
534           maven-version: '{maven-version}'
535
536     scm:
537       - gerrit-trigger-scm:
538           refspec: ''
539           choosing-strategy: 'default'
540           submodule-recursive: '{submodule-recursive}'
541
542     wrappers:
543       - infra-wrappers:
544           build-timeout: '{build-timeout}'
545
546     triggers:
547       # 11 AM UTC
548       - timed: 'H 11 * * *'
549       - gerrit-trigger-release-manually:
550           server: '{server-name}'
551           project: '{project}'
552           branch: '{branch}'
553
554     builders:
555       - provide-maven-settings:
556           global-settings-file: 'global-settings'
557           settings-file: '{mvn-settings}'
558
559       - inject:
560           properties-file: version.properties
561       - maven-target:
562           maven-version: '{maven-version}'
563           goals: 'versions:set versions:update-child-modules versions:commit -B'
564           properties:
565             - 'newVersion=${{release_version}}'
566           settings: '{mvn-settings}'
567           settings-type: cfp
568           global-settings: 'global-settings'
569           global-settings-type: cfp
570
571       - maven-target:
572           maven-version: '{maven-version}'
573           goals: 'clean deploy -B
574             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
575           properties:
576             - '{maven-deploy-properties}'
577           settings: '{mvn-settings}'
578           settings-type: cfp
579           global-settings: 'global-settings'
580           global-settings-type: cfp
581
582     publishers:
583       - infra-shiplogs:
584           maven-version: '{maven-version}'
585
586 - job-template:
587     # Job template for Java daily release jobs
588     #
589     # The purpose of this job template is to run "maven version && maven clean
590     # deploy" for projects using this template.
591     # This template supports subprojects.
592     #
593     # Required Variables:
594     #     branch:    git branch (eg. stable/lithium or master)
595     name: '{project-name}-{stream}-{subproject}-release-version-java-daily-no-sonar'
596
597     project-type: freestyle
598     node: '{build-node}'
599     maven-deploy-properties:
600     properties:
601       - infra-properties:
602           build-days-to-keep: '{build-days-to-keep}'
603
604     parameters:
605       - infra-parameters:
606           project: '{project}'
607           branch: '{branch}'
608           refspec: 'refs/heads/{branch}'
609           artifacts: '{archive-artifacts}'
610       - maven-exec:
611           maven-version: '{maven-version}'
612
613     scm:
614       - gerrit-trigger-scm:
615           refspec: ''
616           choosing-strategy: 'default'
617           submodule-recursive: '{submodule-recursive}'
618
619     wrappers:
620       - infra-wrappers:
621           build-timeout: '{build-timeout}'
622
623     triggers:
624       # 11 AM UTC
625       - timed: 'H 11 * * *'
626       - gerrit-trigger-release-manually:
627           server: '{server-name}'
628           project: '{project}'
629           branch: '{branch}'
630
631     builders:
632       - provide-maven-settings:
633           global-settings-file: 'global-settings'
634           settings-file: '{mvn-settings}'
635
636       - inject:
637           properties-file: version.properties
638       - maven-target:
639           maven-version: '{maven-version}'
640           pom: '{pom}'
641           goals: 'versions:set versions:update-child-modules versions:commit -B'
642           properties:
643             - 'newVersion=${{release_version}}'
644           settings: '{mvn-settings}'
645           settings-type: cfp
646           global-settings: 'global-settings'
647           global-settings-type: cfp
648
649       - maven-target:
650           maven-version: '{maven-version}'
651           pom: '{pom}'
652           goals: 'clean deploy -B
653             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
654           properties:
655             - '{maven-deploy-properties}'
656           settings: '{mvn-settings}'
657           settings-type: cfp
658           global-settings: 'global-settings'
659           global-settings-type: cfp
660
661     publishers:
662       - infra-shiplogs:
663           maven-version: '{maven-version}'
664
665 - job-template:
666     # Job template for Java daily release jobs
667     #
668     # The purpose of this job template is to run "maven version && maven clean
669     # deploy" for projects using this template.
670     #
671     # Required Variables:
672     #     branch:    git branch (eg. stable/lithium or master)
673     name: '{project-name}-{stream}-release-version-java-daily'
674
675     project-type: freestyle
676     node: '{build-node}'
677     maven-deploy-properties:
678     properties:
679       - infra-properties:
680           build-days-to-keep: '{build-days-to-keep}'
681
682     parameters:
683       - infra-parameters:
684           project: '{project}'
685           branch: '{branch}'
686           refspec: 'refs/heads/{branch}'
687           artifacts: '{archive-artifacts}'
688       - maven-exec:
689           maven-version: '{maven-version}'
690
691     scm:
692       - gerrit-trigger-scm:
693           refspec: ''
694           choosing-strategy: 'default'
695           submodule-recursive: '{submodule-recursive}'
696
697     wrappers:
698       - infra-wrappers:
699           build-timeout: '{build-timeout}'
700
701     triggers:
702       # 11 AM UTC
703       - timed: 'H 11 * * *'
704       - gerrit-trigger-release-manually:
705           server: '{server-name}'
706           project: '{project}'
707           branch: '{branch}'
708
709     builders:
710       - provide-maven-settings:
711           global-settings-file: 'global-settings'
712           settings-file: '{mvn-settings}'
713
714       - inject:
715           properties-file: version.properties
716       - maven-target:
717           maven-version: '{maven-version}'
718           goals: 'versions:set versions:update-child-modules versions:commit -B'
719           properties:
720             - 'newVersion=${{release_version}}'
721           settings: '{mvn-settings}'
722           settings-type: cfp
723           global-settings: 'global-settings'
724           global-settings-type: cfp
725
726       - maven-target:
727           maven-version: '{maven-version}'
728           goals: 'clean deploy sonar:sonar -Dsonar.host.url=${{SONAR}} -B
729             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
730           properties:
731             - '{maven-deploy-properties}'
732           settings: '{mvn-settings}'
733           settings-type: cfp
734           global-settings: 'global-settings'
735           global-settings-type: cfp
736
737     publishers:
738       - infra-shiplogs:
739           maven-version: '{maven-version}'
740
741 - job-template:
742     # Job template for Java daily release jobs with POM not at the root
743     #
744     # The purpose of this job template is to run "maven version && maven clean
745     # deploy" for projects using this template.
746     #
747     # Required Variables:
748     #     branch:    git branch (eg. stable/lithium or master)
749     #     pom:       name/location of the pom.xml file relative to the workspace
750
751
752     name: '{project-name}-{stream}-{subproject}-release-java-daily'
753
754     project-type: freestyle
755     node: '{build-node}'
756     maven-deploy-properties:
757     properties:
758       - infra-properties:
759           build-days-to-keep: '{build-days-to-keep}'
760
761     parameters:
762       - infra-parameters:
763           project: '{project}'
764           branch: '{branch}'
765           refspec: 'refs/heads/{branch}'
766           artifacts: '{archive-artifacts}'
767       - maven-exec:
768           maven-version: '{maven-version}'
769
770     scm:
771       - gerrit-trigger-scm:
772           refspec: ''
773           choosing-strategy: 'default'
774           submodule-recursive: '{submodule-recursive}'
775
776     wrappers:
777       - infra-wrappers:
778           build-timeout: '{build-timeout}'
779
780     triggers:
781       # 11 AM UTC
782       - timed: 'H 11 * * *'
783       - gerrit-trigger-release-manually:
784           server: '{server-name}'
785           project: '{project}'
786           branch: '{branch}'
787
788     builders:
789       - provide-maven-settings:
790           global-settings-file: 'global-settings'
791           settings-file: '{mvn-settings}'
792
793       - maven-target:
794           maven-version: '{maven-version}'
795           pom: '{pom}'
796           goals: 'clean deploy sonar:sonar -Dsonar.host.url=${{SONAR}} -B
797             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
798           properties:
799             - '{maven-deploy-properties}'
800           java-opts:
801             - '-Xmx4096m -XX:MaxPermSize=512m'
802           settings: '{mvn-settings}'
803           settings-type: cfp
804           global-settings: 'global-settings'
805           global-settings-type: cfp
806
807     publishers:
808       - infra-shiplogs:
809           maven-version: '{maven-version}'
810
811 - job-template:
812     # Job template for Java merge jobs
813     #
814     # The purpose of this job template is to run "maven clean deploy" for
815     # projects using this template.
816     #
817     # Required Variables:
818     #     branch:    git branch (eg. stable/lithium or master)
819     name: '{project-name}-{stream}-merge-java'
820
821     project-type: freestyle
822     node: '{build-node}'
823
824     properties:
825       - infra-properties:
826           build-days-to-keep: '{build-days-to-keep}'
827
828     parameters:
829       - infra-parameters:
830           project: '{project}'
831           branch: '{branch}'
832           refspec: 'refs/heads/{branch}'
833           artifacts: '{archive-artifacts}'
834       - maven-exec:
835           maven-version: '{maven-version}'
836
837     scm:
838       - gerrit-trigger-scm:
839           refspec: ''
840           choosing-strategy: 'default'
841           submodule-recursive: '{submodule-recursive}'
842
843     wrappers:
844       - infra-wrappers:
845           build-timeout: '{build-timeout}'
846
847     triggers:
848       - gerrit-trigger-patch-merged:
849           server: '{server-name}'
850           project: '{project}'
851           branch: '{branch}'
852           files: '**'
853
854     builders:
855       - provide-maven-settings:
856           global-settings-file: 'global-settings'
857           settings-file: '{mvn-settings}'
858       - maven-target:
859           maven-version: '{maven-version}'
860           goals: 'clean deploy -B
861             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
862           settings: '{mvn-settings}'
863           settings-type: cfp
864           global-settings: 'global-settings'
865           global-settings-type: cfp
866
867     publishers:
868       - infra-shiplogs:
869           maven-version: '{maven-version}'
870
871 - job-template:
872     # Job template for Java merge jobs based on
873     #   '{project-name}-{stream}-merge-java'
874     # The purpose of this job template is to run "maven clean deploy" for
875     # projects using this template.
876     #
877     # Required Variables:
878     #     branch:    git branch (eg. stable/lithium or master)
879     #     maven-properties: properties passed to maven
880     name: '{project-name}-{stream}-merge-properties-java'
881
882     project-type: freestyle
883     node: '{build-node}'
884
885     properties:
886       - infra-properties:
887           build-days-to-keep: '{build-days-to-keep}'
888
889     parameters:
890       - infra-parameters:
891           project: '{project}'
892           branch: '{branch}'
893           refspec: 'refs/heads/{branch}'
894           artifacts: '{archive-artifacts}'
895       - maven-exec:
896           maven-version: '{maven-version}'
897
898     scm:
899       - gerrit-trigger-scm:
900           refspec: ''
901           choosing-strategy: 'default'
902           submodule-recursive: '{submodule-recursive}'
903
904     wrappers:
905       - infra-wrappers:
906           build-timeout: '{build-timeout}'
907
908     triggers:
909       - gerrit-trigger-patch-merged:
910           server: '{server-name}'
911           project: '{project}'
912           branch: '{branch}'
913           files: '**'
914
915     builders:
916       - provide-maven-settings:
917           global-settings-file: 'global-settings'
918           settings-file: '{mvn-settings}'
919       - maven-target:
920           maven-version: '{maven-version}'
921           goals: 'clean deploy -B
922             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
923           settings: '{mvn-settings}'
924           settings-type: cfp
925           global-settings: 'global-settings'
926           global-settings-type: cfp
927           properties: '{obj:mvn_properties}'
928
929     publishers:
930       - infra-shiplogs:
931           maven-version: '{maven-version}'
932
933 - job-template:
934     # Job template for Java merge jobs that takes a maven template
935     #
936     # The purpose of this job template is to run "maven clean deploy -P {x}"
937     # for projects using this template.
938     #
939     # Required Variables:
940     #     branch:    git branch (eg. stable/lithium or master)
941     name: '{project-name}-{stream}-merge-profile-java'
942
943     project-type: freestyle
944     node: '{build-node}'
945
946     properties:
947       - infra-properties:
948           build-days-to-keep: '{build-days-to-keep}'
949
950     parameters:
951       - infra-parameters:
952           project: '{project}'
953           branch: '{branch}'
954           refspec: 'refs/heads/{branch}'
955           artifacts: '{archive-artifacts}'
956       - maven-exec:
957           maven-version: '{maven-version}'
958
959     scm:
960       - gerrit-trigger-scm:
961           refspec: ''
962           choosing-strategy: 'default'
963           submodule-recursive: '{submodule-recursive}'
964
965     wrappers:
966       - infra-wrappers:
967           build-timeout: '{build-timeout}'
968
969     triggers:
970       - gerrit-trigger-patch-merged:
971           server: '{server-name}'
972           project: '{project}'
973           branch: '{branch}'
974           files: '**'
975
976     builders:
977       - provide-maven-settings:
978           global-settings-file: 'global-settings'
979           settings-file: '{mvn-settings}'
980
981       - docker-login
982
983       - maven-target:
984           maven-version: '{maven-version}'
985           goals: 'clean deploy -P {mvn-profile} -B
986             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
987           settings: '{mvn-settings}'
988           settings-type: cfp
989           global-settings: 'global-settings'
990           global-settings-type: cfp
991           properties:
992             - docker.pull.registry=nexus3.onap.org:10001
993             - docker.push.registry=nexus3.onap.org:10003
994
995     publishers:
996       - infra-shiplogs:
997           maven-version: '{maven-version}'
998
999 - job-template:
1000     # Job template for Java merge jobs that should also be triggered by upstream
1001     # merges
1002     #
1003     # Required Variables:
1004     #   stream:         release stream
1005     #   branch:         git branch
1006     #   dependencies:   fully qualified upstream job name to trigger on
1007     #                   this may be ''
1008     name: '{project-name}-{stream}-downstream-merge-java'
1009
1010     project-type: freestyle
1011     node: '{build-node}'
1012
1013     properties:
1014       - infra-properties:
1015           build-days-to-keep: '{build-days-to-keep}'
1016
1017     parameters:
1018       - infra-parameters:
1019           project: '{project}'
1020           branch: '{branch}'
1021           refspec: 'refs/heads/{branch}'
1022           artifacts: '{archive-artifacts}'
1023       - maven-exec:
1024           maven-version: '{maven-version}'
1025
1026     scm:
1027       - gerrit-trigger-scm:
1028           refspec: ''
1029           choosing-strategy: 'default'
1030           submodule-recursive: '{submodule-recursive}'
1031
1032     wrappers:
1033       - infra-wrappers:
1034           build-timeout: '{build-timeout}'
1035
1036     triggers:
1037       - reverse:
1038           jobs: '{dependencies}'
1039           result: 'success'
1040       - gerrit-trigger-patch-merged:
1041           server: '{server-name}'
1042           project: '{project}'
1043           branch: '{branch}'
1044           files: '**'
1045
1046     builders:
1047       - provide-maven-settings:
1048           global-settings-file: 'global-settings'
1049           settings-file: '{mvn-settings}'
1050       - maven-target:
1051           maven-version: '{maven-version}'
1052           goals: 'clean deploy -B
1053             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1054           settings: '{mvn-settings}'
1055           settings-type: cfp
1056           global-settings: 'global-settings'
1057           global-settings-type: cfp
1058
1059     publishers:
1060       - infra-shiplogs:
1061           maven-version: '{maven-version}'
1062
1063 - job-template:
1064     # Job template for Java merge jobs with POM not at the root
1065     #
1066     # The purpose of this job template is to run "maven clean deploy" for
1067     # projects using this template.
1068     #
1069     # Required Variables:
1070     #     branch:    git branch (eg. stable/lithium or master)
1071     #     pom:       name/location of the pom.xml file relative to the workspace
1072     #     pattern:   ant file-path pattern relative to the workspace used to
1073     #                trigger the job
1074
1075     name: '{project-name}-{stream}-{subproject}-merge-java'
1076
1077     project-type: freestyle
1078     node: '{build-node}'
1079
1080     properties:
1081       - infra-properties:
1082           build-days-to-keep: '{build-days-to-keep}'
1083
1084     parameters:
1085       - infra-parameters:
1086           project: '{project}'
1087           branch: '{branch}'
1088           refspec: 'refs/heads/{branch}'
1089           artifacts: '{archive-artifacts}'
1090       - maven-exec:
1091           maven-version: '{maven-version}'
1092
1093     scm:
1094       - gerrit-trigger-scm:
1095           refspec: ''
1096           choosing-strategy: 'default'
1097           submodule-recursive: '{submodule-recursive}'
1098
1099     wrappers:
1100       - infra-wrappers:
1101           build-timeout: '{build-timeout}'
1102
1103     triggers:
1104       - gerrit-trigger-patch-merged:
1105           server: '{server-name}'
1106           project: '{project}'
1107           branch: '{branch}'
1108           files: '{pattern}'
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           pom: '{pom}'
1117           goals: 'clean deploy -B
1118             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1119           settings: '{mvn-settings}'
1120           settings-type: cfp
1121           global-settings: 'global-settings'
1122           global-settings-type: cfp
1123
1124     publishers:
1125       - infra-shiplogs:
1126           maven-version: '{maven-version}'
1127
1128 - job-template:
1129     name: '{project-name}-{stream}-docker-java-daily'
1130     project-type: freestyle
1131     node: 'ubuntu1604-docker-8c-8g'
1132
1133     properties:
1134       - infra-properties:
1135           build-days-to-keep: '{build-days-to-keep}'
1136
1137     parameters:
1138       - infra-parameters:
1139           project: '{project}'
1140           branch: '{branch}'
1141           refspec: 'refs/heads/{branch}'
1142           artifacts: '{archive-artifacts}'
1143       - maven-exec:
1144           maven-version: '{maven-version}'
1145
1146     scm:
1147       - gerrit-trigger-scm:
1148           refspec: ''
1149           choosing-strategy: 'default'
1150           submodule-recursive: '{submodule-recursive}'
1151
1152     wrappers:
1153       - infra-wrappers:
1154           build-timeout: '{build-timeout}'
1155
1156     triggers:
1157       # 12 AM UTC
1158       - timed: 'H 12 * * *'
1159       - gerrit-trigger-release-manually:
1160           server: '{server-name}'
1161           project: '{project}'
1162           branch: '{branch}'
1163
1164     builders:
1165
1166       - provide-maven-settings:
1167           global-settings-file: 'global-settings'
1168           settings-file: '{mvn-settings}'
1169
1170       - docker-login
1171
1172       - maven-docker-push-daily:
1173           maven-version: '{maven-version}'
1174           mvn-settings: '{mvn-settings}'
1175           pom: '{docker-pom}'
1176           # use default as mvn-profile if profile is not needed
1177           mvn-profile: '{mvn-profile}'
1178
1179     publishers:
1180       - infra-shiplogs:
1181           maven-version: '{maven-version}'
1182
1183 - job-template:
1184     # Job template for building & pushing docker images
1185     #
1186     # The purpose of this job template is to run :
1187     #  1. login to the docker registry
1188     #  2. do a clean deploy on the specified profile
1189     #
1190     # Required Variables:
1191     #     pom:       name/location of the pom.xml file relative to the workspace
1192     #     profile:   the docker profile defined in the pom
1193     #     maven-properties: properties passed to maven
1194     name: '{project-name}-{stream}-docker-java-properties-daily'
1195     project-type: freestyle
1196     node: 'ubuntu1604-docker-8c-8g'
1197     properties:
1198       - infra-properties:
1199           build-days-to-keep: '{build-days-to-keep}'
1200     parameters:
1201       - infra-parameters:
1202           project: '{project}'
1203           branch: '{branch}'
1204           refspec: 'refs/heads/{branch}'
1205           artifacts: '{archive-artifacts}'
1206       - maven-exec:
1207           maven-version: '{maven-version}'
1208     scm:
1209       - gerrit-trigger-scm:
1210           refspec: ''
1211           choosing-strategy: 'default'
1212           submodule-recursive: '{submodule-recursive}'
1213     wrappers:
1214       - infra-wrappers:
1215           build-timeout: '{build-timeout}'
1216     triggers:
1217       # 12 AM UTC
1218       - timed: 'H 12 * * *'
1219       - gerrit-trigger-release-manually:
1220           server: '{server-name}'
1221           project: '{project}'
1222           branch: '{branch}'
1223     builders:
1224       - provide-maven-settings:
1225           global-settings-file: 'global-settings'
1226           settings-file: '{mvn-settings}'
1227       - docker-login
1228       - maven-docker-push-daily:
1229           maven-version: '{maven-version}'
1230           mvn-settings: '{mvn-settings}'
1231           pom: '{docker-pom}'
1232           properties: '{maven-properties}'
1233           # use default as mvn-profile if profile is not needed
1234           mvn-profile: '{mvn-profile}'
1235     publishers:
1236       - infra-shiplogs:
1237           maven-version: '{maven-version}'
1238
1239 - job-template:
1240     name: '{project-name}-{stream}-docker-java-shell-daily'
1241     project-type: freestyle
1242     node: 'ubuntu1604-docker-8c-8g'
1243
1244     properties:
1245       - infra-properties:
1246           build-days-to-keep: '{build-days-to-keep}'
1247
1248     parameters:
1249       - infra-parameters:
1250           project: '{project}'
1251           branch: '{branch}'
1252           refspec: 'refs/heads/{branch}'
1253           artifacts: '{archive-artifacts}'
1254       - maven-exec:
1255           maven-version: '{maven-version}'
1256
1257     scm:
1258       - gerrit-trigger-scm:
1259           refspec: ''
1260           choosing-strategy: 'default'
1261           submodule-recursive: '{submodule-recursive}'
1262
1263     wrappers:
1264       - infra-wrappers:
1265           build-timeout: '{build-timeout}'
1266
1267     triggers:
1268       # 12 AM UTC
1269       - timed: 'H 12 * * *'
1270       - gerrit-trigger-release-manually:
1271           server: '{server-name}'
1272           project: '{project}'
1273           branch: '{branch}'
1274
1275     builders:
1276
1277       - provide-maven-settings:
1278           global-settings-file: 'global-settings'
1279           settings-file: '{mvn-settings}'
1280
1281       - docker-login
1282
1283       - maven-target:
1284           maven-version: '{maven-version}'
1285           goals: '{mvn-goals}'
1286           settings: '{mvn-settings}'
1287           settings-type: cfp
1288           global-settings: 'global-settings'
1289           global-settings-type: cfp
1290
1291       - shell: '{script}'
1292
1293     publishers:
1294       - infra-shiplogs:
1295           maven-version: '{maven-version}'
1296
1297 - job-template:
1298     name: '{project-name}-{stream}-docker-java-version-shell-daily'
1299     project-type: freestyle
1300     node: 'ubuntu1604-docker-8c-8g'
1301
1302     properties:
1303       - infra-properties:
1304           build-days-to-keep: '{build-days-to-keep}'
1305
1306     parameters:
1307       - infra-parameters:
1308           project: '{project}'
1309           branch: '{branch}'
1310           refspec: 'refs/heads/{branch}'
1311           artifacts: '{archive-artifacts}'
1312       - maven-exec:
1313           maven-version: '{maven-version}'
1314
1315     scm:
1316       - gerrit-trigger-scm:
1317           refspec: ''
1318           choosing-strategy: 'default'
1319           submodule-recursive: '{submodule-recursive}'
1320
1321     wrappers:
1322       - infra-wrappers:
1323           build-timeout: '{build-timeout}'
1324
1325     triggers:
1326       # 12 AM UTC
1327       - timed: 'H 12 * * *'
1328       - gerrit-trigger-release-manually:
1329           server: '{server-name}'
1330           project: '{project}'
1331           branch: '{branch}'
1332
1333     builders:
1334
1335       - provide-maven-settings:
1336           global-settings-file: 'global-settings'
1337           settings-file: '{mvn-settings}'
1338
1339       - inject:
1340           properties-file: version.properties
1341
1342       - maven-target:
1343           maven-version: '{maven-version}'
1344           goals: 'versions:set versions:update-child-modules versions:commit -B'
1345           properties:
1346             - 'newVersion=${{release_version}}'
1347           settings: '{mvn-settings}'
1348           settings-type: cfp
1349           global-settings: 'global-settings'
1350           global-settings-type: cfp
1351
1352       - docker-login
1353
1354       - maven-target:
1355           maven-version: '{maven-version}'
1356           goals: '{mvn-goals}'
1357           settings: '{mvn-settings}'
1358           settings-type: cfp
1359           global-settings: 'global-settings'
1360           global-settings-type: cfp
1361
1362       - shell: '{script}'
1363
1364     publishers:
1365       - infra-shiplogs:
1366           maven-version: '{maven-version}'
1367
1368 - job-template:
1369     name: '{project-name}-{stream}-docker-version-java-daily'
1370     project-type: freestyle
1371     node: 'ubuntu1604-docker-8c-8g'
1372
1373     properties:
1374       - infra-properties:
1375           build-days-to-keep: '{build-days-to-keep}'
1376
1377     parameters:
1378       - infra-parameters:
1379           project: '{project}'
1380           branch: '{branch}'
1381           refspec: 'refs/heads/{branch}'
1382           artifacts: '{archive-artifacts}'
1383       - maven-exec:
1384           maven-version: '{maven-version}'
1385
1386     scm:
1387       - gerrit-trigger-scm:
1388           refspec: ''
1389           choosing-strategy: 'default'
1390           submodule-recursive: '{submodule-recursive}'
1391
1392     wrappers:
1393       - infra-wrappers:
1394           build-timeout: '{build-timeout}'
1395
1396     triggers:
1397       # 12 AM UTC
1398       - timed: 'H 12 * * *'
1399       - gerrit-trigger-release-manually:
1400           server: '{server-name}'
1401           project: '{project}'
1402           branch: '{branch}'
1403
1404     builders:
1405
1406       - provide-maven-settings:
1407           global-settings-file: 'global-settings'
1408           settings-file: '{mvn-settings}'
1409
1410       - inject:
1411           properties-file: version.properties
1412
1413       - maven-target:
1414           maven-version: '{maven-version}'
1415           goals: 'versions:set versions:update-child-modules versions:commit -B'
1416           properties:
1417             - 'newVersion=${{release_version}}'
1418           settings: '{mvn-settings}'
1419           settings-type: cfp
1420           global-settings: 'global-settings'
1421           global-settings-type: cfp
1422
1423       - docker-login
1424
1425       - maven-docker-push-daily:
1426           maven-version: '{maven-version}'
1427           mvn-settings: '{mvn-settings}'
1428           pom: '{docker-pom}'
1429           # use default as mvn-profile if profile is not needed
1430           mvn-profile: '{mvn-profile}'
1431
1432     publishers:
1433       - infra-shiplogs:
1434           maven-version: '{maven-version}'
1435
1436 - job-template:
1437     name: '{project-name}-{stream}-aai-docker-java-daily'
1438     project-type: freestyle
1439     node: 'ubuntu1604-docker-8c-8g'
1440     docker-image-name: ''
1441
1442     properties:
1443       - infra-properties:
1444           build-days-to-keep: '{build-days-to-keep}'
1445
1446     parameters:
1447       - infra-parameters:
1448           project: '{project}'
1449           branch: '{branch}'
1450           refspec: 'refs/heads/{branch}'
1451           artifacts: '{archive-artifacts}'
1452       - maven-exec:
1453           maven-version: '{maven-version}'
1454       - docker-image-name:
1455           docker-image-name: '{docker-image-name}'
1456
1457     scm:
1458       - gerrit-trigger-scm:
1459           refspec: ''
1460           choosing-strategy: 'default'
1461           submodule-recursive: '{submodule-recursive}'
1462
1463     wrappers:
1464       - infra-wrappers:
1465           build-timeout: '{build-timeout}'
1466
1467     triggers:
1468       # 12 AM UTC
1469       - timed: 'H 12 * * *'
1470       - gerrit-trigger-release-manually:
1471           server: '{server-name}'
1472           project: '{project}'
1473           branch: '{branch}'
1474
1475     builders:
1476
1477       - provide-maven-settings:
1478           global-settings-file: 'global-settings'
1479           settings-file: '{mvn-settings}'
1480
1481       - docker-login
1482
1483       - maven-target:
1484           maven-version: '{maven-version}'
1485           pom: 'pom.xml'
1486           goals: 'clean install -DskipTests -B
1487             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1488           settings: '{mvn-settings}'
1489           settings-type: cfp
1490           global-settings: 'global-settings'
1491           global-settings-type: cfp
1492
1493       - maven-target:
1494           maven-version: '{maven-version}'
1495           pom: '{pom}'
1496           goals: '{mvn-goals}'
1497           settings: '{mvn-settings}'
1498           settings-type: cfp
1499           global-settings: 'global-settings'
1500           global-settings-type: cfp
1501           properties:
1502             - maven.test.skip=true
1503             - docker.pull.registry=nexus3.onap.org:10001
1504             - docker.push.registry=nexus3.onap.org:10003
1505
1506       - shell: !include-raw-escape: include-docker-push.sh
1507
1508     publishers:
1509       - infra-shiplogs:
1510           maven-version: '{maven-version}'
1511
1512 - job-template:
1513     name: '{project-name}-{stream}-{subproject}-aai-docker-java-daily'
1514     project-type: freestyle
1515     node: 'ubuntu1604-docker-8c-8g'
1516     docker-image-name: ''
1517
1518     properties:
1519       - infra-properties:
1520           build-days-to-keep: '{build-days-to-keep}'
1521
1522     parameters:
1523       - infra-parameters:
1524           project: '{project}'
1525           branch: '{branch}'
1526           refspec: 'refs/heads/{branch}'
1527           artifacts: '{archive-artifacts}'
1528       - maven-exec:
1529           maven-version: '{maven-version}'
1530       - docker-image-name:
1531           docker-image-name: '{docker-image-name}'
1532
1533     scm:
1534       - gerrit-trigger-scm:
1535           refspec: ''
1536           choosing-strategy: 'default'
1537           submodule-recursive: '{submodule-recursive}'
1538
1539     wrappers:
1540       - infra-wrappers:
1541           build-timeout: '{build-timeout}'
1542
1543     triggers:
1544       # 12 AM UTC
1545       - timed: 'H 12 * * *'
1546       - gerrit-trigger-release-manually:
1547           server: '{server-name}'
1548           project: '{project}'
1549           branch: '{branch}'
1550
1551     builders:
1552
1553       - provide-maven-settings:
1554           global-settings-file: 'global-settings'
1555           settings-file: '{mvn-settings}'
1556
1557       - docker-login
1558
1559       - maven-target:
1560           maven-version: '{maven-version}'
1561           pom: 'pom.xml'
1562           goals: 'clean install -DskipTests -B
1563             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1564           settings: '{mvn-settings}'
1565           settings-type: cfp
1566           global-settings: 'global-settings'
1567           global-settings-type: cfp
1568
1569       - maven-target:
1570           maven-version: '{maven-version}'
1571           pom: '{pom}'
1572           goals: '{mvn-goals}'
1573           settings: '{mvn-settings}'
1574           settings-type: cfp
1575           global-settings: 'global-settings'
1576           global-settings-type: cfp
1577           properties:
1578             - maven.test.skip=true
1579             - docker.pull.registry=nexus3.onap.org:10001
1580             - docker.push.registry=nexus3.onap.org:10003
1581
1582       - shell: !include-raw-escape: include-docker-push.sh
1583
1584     publishers:
1585       - infra-shiplogs:
1586           maven-version: '{maven-version}'
1587
1588 - job-template:
1589     # Job template for Java daily release jobs
1590     #
1591     # The purpose of this job template is to run
1592     #   - change version in all POM files to the release version specified
1593     #     in version.properties. This is done using a script instread of
1594     #     the mvn version plugin that assumes some specific parent structure.
1595     #   - runs maven clean deploy sonar
1596     #
1597     # The POM files are required to use the Maven staging plugin so the deploy
1598     # does not deploy directly to the release repo.
1599     #
1600     # Required Variables:
1601     #     branch:    git branch (eg. stable/lithium or master)
1602     name: '{project-name}-{stream}-release-version2-java-daily'
1603
1604     project-type: freestyle
1605     node: '{build-node}'
1606     maven-deploy-properties:
1607     properties:
1608       - infra-properties:
1609           build-days-to-keep: '{build-days-to-keep}'
1610
1611     parameters:
1612       - infra-parameters:
1613           project: '{project}'
1614           branch: '{branch}'
1615           refspec: 'refs/heads/{branch}'
1616           artifacts: '{archive-artifacts}'
1617       - maven-exec:
1618           maven-version: '{maven-version}'
1619
1620     scm:
1621       - gerrit-trigger-scm:
1622           refspec: ''
1623           choosing-strategy: 'default'
1624           submodule-recursive: '{submodule-recursive}'
1625
1626     wrappers:
1627       - infra-wrappers:
1628           build-timeout: '{build-timeout}'
1629
1630     triggers:
1631       # 11 AM UTC
1632       - timed: 'H 11 * * *'
1633       - gerrit-trigger-release-manually:
1634           server: '{server-name}'
1635           project: '{project}'
1636           branch: '{branch}'
1637
1638     builders:
1639       - provide-maven-settings:
1640           global-settings-file: 'global-settings'
1641           settings-file: '{mvn-settings}'
1642       - maven-install:
1643           maven-version: '{maven-version}'
1644
1645       - inject:
1646           properties-file: version.properties
1647
1648       - shell: !include-raw-escape: include-update-pom-versions.sh
1649
1650       - maven-target:
1651           maven-version: '{maven-version}'
1652           goals: 'clean deploy sonar:sonar site:site site:stage-deploy
1653             -Dsonar.host.url=${{SONAR}} -B
1654             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1655           properties:
1656             - '{maven-deploy-properties}'
1657           settings: '{mvn-settings}'
1658           settings-type: cfp
1659           global-settings: 'global-settings'
1660           global-settings-type: cfp
1661
1662     publishers:
1663       - infra-shiplogs:
1664           maven-version: '{maven-version}'
1665
1666 - job-template:
1667     # Job template for Java daily release jobs
1668     #
1669     # The purpose of this job template is to run
1670     #   - change version in all POM files to the release version specified
1671     #     in version.properties. This is done using a script instread of
1672     #     the mvn version plugin that assumes some specific parent structure.
1673     #   - runs maven clean deploy sonar
1674     #
1675     # The POM files are required to use the Maven staging plugin so the deploy
1676     # does not deploy directly to the release repo.
1677     #
1678     # Required Variables:
1679     #     branch:    git branch (eg. stable/lithium or master)
1680     #     pom:       name/location of the pom.xml file relative to the workspace
1681     #     pattern:   ant file-path pattern relative to the workspace used to
1682     #                trigger the job
1683
1684     name: '{project-name}-{stream}-{subproject}-release-version2-java-daily'
1685
1686     project-type: freestyle
1687     node: '{build-node}'
1688     maven-deploy-properties:
1689     properties:
1690       - infra-properties:
1691           build-days-to-keep: '{build-days-to-keep}'
1692
1693     parameters:
1694       - infra-parameters:
1695           project: '{project}'
1696           branch: '{branch}'
1697           refspec: 'refs/heads/{branch}'
1698           artifacts: '{archive-artifacts}'
1699       - maven-exec:
1700           maven-version: '{maven-version}'
1701
1702     scm:
1703       - gerrit-trigger-scm:
1704           refspec: ''
1705           choosing-strategy: 'default'
1706           submodule-recursive: '{submodule-recursive}'
1707
1708     wrappers:
1709       - infra-wrappers:
1710           build-timeout: '{build-timeout}'
1711
1712     triggers:
1713       # 11 AM UTC
1714       - timed: 'H 11 * * *'
1715       - gerrit-trigger-release-manually:
1716           server: '{server-name}'
1717           project: '{project}'
1718           branch: '{branch}'
1719           files: '{pattern}'
1720
1721     builders:
1722       - provide-maven-settings:
1723           global-settings-file: 'global-settings'
1724           settings-file: '{mvn-settings}'
1725       - maven-install:
1726           maven-version: '{maven-version}'
1727
1728       - inject:
1729           properties-file: version.properties
1730
1731       - shell: !include-raw-escape: include-update-pom-versions.sh
1732
1733       - maven-target:
1734           maven-version: '{maven-version}'
1735           pom: '{pom}'
1736           goals: 'clean deploy sonar:sonar site:site site:stage-deploy
1737             -Dsonar.host.url=${{SONAR}} -B
1738             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1739           properties:
1740             - '{maven-deploy-properties}'
1741           settings: '{mvn-settings}'
1742           settings-type: cfp
1743           global-settings: 'global-settings'
1744           global-settings-type: cfp
1745
1746     publishers:
1747       - infra-shiplogs:
1748           maven-version: '{maven-version}'
1749
1750 - job-template:
1751     # Template for maven site plugin invocation
1752     #
1753     # It's designed to be triggered when the trigger-job job
1754     # succeeds as there's no need for new documentaiton
1755     # if the build job fails.
1756     #
1757     # Those parameters should be set :
1758     # - site-pom : the pom file that contains the site confiration
1759     # - trigger-job : the name of the project that triggers this job
1760     #                     upon success. The job name can be
1761     #                     parameterized.
1762     name: '{project-name}-{stream}-stage-site-java'
1763     project-type: freestyle
1764     node: '{build-node}'
1765
1766     properties:
1767       - infra-properties:
1768           build-days-to-keep: '{build-days-to-keep}'
1769
1770     parameters:
1771       - infra-parameters:
1772           project: '{project}'
1773           branch: '{branch}'
1774           refspec: 'refs/heads/{branch}'
1775           artifacts: '{archive-artifacts}'
1776       - maven-exec:
1777           maven-version: '{maven-version}'
1778
1779     scm:
1780       - gerrit-trigger-scm:
1781           refspec: ''
1782           choosing-strategy: 'default'
1783           submodule-recursive: '{submodule-recursive}'
1784
1785     wrappers:
1786       - infra-wrappers:
1787           build-timeout: '{build-timeout}'
1788
1789     triggers:
1790       - trigger-on-build-success:
1791           job-name: '{trigger-job}'
1792
1793     builders:
1794       - provide-maven-settings:
1795           global-settings-file: 'global-settings'
1796           settings-file: '{mvn-settings}'
1797       - inject:
1798           properties-file: version.properties
1799       - maven-target:
1800           maven-version: '{maven-version}'
1801           goals: 'versions:set versions:update-child-modules versions:commit -B'
1802           properties:
1803             - 'newVersion=${{release_version}}'
1804           settings: '{mvn-settings}'
1805           settings-type: cfp
1806           global-settings: 'global-settings'
1807           global-settings-type: cfp
1808
1809       - maven-target:
1810           maven-version: '{maven-version}'
1811           pom: '{site-pom}'
1812           goals: 'clean site:site site:stage-deploy'
1813           settings: '{mvn-settings}'
1814           settings-type: cfp
1815           global-settings: 'global-settings'
1816           global-settings-type: cfp
1817
1818     publishers:
1819       - infra-shiplogs:
1820           maven-version: '{maven-version}'
1821
1822 - job-template:
1823     # Job template for Java merge jobs
1824     #
1825     # The purpose of this job template is to run "maven clean deploy" for
1826     # projects using this template.
1827     #
1828     # Required Variables:
1829     #     branch:    git branch (eg. stable/lithium or master)
1830     name: '{project-name}-{stream}-sdc-merge-java'
1831
1832     project-type: freestyle
1833     node: 'ubuntu1604-docker-8c-8g'
1834
1835     properties:
1836       - infra-properties:
1837           build-days-to-keep: '{build-days-to-keep}'
1838
1839     parameters:
1840       - infra-parameters:
1841           project: '{project}'
1842           branch: '{branch}'
1843           refspec: 'refs/heads/{branch}'
1844           artifacts: '{archive-artifacts}'
1845       - maven-exec:
1846           maven-version: '{maven-version}'
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       - gerrit-trigger-patch-merged:
1860           server: '{server-name}'
1861           project: '{project}'
1862           branch: '{branch}'
1863           files: '**'
1864
1865     builders:
1866       - provide-maven-settings:
1867           global-settings-file: 'global-settings'
1868           settings-file: '{mvn-settings}'
1869
1870       - docker-login
1871
1872       - maven-docker-push-daily:
1873           maven-version: '{maven-version}'
1874           mvn-settings: '{mvn-settings}'
1875           pom: '{docker-pom}'
1876           # use default as mvn-profile if profile is not needed
1877           mvn-profile: '{mvn-profile}'
1878
1879     publishers:
1880       - infra-shiplogs:
1881           maven-version: '{maven-version}'
1882
1883 - job-template:
1884     name: '{project-name}-{stream}-aai-docker-java-version-daily'
1885     project-type: freestyle
1886     node: 'ubuntu1604-docker-8c-8g'
1887
1888     properties:
1889       - infra-properties:
1890           build-days-to-keep: '{build-days-to-keep}'
1891
1892     parameters:
1893       - infra-parameters:
1894           project: '{project}'
1895           branch: '{branch}'
1896           refspec: 'refs/heads/{branch}'
1897           artifacts: '{archive-artifacts}'
1898       - maven-exec:
1899           maven-version: '{maven-version}'
1900
1901     scm:
1902       - gerrit-trigger-scm:
1903           refspec: ''
1904           choosing-strategy: 'default'
1905           submodule-recursive: '{submodule-recursive}'
1906
1907     wrappers:
1908       - infra-wrappers:
1909           build-timeout: '{build-timeout}'
1910
1911     triggers:
1912       # 12 AM UTC
1913       - timed: 'H 12 * * *'
1914       - gerrit-trigger-release-manually:
1915           server: '{server-name}'
1916           project: '{project}'
1917           branch: '{branch}'
1918
1919     builders:
1920
1921       - provide-maven-settings:
1922           global-settings-file: 'global-settings'
1923           settings-file: '{mvn-settings}'
1924
1925       - docker-login
1926
1927       - maven-target:
1928           maven-version: '{maven-version}'
1929           pom: 'pom.xml'
1930           goals: 'clean install -DskipTests -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1931           settings: '{mvn-settings}'
1932           settings-type: cfp
1933           global-settings: 'global-settings'
1934           global-settings-type: cfp
1935
1936       - maven-target:
1937           maven-version: '{maven-version}'
1938           pom: '{pom}'
1939           goals: '{mvn-goals}'
1940           settings: '{mvn-settings}'
1941           settings-type: cfp
1942           global-settings: 'global-settings'
1943           global-settings-type: cfp
1944           properties:
1945             - maven.test.skip=true
1946             - docker.pull.registry=nexus3.onap.org:10001
1947             - docker.push.registry=nexus3.onap.org:10003
1948
1949     publishers:
1950       - infra-shiplogs:
1951           maven-version: '{maven-version}'
1952