Add no-sonar JJB template for subprojects
[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     # Job template for Java daily release jobs
1498     #
1499     # The purpose of this job template is to run
1500     #   - change version in all POM files to the release version specified
1501     #     in version.properties. This is done using a script instread of
1502     #     the mvn version plugin that assumes some specific parent structure.
1503     #   - runs maven clean deploy sonar
1504     #
1505     # The POM files are required to use the Maven staging plugin so the deploy
1506     # does not deploy directly to the release repo.
1507     #
1508     # Required Variables:
1509     #     branch:    git branch (eg. stable/lithium or master)
1510     name: '{project-name}-{stream}-release-version2-java-daily'
1511
1512     project-type: freestyle
1513     node: '{build-node}'
1514     maven-deploy-properties:
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       # 11 AM UTC
1540       - timed: 'H 11 * * *'
1541       - gerrit-trigger-release-manually:
1542           server: '{server-name}'
1543           project: '{project}'
1544           branch: '{branch}'
1545
1546     builders:
1547       - provide-maven-settings:
1548           global-settings-file: 'global-settings'
1549           settings-file: '{mvn-settings}'
1550       - maven-install:
1551           maven-version: '{maven-version}'
1552
1553       - inject:
1554           properties-file: version.properties
1555
1556       - shell: !include-raw-escape: include-update-pom-versions.sh
1557
1558       - maven-target:
1559           maven-version: '{maven-version}'
1560           goals: 'clean deploy sonar:sonar site:site site:stage-deploy
1561             -Dsonar.host.url=${{SONAR}} -B
1562             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1563           properties:
1564             - '{maven-deploy-properties}'
1565           settings: '{mvn-settings}'
1566           settings-type: cfp
1567           global-settings: 'global-settings'
1568           global-settings-type: cfp
1569
1570     publishers:
1571       - infra-shiplogs:
1572           maven-version: '{maven-version}'
1573
1574 - job-template:
1575     # Job template for Java daily release jobs
1576     #
1577     # The purpose of this job template is to run
1578     #   - change version in all POM files to the release version specified
1579     #     in version.properties. This is done using a script instread of
1580     #     the mvn version plugin that assumes some specific parent structure.
1581     #   - runs maven clean deploy sonar
1582     #
1583     # The POM files are required to use the Maven staging plugin so the deploy
1584     # does not deploy directly to the release repo.
1585     #
1586     # Required Variables:
1587     #     branch:    git branch (eg. stable/lithium or master)
1588     #     pom:       name/location of the pom.xml file relative to the workspace
1589     #     pattern:   ant file-path pattern relative to the workspace used to
1590     #                trigger the job
1591
1592     name: '{project-name}-{stream}-{subproject}-release-version2-java-daily'
1593
1594     project-type: freestyle
1595     node: '{build-node}'
1596     maven-deploy-properties:
1597     properties:
1598       - infra-properties:
1599           build-days-to-keep: '{build-days-to-keep}'
1600
1601     parameters:
1602       - infra-parameters:
1603           project: '{project}'
1604           branch: '{branch}'
1605           refspec: 'refs/heads/{branch}'
1606           artifacts: '{archive-artifacts}'
1607       - maven-exec:
1608           maven-version: '{maven-version}'
1609
1610     scm:
1611       - gerrit-trigger-scm:
1612           refspec: ''
1613           choosing-strategy: 'default'
1614           submodule-recursive: '{submodule-recursive}'
1615
1616     wrappers:
1617       - infra-wrappers:
1618           build-timeout: '{build-timeout}'
1619
1620     triggers:
1621       # 11 AM UTC
1622       - timed: 'H 11 * * *'
1623       - gerrit-trigger-release-manually:
1624           server: '{server-name}'
1625           project: '{project}'
1626           branch: '{branch}'
1627           files: '{pattern}'
1628
1629     builders:
1630       - provide-maven-settings:
1631           global-settings-file: 'global-settings'
1632           settings-file: '{mvn-settings}'
1633       - maven-install:
1634           maven-version: '{maven-version}'
1635
1636       - inject:
1637           properties-file: version.properties
1638
1639       - shell: !include-raw-escape: include-update-pom-versions.sh
1640
1641       - maven-target:
1642           maven-version: '{maven-version}'
1643           pom: '{pom}'
1644           goals: 'clean deploy sonar:sonar site:site site:stage-deploy
1645             -Dsonar.host.url=${{SONAR}} -B
1646             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1647           properties:
1648             - '{maven-deploy-properties}'
1649           settings: '{mvn-settings}'
1650           settings-type: cfp
1651           global-settings: 'global-settings'
1652           global-settings-type: cfp
1653
1654     publishers:
1655       - infra-shiplogs:
1656           maven-version: '{maven-version}'
1657
1658 - job-template:
1659     # Template for maven site plugin invocation
1660     #
1661     # It's designed to be triggered when the trigger-job job
1662     # succeeds as there's no need for new documentaiton
1663     # if the build job fails.
1664     #
1665     # Those parameters should be set :
1666     # - site-pom : the pom file that contains the site confiration
1667     # - trigger-job : the name of the project that triggers this job
1668     #                     upon success. The job name can be
1669     #                     parameterized.
1670     name: '{project-name}-{stream}-stage-site-java'
1671     project-type: freestyle
1672     node: '{build-node}'
1673
1674     properties:
1675       - infra-properties:
1676           build-days-to-keep: '{build-days-to-keep}'
1677
1678     parameters:
1679       - infra-parameters:
1680           project: '{project}'
1681           branch: '{branch}'
1682           refspec: 'refs/heads/{branch}'
1683           artifacts: '{archive-artifacts}'
1684       - maven-exec:
1685           maven-version: '{maven-version}'
1686
1687     scm:
1688       - gerrit-trigger-scm:
1689           refspec: ''
1690           choosing-strategy: 'default'
1691           submodule-recursive: '{submodule-recursive}'
1692
1693     wrappers:
1694       - infra-wrappers:
1695           build-timeout: '{build-timeout}'
1696
1697     triggers:
1698       - trigger-on-build-success:
1699           job-name: '{trigger-job}'
1700
1701     builders:
1702       - provide-maven-settings:
1703           global-settings-file: 'global-settings'
1704           settings-file: '{mvn-settings}'
1705       - inject:
1706           properties-file: version.properties
1707       - maven-target:
1708           maven-version: '{maven-version}'
1709           goals: 'versions:set versions:update-child-modules versions:commit -B'
1710           properties:
1711             - 'newVersion=${{release_version}}'
1712           settings: '{mvn-settings}'
1713           settings-type: cfp
1714           global-settings: 'global-settings'
1715           global-settings-type: cfp
1716
1717       - maven-target:
1718           maven-version: '{maven-version}'
1719           pom: '{site-pom}'
1720           goals: 'clean site:site site:stage-deploy'
1721           settings: '{mvn-settings}'
1722           settings-type: cfp
1723           global-settings: 'global-settings'
1724           global-settings-type: cfp
1725
1726     publishers:
1727       - infra-shiplogs:
1728           maven-version: '{maven-version}'
1729
1730 - job-template:
1731     # Job template for Java merge jobs
1732     #
1733     # The purpose of this job template is to run "maven clean deploy" for
1734     # projects using this template.
1735     #
1736     # Required Variables:
1737     #     branch:    git branch (eg. stable/lithium or master)
1738     name: '{project-name}-{stream}-sdc-merge-java'
1739
1740     project-type: freestyle
1741     node: 'ubuntu1604-docker-8c-8g'
1742
1743     properties:
1744       - infra-properties:
1745           build-days-to-keep: '{build-days-to-keep}'
1746
1747     parameters:
1748       - infra-parameters:
1749           project: '{project}'
1750           branch: '{branch}'
1751           refspec: 'refs/heads/{branch}'
1752           artifacts: '{archive-artifacts}'
1753       - maven-exec:
1754           maven-version: '{maven-version}'
1755
1756     scm:
1757       - gerrit-trigger-scm:
1758           refspec: ''
1759           choosing-strategy: 'default'
1760           submodule-recursive: '{submodule-recursive}'
1761
1762     wrappers:
1763       - infra-wrappers:
1764           build-timeout: '{build-timeout}'
1765
1766     triggers:
1767       - gerrit-trigger-patch-merged:
1768           server: '{server-name}'
1769           project: '{project}'
1770           branch: '{branch}'
1771           files: '**'
1772
1773     builders:
1774       - provide-maven-settings:
1775           global-settings-file: 'global-settings'
1776           settings-file: '{mvn-settings}'
1777
1778       - docker-login
1779
1780       - maven-docker-push-daily:
1781           maven-version: '{maven-version}'
1782           mvn-settings: '{mvn-settings}'
1783           pom: '{docker-pom}'
1784           # use default as mvn-profile if profile is not needed
1785           mvn-profile: '{mvn-profile}'
1786
1787     publishers:
1788       - infra-shiplogs:
1789           maven-version: '{maven-version}'
1790
1791 - job-template:
1792     name: '{project-name}-{stream}-aai-docker-java-version-daily'
1793     project-type: freestyle
1794     node: 'ubuntu1604-docker-8c-8g'
1795
1796     properties:
1797       - infra-properties:
1798           build-days-to-keep: '{build-days-to-keep}'
1799
1800     parameters:
1801       - infra-parameters:
1802           project: '{project}'
1803           branch: '{branch}'
1804           refspec: 'refs/heads/{branch}'
1805           artifacts: '{archive-artifacts}'
1806       - maven-exec:
1807           maven-version: '{maven-version}'
1808
1809     scm:
1810       - gerrit-trigger-scm:
1811           refspec: ''
1812           choosing-strategy: 'default'
1813           submodule-recursive: '{submodule-recursive}'
1814
1815     wrappers:
1816       - infra-wrappers:
1817           build-timeout: '{build-timeout}'
1818
1819     triggers:
1820       # 12 AM UTC
1821       - timed: 'H 12 * * *'
1822       - gerrit-trigger-release-manually:
1823           server: '{server-name}'
1824           project: '{project}'
1825           branch: '{branch}'
1826
1827     builders:
1828
1829       - provide-maven-settings:
1830           global-settings-file: 'global-settings'
1831           settings-file: '{mvn-settings}'
1832
1833       - docker-login
1834
1835       - maven-target:
1836           maven-version: '{maven-version}'
1837           pom: 'pom.xml'
1838           goals: 'clean install -DskipTests -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1839           settings: '{mvn-settings}'
1840           settings-type: cfp
1841           global-settings: 'global-settings'
1842           global-settings-type: cfp
1843
1844       - maven-target:
1845           maven-version: '{maven-version}'
1846           pom: '{pom}'
1847           goals: '{mvn-goals}'
1848           settings: '{mvn-settings}'
1849           settings-type: cfp
1850           global-settings: 'global-settings'
1851           global-settings-type: cfp
1852           properties:
1853             - maven.test.skip=true
1854             - docker.pull.registry=nexus3.onap.org:10001
1855             - docker.push.registry=nexus3.onap.org:10003
1856
1857     publishers:
1858       - infra-shiplogs:
1859           maven-version: '{maven-version}'
1860