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