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