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