Merge "add no-sonar release template"
[ci-management.git] / jjb / global-templates-java.yaml
1 ---
2 - job-template:
3     # Job template for Java verify jobs
4     #
5     # The purpose of this job template is to run "maven clean install" for
6     # projects using this template.
7     #
8     # Required Variables:
9     #     branch:    git branch (eg. stable/lithium or master)
10
11     name: '{project-name}-{stream}-verify-java-skip-tests'
12
13     project-type: freestyle
14     concurrent: true
15     node: '{build-node}'
16
17     properties:
18       - infra-properties:
19           build-days-to-keep: '{build-days-to-keep}'
20
21     parameters:
22       - infra-parameters:
23           project: '{project}'
24           branch: '{branch}'
25           refspec: 'refs/heads/{branch}'
26           artifacts: '{archive-artifacts}'
27       - maven-exec:
28           maven-version: '{maven-version}'
29
30     scm:
31       - gerrit-trigger-scm:
32           refspec: '$GERRIT_REFSPEC'
33           choosing-strategy: 'gerrit'
34
35     wrappers:
36       - infra-wrappers:
37           build-timeout: '{build-timeout}'
38
39     triggers:
40       - gerrit-trigger-patch-submitted:
41           server: '{server-name}'
42           project: '{project}'
43           branch: '{branch}'
44           files: '**'
45
46     builders:
47       - provide-maven-settings:
48           global-settings-file: 'global-settings'
49           settings-file: '{mvn-settings}'
50       - maven-target:
51           maven-version: '{maven-version}'
52           goals: 'clean install -DskipTests=true -B
53             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
54           settings: '{mvn-settings}'
55           settings-type: cfp
56           global-settings: 'global-settings'
57           global-settings-type: cfp
58           maven-opts:
59             - maven.test.skip=true
60
61     publishers:
62       - infra-shiplogs:
63           maven-version: '{maven-version}'
64
65 - job-template:
66     # Job template for Java verify jobs
67     #
68     # The purpose of this job template is to run "maven clean install" for
69     # projects using this template.
70     #
71     # Required Variables:
72     #     branch:    git branch (eg. stable/lithium or master)
73
74     name: '{project-name}-{stream}-verify-java'
75
76     project-type: freestyle
77     concurrent: true
78     node: '{build-node}'
79
80     properties:
81       - infra-properties:
82           build-days-to-keep: '{build-days-to-keep}'
83
84     parameters:
85       - infra-parameters:
86           project: '{project}'
87           branch: '{branch}'
88           refspec: 'refs/heads/{branch}'
89           artifacts: '{archive-artifacts}'
90       - maven-exec:
91           maven-version: '{maven-version}'
92
93     scm:
94       - gerrit-trigger-scm:
95           refspec: '$GERRIT_REFSPEC'
96           choosing-strategy: 'gerrit'
97
98     wrappers:
99       - infra-wrappers:
100           build-timeout: '{build-timeout}'
101
102     triggers:
103       - gerrit-trigger-patch-submitted:
104           server: '{server-name}'
105           project: '{project}'
106           branch: '{branch}'
107           files: '**'
108
109     builders:
110       - provide-maven-settings:
111           global-settings-file: 'global-settings'
112           settings-file: '{mvn-settings}'
113       - maven-target:
114           maven-version: '{maven-version}'
115           goals: 'clean install -B
116             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
117           settings: '{mvn-settings}'
118           settings-type: cfp
119           global-settings: 'global-settings'
120           global-settings-type: cfp
121
122     publishers:
123       - infra-shiplogs:
124           maven-version: '{maven-version}'
125
126 - job-template:
127     # Job template for Java verify jobs that takes a maven template
128     #
129     # The purpose of this job template is to run "maven clean install -P {x}"
130     # for projects using this template.
131     #
132     # Required Variables:
133     #     branch:    git branch (eg. stable/lithium or master)
134
135     name: '{project-name}-{stream}-verify-profile-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
159     wrappers:
160       - infra-wrappers:
161           build-timeout: '{build-timeout}'
162
163     triggers:
164       - gerrit-trigger-patch-submitted:
165           server: '{server-name}'
166           project: '{project}'
167           branch: '{branch}'
168           files: '**'
169
170     builders:
171       - provide-maven-settings:
172           global-settings-file: 'global-settings'
173           settings-file: '{mvn-settings}'
174       - maven-target:
175           maven-version: '{maven-version}'
176           goals: 'clean install -P {mvn-profile} -B
177             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
178           settings: '{mvn-settings}'
179           settings-type: cfp
180           global-settings: 'global-settings'
181           global-settings-type: cfp
182
183     publishers:
184       - infra-shiplogs:
185           maven-version: '{maven-version}'
186
187 - job-template:
188     # Job template for Java verify jobs with POM not at the root
189     #
190     # The purpose of this job template is to run "maven clean install" for
191     # projects using this template.
192     #
193     # Required Variables:
194     #     branch:    git branch (eg. stable/lithium or master)
195     #     pom:       name/location of the pom.xml file relative to the workspace
196     #     pattern:   ant file-path pattern relative to the workspace used to
197     #                trigger the job
198
199     name: '{project-name}-{stream}-{subproject}-verify-java'
200
201     project-type: freestyle
202     concurrent: true
203     node: '{build-node}'
204
205     properties:
206       - infra-properties:
207           build-days-to-keep: '{build-days-to-keep}'
208
209     parameters:
210       - infra-parameters:
211           project: '{project}'
212           branch: '{branch}'
213           refspec: 'refs/heads/{branch}'
214           artifacts: '{archive-artifacts}'
215       - maven-exec:
216           maven-version: '{maven-version}'
217
218     scm:
219       - gerrit-trigger-scm:
220           refspec: '$GERRIT_REFSPEC'
221           choosing-strategy: 'gerrit'
222
223     wrappers:
224       - infra-wrappers:
225           build-timeout: '{build-timeout}'
226
227     triggers:
228       - gerrit-trigger-patch-submitted:
229           server: '{server-name}'
230           project: '{project}'
231           branch: '{branch}'
232           files: '{pattern}'
233
234     builders:
235       - provide-maven-settings:
236           global-settings-file: 'global-settings'
237           settings-file: '{mvn-settings}'
238       - maven-target:
239           maven-version: '{maven-version}'
240           pom: '{pom}'
241           goals: 'clean install -B
242             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
243           settings: '{mvn-settings}'
244           settings-type: cfp
245           global-settings: 'global-settings'
246           global-settings-type: cfp
247
248     publishers:
249       - infra-shiplogs:
250           maven-version: '{maven-version}'
251
252 - job-template:
253     # Job template for Java daily release jobs
254     #
255     # The purpose of this job template is to run "maven version && maven clean
256     # deploy" for projects using this template.
257     #
258     # Required Variables:
259     #     branch:    git branch (eg. stable/lithium or master)
260     name: '{project-name}-{stream}-release-java-daily'
261
262     project-type: freestyle
263     node: '{build-node}'
264     maven-deploy-properties:
265     properties:
266       - infra-properties:
267           build-days-to-keep: '{build-days-to-keep}'
268
269     parameters:
270       - infra-parameters:
271           project: '{project}'
272           branch: '{branch}'
273           refspec: 'refs/heads/{branch}'
274           artifacts: '{archive-artifacts}'
275       - maven-exec:
276           maven-version: '{maven-version}'
277
278     scm:
279       - gerrit-trigger-scm:
280           refspec: ''
281           choosing-strategy: 'default'
282
283     wrappers:
284       - infra-wrappers:
285           build-timeout: '{build-timeout}'
286
287     triggers:
288       # 11 AM UTC
289       - timed: 'H 11 * * *'
290       - gerrit-trigger-release-manually:
291           server: '{server-name}'
292           project: '{project}'
293           branch: '{branch}'
294
295     builders:
296       - provide-maven-settings:
297           global-settings-file: 'global-settings'
298           settings-file: '{mvn-settings}'
299
300       - maven-target:
301           maven-version: '{maven-version}'
302           goals: 'clean deploy sonar:sonar -Dsonar.host.url=${{SONAR}} -B
303             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
304           properties:
305             - '{maven-deploy-properties}'
306           settings: '{mvn-settings}'
307           settings-type: cfp
308           global-settings: 'global-settings'
309           global-settings-type: cfp
310
311     publishers:
312       - infra-shiplogs:
313           maven-version: '{maven-version}'
314
315 - job-template:
316     # Job template for Java daily release jobs
317     #
318     # The purpose of this job template is to run "maven version && maven clean
319     # deploy" for projects using this template.
320     #
321     # Required Variables:
322     #     branch:    git branch (eg. stable/lithium or master)
323     name: '{project-name}-{stream}-release-version-java-daily-no-sonar'
324
325     project-type: freestyle
326     node: '{build-node}'
327     maven-deploy-properties:
328     properties:
329       - infra-properties:
330           build-days-to-keep: '{build-days-to-keep}'
331
332     parameters:
333       - infra-parameters:
334           project: '{project}'
335           branch: '{branch}'
336           refspec: 'refs/heads/{branch}'
337           artifacts: '{archive-artifacts}'
338       - maven-exec:
339           maven-version: '{maven-version}'
340
341     scm:
342       - gerrit-trigger-scm:
343           refspec: ''
344           choosing-strategy: 'default'
345
346     wrappers:
347       - infra-wrappers:
348           build-timeout: '{build-timeout}'
349
350     triggers:
351       # 11 AM UTC
352       - timed: 'H 11 * * *'
353       - gerrit-trigger-release-manually:
354           server: '{server-name}'
355           project: '{project}'
356           branch: '{branch}'
357
358     builders:
359       - provide-maven-settings:
360           global-settings-file: 'global-settings'
361           settings-file: '{mvn-settings}'
362
363       - inject:
364           properties-file: version.properties
365       - maven-target:
366           maven-version: '{maven-version}'
367           goals: 'versions:set versions:update-child-modules versions:commit'
368           properties:
369             - 'newVersion=${{release_version}}'
370           settings: '{mvn-settings}'
371           settings-type: cfp
372           global-settings: 'global-settings'
373           global-settings-type: cfp
374
375       - maven-target:
376           maven-version: '{maven-version}'
377           goals: 'clean deploy -B
378             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
379           properties:
380             - '{maven-deploy-properties}'
381           settings: '{mvn-settings}'
382           settings-type: cfp
383           global-settings: 'global-settings'
384           global-settings-type: cfp
385
386     publishers:
387       - infra-shiplogs:
388           maven-version: '{maven-version}'
389
390 - job-template:
391     # Job template for Java daily release jobs
392     #
393     # The purpose of this job template is to run "maven version && maven clean
394     # deploy" for projects using this template.
395     #
396     # Required Variables:
397     #     branch:    git branch (eg. stable/lithium or master)
398     name: '{project-name}-{stream}-release-version-java-daily'
399
400     project-type: freestyle
401     node: '{build-node}'
402     maven-deploy-properties:
403     properties:
404       - infra-properties:
405           build-days-to-keep: '{build-days-to-keep}'
406
407     parameters:
408       - infra-parameters:
409           project: '{project}'
410           branch: '{branch}'
411           refspec: 'refs/heads/{branch}'
412           artifacts: '{archive-artifacts}'
413       - maven-exec:
414           maven-version: '{maven-version}'
415
416     scm:
417       - gerrit-trigger-scm:
418           refspec: ''
419           choosing-strategy: 'default'
420
421     wrappers:
422       - infra-wrappers:
423           build-timeout: '{build-timeout}'
424
425     triggers:
426       # 11 AM UTC
427       - timed: 'H 11 * * *'
428       - gerrit-trigger-release-manually:
429           server: '{server-name}'
430           project: '{project}'
431           branch: '{branch}'
432
433     builders:
434       - provide-maven-settings:
435           global-settings-file: 'global-settings'
436           settings-file: '{mvn-settings}'
437
438       - inject:
439           properties-file: version.properties
440       - maven-target:
441           maven-version: '{maven-version}'
442           goals: 'versions:set versions:update-child-modules versions:commit'
443           properties:
444             - 'newVersion=${{release_version}}'
445           settings: '{mvn-settings}'
446           settings-type: cfp
447           global-settings: 'global-settings'
448           global-settings-type: cfp
449
450       - maven-target:
451           maven-version: '{maven-version}'
452           goals: 'clean deploy sonar:sonar -Dsonar.host.url=${{SONAR}} -B
453             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
454           properties:
455             - '{maven-deploy-properties}'
456           settings: '{mvn-settings}'
457           settings-type: cfp
458           global-settings: 'global-settings'
459           global-settings-type: cfp
460
461     publishers:
462       - infra-shiplogs:
463           maven-version: '{maven-version}'
464
465 - job-template:
466     # Job template for Java daily release jobs with POM not at the root
467     #
468     # The purpose of this job template is to run "maven version && maven clean
469     # deploy" for projects using this template.
470     #
471     # Required Variables:
472     #     branch:    git branch (eg. stable/lithium or master)
473     #     pom:       name/location of the pom.xml file relative to the workspace
474
475
476     name: '{project-name}-{stream}-{subproject}-release-java-daily'
477
478     project-type: freestyle
479     node: '{build-node}'
480     maven-deploy-properties:
481     properties:
482       - infra-properties:
483           build-days-to-keep: '{build-days-to-keep}'
484
485     parameters:
486       - infra-parameters:
487           project: '{project}'
488           branch: '{branch}'
489           refspec: 'refs/heads/{branch}'
490           artifacts: '{archive-artifacts}'
491       - maven-exec:
492           maven-version: '{maven-version}'
493
494     scm:
495       - gerrit-trigger-scm:
496           refspec: ''
497           choosing-strategy: 'default'
498
499     wrappers:
500       - infra-wrappers:
501           build-timeout: '{build-timeout}'
502
503     triggers:
504       # 11 AM UTC
505       - timed: 'H 11 * * *'
506       - gerrit-trigger-release-manually:
507           server: '{server-name}'
508           project: '{project}'
509           branch: '{branch}'
510
511     builders:
512       - provide-maven-settings:
513           global-settings-file: 'global-settings'
514           settings-file: '{mvn-settings}'
515
516       - maven-target:
517           maven-version: '{maven-version}'
518           pom: '{pom}'
519           goals: 'clean deploy sonar:sonar -Dsonar.host.url=${{SONAR}} -B
520             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
521           properties:
522             - '{maven-deploy-properties}'
523           settings: '{mvn-settings}'
524           settings-type: cfp
525           global-settings: 'global-settings'
526           global-settings-type: cfp
527
528     publishers:
529       - infra-shiplogs:
530           maven-version: '{maven-version}'
531
532 - job-template:
533     # Job template for Java merge jobs
534     #
535     # The purpose of this job template is to run "maven clean deploy" for
536     # projects using this template.
537     #
538     # Required Variables:
539     #     branch:    git branch (eg. stable/lithium or master)
540     name: '{project-name}-{stream}-merge-java'
541
542     project-type: freestyle
543     node: '{build-node}'
544
545     properties:
546       - infra-properties:
547           build-days-to-keep: '{build-days-to-keep}'
548
549     parameters:
550       - infra-parameters:
551           project: '{project}'
552           branch: '{branch}'
553           refspec: 'refs/heads/{branch}'
554           artifacts: '{archive-artifacts}'
555       - maven-exec:
556           maven-version: '{maven-version}'
557
558     scm:
559       - gerrit-trigger-scm:
560           refspec: ''
561           choosing-strategy: 'default'
562
563     wrappers:
564       - infra-wrappers:
565           build-timeout: '{build-timeout}'
566
567     triggers:
568       - gerrit-trigger-patch-merged:
569           server: '{server-name}'
570           project: '{project}'
571           branch: '{branch}'
572           files: '**'
573
574     builders:
575       - provide-maven-settings:
576           global-settings-file: 'global-settings'
577           settings-file: '{mvn-settings}'
578       - maven-target:
579           maven-version: '{maven-version}'
580           goals: 'clean deploy -B
581             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
582           settings: '{mvn-settings}'
583           settings-type: cfp
584           global-settings: 'global-settings'
585           global-settings-type: cfp
586
587     publishers:
588       - infra-shiplogs:
589           maven-version: '{maven-version}'
590
591 - job-template:
592     # Job template for Java merge jobs that takes a maven template
593     #
594     # The purpose of this job template is to run "maven clean deploy -P {x}"
595     # for projects using this template.
596     #
597     # Required Variables:
598     #     branch:    git branch (eg. stable/lithium or master)
599     name: '{project-name}-{stream}-merge-profile-java'
600
601     project-type: freestyle
602     node: '{build-node}'
603
604     properties:
605       - infra-properties:
606           build-days-to-keep: '{build-days-to-keep}'
607
608     parameters:
609       - infra-parameters:
610           project: '{project}'
611           branch: '{branch}'
612           refspec: 'refs/heads/{branch}'
613           artifacts: '{archive-artifacts}'
614       - maven-exec:
615           maven-version: '{maven-version}'
616
617     scm:
618       - gerrit-trigger-scm:
619           refspec: ''
620           choosing-strategy: 'default'
621
622     wrappers:
623       - infra-wrappers:
624           build-timeout: '{build-timeout}'
625
626     triggers:
627       - gerrit-trigger-patch-merged:
628           server: '{server-name}'
629           project: '{project}'
630           branch: '{branch}'
631           files: '**'
632
633     builders:
634       - provide-maven-settings:
635           global-settings-file: 'global-settings'
636           settings-file: '{mvn-settings}'
637
638       - docker-login
639
640       - maven-target:
641           maven-version: '{maven-version}'
642           goals: 'clean deploy -P {mvn-profile} -B
643             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
644           settings: '{mvn-settings}'
645           settings-type: cfp
646           global-settings: 'global-settings'
647           global-settings-type: cfp
648           properties:
649             - docker.pull.registry=nexus3.onap.org:10001
650             - docker.push.registry=nexus3.onap.org:10003
651
652     publishers:
653       - infra-shiplogs:
654           maven-version: '{maven-version}'
655
656 - job-template:
657     # Job template for Java merge jobs that should also be triggered by upstream
658     # merges
659     #
660     # Required Variables:
661     #   stream:         release stream
662     #   branch:         git branch
663     #   dependencies:   fully qualified upstream job name to trigger on
664     #                   this may be ''
665     name: '{project-name}-{stream}-downstream-merge-java'
666
667     project-type: freestyle
668     node: '{build-node}'
669
670     properties:
671       - infra-properties:
672           build-days-to-keep: '{build-days-to-keep}'
673
674     parameters:
675       - infra-parameters:
676           project: '{project}'
677           branch: '{branch}'
678           refspec: 'refs/heads/{branch}'
679           artifacts: '{archive-artifacts}'
680       - maven-exec:
681           maven-version: '{maven-version}'
682
683     scm:
684       - gerrit-trigger-scm:
685           refspec: ''
686           choosing-strategy: 'default'
687
688     wrappers:
689       - infra-wrappers:
690           build-timeout: '{build-timeout}'
691
692     triggers:
693       - reverse:
694           jobs: '{dependencies}'
695           result: 'success'
696       - gerrit-trigger-patch-merged:
697           server: '{server-name}'
698           project: '{project}'
699           branch: '{branch}'
700           files: '**'
701
702     builders:
703       - provide-maven-settings:
704           global-settings-file: 'global-settings'
705           settings-file: '{mvn-settings}'
706       - maven-target:
707           maven-version: '{maven-version}'
708           goals: 'clean deploy -B
709             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
710           settings: '{mvn-settings}'
711           settings-type: cfp
712           global-settings: 'global-settings'
713           global-settings-type: cfp
714
715     publishers:
716       - infra-shiplogs:
717           maven-version: '{maven-version}'
718
719 - job-template:
720     # Job template for Java merge jobs with POM not at the root
721     #
722     # The purpose of this job template is to run "maven clean deploy" for
723     # projects using this template.
724     #
725     # Required Variables:
726     #     branch:    git branch (eg. stable/lithium or master)
727     #     pom:       name/location of the pom.xml file relative to the workspace
728     #     pattern:   ant file-path pattern relative to the workspace used to
729     #                trigger the job
730
731     name: '{project-name}-{stream}-{subproject}-merge-java'
732
733     project-type: freestyle
734     node: '{build-node}'
735
736     properties:
737       - infra-properties:
738           build-days-to-keep: '{build-days-to-keep}'
739
740     parameters:
741       - infra-parameters:
742           project: '{project}'
743           branch: '{branch}'
744           refspec: 'refs/heads/{branch}'
745           artifacts: '{archive-artifacts}'
746       - maven-exec:
747           maven-version: '{maven-version}'
748
749     scm:
750       - gerrit-trigger-scm:
751           refspec: ''
752           choosing-strategy: 'default'
753
754     wrappers:
755       - infra-wrappers:
756           build-timeout: '{build-timeout}'
757
758     triggers:
759       - gerrit-trigger-patch-merged:
760           server: '{server-name}'
761           project: '{project}'
762           branch: '{branch}'
763           files: '{pattern}'
764
765     builders:
766       - provide-maven-settings:
767           global-settings-file: 'global-settings'
768           settings-file: '{mvn-settings}'
769       - maven-target:
770           maven-version: '{maven-version}'
771           pom: '{pom}'
772           goals: 'clean deploy -B
773             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
774           settings: '{mvn-settings}'
775           settings-type: cfp
776           global-settings: 'global-settings'
777           global-settings-type: cfp
778
779     publishers:
780       - infra-shiplogs:
781           maven-version: '{maven-version}'
782
783 - job-template:
784     name: '{project-name}-{stream}-docker-java-daily'
785     project-type: freestyle
786     node: 'ubuntu1604-docker-8c-8g'
787
788     properties:
789       - infra-properties:
790           build-days-to-keep: '{build-days-to-keep}'
791
792     parameters:
793       - infra-parameters:
794           project: '{project}'
795           branch: '{branch}'
796           refspec: 'refs/heads/{branch}'
797           artifacts: '{archive-artifacts}'
798       - maven-exec:
799           maven-version: '{maven-version}'
800
801     scm:
802       - gerrit-trigger-scm:
803           refspec: ''
804           choosing-strategy: 'default'
805
806     wrappers:
807       - infra-wrappers:
808           build-timeout: '{build-timeout}'
809
810     triggers:
811       # 12 AM UTC
812       - timed: 'H 12 * * *'
813       - gerrit-trigger-release-manually:
814           server: '{server-name}'
815           project: '{project}'
816           branch: '{branch}'
817
818     builders:
819
820       - provide-maven-settings:
821           global-settings-file: 'global-settings'
822           settings-file: '{mvn-settings}'
823
824       - docker-login
825
826       - maven-docker-push-daily:
827           maven-version: '{maven-version}'
828           mvn-settings: '{mvn-settings}'
829           pom: '{docker-pom}'
830           # use default as mvn-profile if profile is not needed
831           mvn-profile: '{mvn-profile}'
832
833     publishers:
834       - infra-shiplogs:
835           maven-version: '{maven-version}'
836
837 - job-template:
838     name: '{project-name}-{stream}-docker-java-shell-daily'
839     project-type: freestyle
840     node: 'ubuntu1604-docker-8c-8g'
841
842     properties:
843       - infra-properties:
844           build-days-to-keep: '{build-days-to-keep}'
845
846     parameters:
847       - infra-parameters:
848           project: '{project}'
849           branch: '{branch}'
850           refspec: 'refs/heads/{branch}'
851           artifacts: '{archive-artifacts}'
852       - maven-exec:
853           maven-version: '{maven-version}'
854
855     scm:
856       - gerrit-trigger-scm:
857           refspec: ''
858           choosing-strategy: 'default'
859
860     wrappers:
861       - infra-wrappers:
862           build-timeout: '{build-timeout}'
863
864     triggers:
865       # 12 AM UTC
866       - timed: 'H 12 * * *'
867       - gerrit-trigger-release-manually:
868           server: '{server-name}'
869           project: '{project}'
870           branch: '{branch}'
871
872     builders:
873
874       - provide-maven-settings:
875           global-settings-file: 'global-settings'
876           settings-file: '{mvn-settings}'
877
878       - docker-login
879
880       - maven-target:
881           maven-version: '{maven-version}'
882           goals: '{mvn-goals}'
883           settings: '{mvn-settings}'
884           settings-type: cfp
885           global-settings: 'global-settings'
886           global-settings-type: cfp
887
888       - shell: '{script}'
889
890     publishers:
891       - infra-shiplogs:
892           maven-version: '{maven-version}'
893
894 - job-template:
895     name: '{project-name}-{stream}-docker-java-version-shell-daily'
896     project-type: freestyle
897     node: 'ubuntu1604-docker-8c-8g'
898
899     properties:
900       - infra-properties:
901           build-days-to-keep: '{build-days-to-keep}'
902
903     parameters:
904       - infra-parameters:
905           project: '{project}'
906           branch: '{branch}'
907           refspec: 'refs/heads/{branch}'
908           artifacts: '{archive-artifacts}'
909       - maven-exec:
910           maven-version: '{maven-version}'
911
912     scm:
913       - gerrit-trigger-scm:
914           refspec: ''
915           choosing-strategy: 'default'
916
917     wrappers:
918       - infra-wrappers:
919           build-timeout: '{build-timeout}'
920
921     triggers:
922       # 12 AM UTC
923       - timed: 'H 12 * * *'
924       - gerrit-trigger-release-manually:
925           server: '{server-name}'
926           project: '{project}'
927           branch: '{branch}'
928
929     builders:
930
931       - provide-maven-settings:
932           global-settings-file: 'global-settings'
933           settings-file: '{mvn-settings}'
934
935       - inject:
936           properties-file: version.properties
937
938       - maven-target:
939           maven-version: '{maven-version}'
940           goals: 'versions:set versions:update-child-modules versions:commit'
941           properties:
942             - 'newVersion=${{release_version}}'
943           settings: '{mvn-settings}'
944           settings-type: cfp
945           global-settings: 'global-settings'
946           global-settings-type: cfp
947
948       - docker-login
949
950       - maven-target:
951           maven-version: '{maven-version}'
952           goals: '{mvn-goals}'
953           settings: '{mvn-settings}'
954           settings-type: cfp
955           global-settings: 'global-settings'
956           global-settings-type: cfp
957
958       - shell: '{script}'
959
960     publishers:
961       - infra-shiplogs:
962           maven-version: '{maven-version}'
963
964 - job-template:
965     name: '{project-name}-{stream}-docker-version-java-daily'
966     project-type: freestyle
967     node: 'ubuntu1604-docker-8c-8g'
968
969     properties:
970       - infra-properties:
971           build-days-to-keep: '{build-days-to-keep}'
972
973     parameters:
974       - infra-parameters:
975           project: '{project}'
976           branch: '{branch}'
977           refspec: 'refs/heads/{branch}'
978           artifacts: '{archive-artifacts}'
979       - maven-exec:
980           maven-version: '{maven-version}'
981
982     scm:
983       - gerrit-trigger-scm:
984           refspec: ''
985           choosing-strategy: 'default'
986
987     wrappers:
988       - infra-wrappers:
989           build-timeout: '{build-timeout}'
990
991     triggers:
992       # 12 AM UTC
993       - timed: 'H 12 * * *'
994       - gerrit-trigger-release-manually:
995           server: '{server-name}'
996           project: '{project}'
997           branch: '{branch}'
998
999     builders:
1000
1001       - provide-maven-settings:
1002           global-settings-file: 'global-settings'
1003           settings-file: '{mvn-settings}'
1004
1005       - inject:
1006           properties-file: version.properties
1007
1008       - maven-target:
1009           maven-version: '{maven-version}'
1010           goals: 'versions:set versions:update-child-modules versions:commit'
1011           properties:
1012             - 'newVersion=${{release_version}}'
1013           settings: '{mvn-settings}'
1014           settings-type: cfp
1015           global-settings: 'global-settings'
1016           global-settings-type: cfp
1017
1018       - docker-login
1019
1020       - maven-docker-push-daily:
1021           maven-version: '{maven-version}'
1022           mvn-settings: '{mvn-settings}'
1023           pom: '{docker-pom}'
1024           # use default as mvn-profile if profile is not needed
1025           mvn-profile: '{mvn-profile}'
1026
1027     publishers:
1028       - infra-shiplogs:
1029           maven-version: '{maven-version}'
1030
1031 - job-template:
1032     name: '{project-name}-{stream}-aai-docker-java-daily'
1033     project-type: freestyle
1034     node: 'ubuntu1604-docker-8c-8g'
1035
1036     properties:
1037       - infra-properties:
1038           build-days-to-keep: '{build-days-to-keep}'
1039
1040     parameters:
1041       - infra-parameters:
1042           project: '{project}'
1043           branch: '{branch}'
1044           refspec: 'refs/heads/{branch}'
1045           artifacts: '{archive-artifacts}'
1046       - maven-exec:
1047           maven-version: '{maven-version}'
1048
1049     scm:
1050       - gerrit-trigger-scm:
1051           refspec: ''
1052           choosing-strategy: 'default'
1053
1054     wrappers:
1055       - infra-wrappers:
1056           build-timeout: '{build-timeout}'
1057
1058     triggers:
1059       # 12 AM UTC
1060       - timed: 'H 12 * * *'
1061       - gerrit-trigger-release-manually:
1062           server: '{server-name}'
1063           project: '{project}'
1064           branch: '{branch}'
1065
1066     builders:
1067
1068       - provide-maven-settings:
1069           global-settings-file: 'global-settings'
1070           settings-file: '{mvn-settings}'
1071
1072       - docker-login
1073
1074       - maven-target:
1075           maven-version: '{maven-version}'
1076           pom: 'pom.xml'
1077           goals: 'clean install -DskipTests -B
1078             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1079           settings: '{mvn-settings}'
1080           settings-type: cfp
1081           global-settings: 'global-settings'
1082           global-settings-type: cfp
1083
1084       - maven-target:
1085           maven-version: '{maven-version}'
1086           pom: '{pom}'
1087           goals: '{mvn-goals}'
1088           settings: '{mvn-settings}'
1089           settings-type: cfp
1090           global-settings: 'global-settings'
1091           global-settings-type: cfp
1092           properties:
1093             - maven.test.skip=true
1094             - docker.pull.registry=nexus3.onap.org:10001
1095             - docker.push.registry=nexus3.onap.org:10003
1096
1097       - shell: !include-raw-escape: include-docker-push.sh
1098
1099     publishers:
1100       - infra-shiplogs:
1101           maven-version: '{maven-version}'
1102
1103 - job-template:
1104     # Job template for Java daily release jobs
1105     #
1106     # The purpose of this job template is to run
1107     #   - change version in all POM files to the release version specified
1108     #     in version.properties. This is done using a script instread of
1109     #     the mvn version plugin that assumes some specific parent structure.
1110     #   - runs maven clean deploy sonar
1111     #
1112     # The POM files are required to use the Maven staging plugin so the deploy
1113     # does not deploy directly to the release repo.
1114     #
1115     # Required Variables:
1116     #     branch:    git branch (eg. stable/lithium or master)
1117     name: '{project-name}-{stream}-release-version2-java-daily'
1118
1119     project-type: freestyle
1120     node: '{build-node}'
1121     maven-deploy-properties:
1122     properties:
1123       - infra-properties:
1124           build-days-to-keep: '{build-days-to-keep}'
1125
1126     parameters:
1127       - infra-parameters:
1128           project: '{project}'
1129           branch: '{branch}'
1130           refspec: 'refs/heads/{branch}'
1131           artifacts: '{archive-artifacts}'
1132       - maven-exec:
1133           maven-version: '{maven-version}'
1134
1135     scm:
1136       - gerrit-trigger-scm:
1137           refspec: ''
1138           choosing-strategy: 'default'
1139
1140     wrappers:
1141       - infra-wrappers:
1142           build-timeout: '{build-timeout}'
1143
1144     triggers:
1145       # 11 AM UTC
1146       - timed: 'H 11 * * *'
1147       - gerrit-trigger-release-manually:
1148           server: '{server-name}'
1149           project: '{project}'
1150           branch: '{branch}'
1151
1152     builders:
1153       - provide-maven-settings:
1154           global-settings-file: 'global-settings'
1155           settings-file: '{mvn-settings}'
1156       - maven-install:
1157           maven-version: '{maven-version}'
1158
1159       - inject:
1160           properties-file: version.properties
1161
1162       - shell: !include-raw-escape: include-update-pom-versions.sh
1163
1164       - maven-target:
1165           maven-version: '{maven-version}'
1166           goals: 'clean deploy sonar:sonar site:site site:stage-deploy
1167             -Dsonar.host.url=${{SONAR}} -B
1168             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1169           properties:
1170             - '{maven-deploy-properties}'
1171           settings: '{mvn-settings}'
1172           settings-type: cfp
1173           global-settings: 'global-settings'
1174           global-settings-type: cfp
1175
1176     publishers:
1177       - infra-shiplogs:
1178           maven-version: '{maven-version}'
1179
1180 - job-template:
1181     # Job template for Java daily release jobs
1182     #
1183     # The purpose of this job template is to run
1184     #   - change version in all POM files to the release version specified
1185     #     in version.properties. This is done using a script instread of
1186     #     the mvn version plugin that assumes some specific parent structure.
1187     #   - runs maven clean deploy sonar
1188     #
1189     # The POM files are required to use the Maven staging plugin so the deploy
1190     # does not deploy directly to the release repo.
1191     #
1192     # Required Variables:
1193     #     branch:    git branch (eg. stable/lithium or master)
1194     #     pom:       name/location of the pom.xml file relative to the workspace
1195     #     pattern:   ant file-path pattern relative to the workspace used to
1196     #                trigger the job
1197
1198     name: '{project-name}-{stream}-{subproject}-release-version2-java-daily'
1199
1200     project-type: freestyle
1201     node: '{build-node}'
1202     maven-deploy-properties:
1203     properties:
1204       - infra-properties:
1205           build-days-to-keep: '{build-days-to-keep}'
1206
1207     parameters:
1208       - infra-parameters:
1209           project: '{project}'
1210           branch: '{branch}'
1211           refspec: 'refs/heads/{branch}'
1212           artifacts: '{archive-artifacts}'
1213       - maven-exec:
1214           maven-version: '{maven-version}'
1215
1216     scm:
1217       - gerrit-trigger-scm:
1218           refspec: ''
1219           choosing-strategy: 'default'
1220
1221     wrappers:
1222       - infra-wrappers:
1223           build-timeout: '{build-timeout}'
1224
1225     triggers:
1226       # 11 AM UTC
1227       - timed: 'H 11 * * *'
1228       - gerrit-trigger-release-manually:
1229           server: '{server-name}'
1230           project: '{project}'
1231           branch: '{branch}'
1232           files: '{pattern}'
1233
1234     builders:
1235       - provide-maven-settings:
1236           global-settings-file: 'global-settings'
1237           settings-file: '{mvn-settings}'
1238       - maven-install:
1239           maven-version: '{maven-version}'
1240
1241       - inject:
1242           properties-file: version.properties
1243
1244       - shell: !include-raw-escape: include-update-pom-versions.sh
1245
1246       - maven-target:
1247           maven-version: '{maven-version}'
1248           pom: '{pom}'
1249           goals: 'clean deploy sonar:sonar site:site site:stage-deploy
1250             -Dsonar.host.url=${{SONAR}} -B
1251             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1252           properties:
1253             - '{maven-deploy-properties}'
1254           settings: '{mvn-settings}'
1255           settings-type: cfp
1256           global-settings: 'global-settings'
1257           global-settings-type: cfp
1258
1259     publishers:
1260       - infra-shiplogs:
1261           maven-version: '{maven-version}'
1262
1263 - job-template:
1264     # Template for maven site plugin invocation
1265     #
1266     # It's designed to be triggered when the trigger-job job
1267     # succeeds as there's no need for new documentaiton
1268     # if the build job fails.
1269     #
1270     # Those parameters should be set :
1271     # - site-pom : the pom file that contains the site confiration
1272     # - trigger-job : the name of the project that triggers this job
1273     #                     upon success. The job name can be
1274     #                     parameterized.
1275     name: '{project-name}-{stream}-stage-site-java'
1276     project-type: freestyle
1277     node: '{build-node}'
1278
1279     properties:
1280       - infra-properties:
1281           build-days-to-keep: '{build-days-to-keep}'
1282
1283     parameters:
1284       - infra-parameters:
1285           project: '{project}'
1286           branch: '{branch}'
1287           refspec: 'refs/heads/{branch}'
1288           artifacts: '{archive-artifacts}'
1289       - maven-exec:
1290           maven-version: '{maven-version}'
1291
1292     scm:
1293       - gerrit-trigger-scm:
1294           refspec: ''
1295           choosing-strategy: 'default'
1296
1297     wrappers:
1298       - infra-wrappers:
1299           build-timeout: '{build-timeout}'
1300
1301     triggers:
1302       - trigger-on-build-success:
1303           job-name: '{trigger-job}'
1304
1305     builders:
1306       - provide-maven-settings:
1307           global-settings-file: 'global-settings'
1308           settings-file: '{mvn-settings}'
1309       - inject:
1310           properties-file: version.properties
1311       - maven-target:
1312           maven-version: '{maven-version}'
1313           goals: 'versions:set versions:update-child-modules versions:commit'
1314           properties:
1315             - 'newVersion=${{release_version}}'
1316           settings: '{mvn-settings}'
1317           settings-type: cfp
1318           global-settings: 'global-settings'
1319           global-settings-type: cfp
1320
1321       - maven-target:
1322           maven-version: '{maven-version}'
1323           pom: '{site-pom}'
1324           goals: 'clean site:site site:stage-deploy'
1325           settings: '{mvn-settings}'
1326           settings-type: cfp
1327           global-settings: 'global-settings'
1328           global-settings-type: cfp
1329
1330     publishers:
1331       - infra-shiplogs:
1332           maven-version: '{maven-version}'
1333
1334 - job-template:
1335     # Job template for Java merge jobs
1336     #
1337     # The purpose of this job template is to run "maven clean deploy" for
1338     # projects using this template.
1339     #
1340     # Required Variables:
1341     #     branch:    git branch (eg. stable/lithium or master)
1342     name: '{project-name}-{stream}-sdc-merge-java'
1343
1344     project-type: freestyle
1345     node: 'ubuntu1604-docker-8c-8g'
1346
1347     properties:
1348       - infra-properties:
1349           build-days-to-keep: '{build-days-to-keep}'
1350
1351     parameters:
1352       - infra-parameters:
1353           project: '{project}'
1354           branch: '{branch}'
1355           refspec: 'refs/heads/{branch}'
1356           artifacts: '{archive-artifacts}'
1357       - maven-exec:
1358           maven-version: '{maven-version}'
1359
1360     scm:
1361       - gerrit-trigger-scm:
1362           refspec: ''
1363           choosing-strategy: 'default'
1364
1365     wrappers:
1366       - infra-wrappers:
1367           build-timeout: '{build-timeout}'
1368
1369     triggers:
1370       - gerrit-trigger-patch-merged:
1371           server: '{server-name}'
1372           project: '{project}'
1373           branch: '{branch}'
1374           files: '**'
1375
1376     builders:
1377       - provide-maven-settings:
1378           global-settings-file: 'global-settings'
1379           settings-file: '{mvn-settings}'
1380
1381       - docker-login
1382
1383       - maven-docker-push-daily:
1384           maven-version: '{maven-version}'
1385           mvn-settings: '{mvn-settings}'
1386           pom: '{docker-pom}'
1387           # use default as mvn-profile if profile is not needed
1388           mvn-profile: '{mvn-profile}'
1389
1390     publishers:
1391       - infra-shiplogs:
1392           maven-version: '{maven-version}'
1393
1394 - job-template:
1395     name: '{project-name}-{stream}-aai-docker-java-version-daily'
1396     project-type: freestyle
1397     node: 'ubuntu1604-docker-8c-8g'
1398
1399     properties:
1400       - infra-properties:
1401           build-days-to-keep: '{build-days-to-keep}'
1402
1403     parameters:
1404       - infra-parameters:
1405           project: '{project}'
1406           branch: '{branch}'
1407           refspec: 'refs/heads/{branch}'
1408           artifacts: '{archive-artifacts}'
1409       - maven-exec:
1410           maven-version: '{maven-version}'
1411
1412     scm:
1413       - gerrit-trigger-scm:
1414           refspec: ''
1415           choosing-strategy: 'default'
1416
1417     wrappers:
1418       - infra-wrappers:
1419           build-timeout: '{build-timeout}'
1420
1421     triggers:
1422       # 12 AM UTC
1423       - timed: 'H 12 * * *'
1424       - gerrit-trigger-release-manually:
1425           server: '{server-name}'
1426           project: '{project}'
1427           branch: '{branch}'
1428
1429     builders:
1430
1431       - provide-maven-settings:
1432           global-settings-file: 'global-settings'
1433           settings-file: '{mvn-settings}'
1434
1435       - docker-login
1436
1437       - maven-target:
1438           maven-version: '{maven-version}'
1439           pom: 'pom.xml'
1440           goals: 'clean install -DskipTests -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
1441           settings: '{mvn-settings}'
1442           settings-type: cfp
1443           global-settings: 'global-settings'
1444           global-settings-type: cfp
1445
1446       - maven-target:
1447           maven-version: '{maven-version}'
1448           pom: '{pom}'
1449           goals: '{mvn-goals}'
1450           settings: '{mvn-settings}'
1451           settings-type: cfp
1452           global-settings: 'global-settings'
1453           global-settings-type: cfp
1454           properties:
1455             - maven.test.skip=true
1456             - docker.pull.registry=nexus3.onap.org:10001
1457             - docker.push.registry=nexus3.onap.org:10003
1458
1459     publishers:
1460       - infra-shiplogs:
1461           maven-version: '{maven-version}'
1462