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