Merge "Renaming openecomp to onap"
[ci-management.git] / jjb / global-templates-script.yaml
1 ---
2 # vim: sw=2 ts=2 sts=2 et :
3
4
5 - job-template:
6     # Job template for verifying a submission.  triggered on
7     # gerrit-trigger-patch-submitted, does scm, mvn with passed in goals,
8     # then run script
9     #
10     # Required Variables:
11     #   branch:         git branch
12     #   script:         build script to execute
13     #   mvn-settings:   settings file for this specific job
14     #   mvn-goals:      space separated list of maven build goals (e.g.
15     #                   clean, install etc, --version for noop)
16     name: '{project-name}-{stream}-verify-scm-mvn-script'
17
18     project-type: freestyle
19     concurrent: true
20     node: 'ubuntu1604-docker-8c-8g'
21
22     properties:
23       - infra-properties:
24           build-days-to-keep: '{build-days-to-keep}'
25
26     parameters:
27       - infra-parameters:
28           project: '{project}'
29           branch: '{branch}'
30           refspec: 'refs/heads/{branch}'
31           artifacts: '{archive-artifacts}'
32       - maven-exec:
33           maven-version: '{maven-version}'
34
35     scm:
36       - gerrit-trigger-scm:
37           refspec: '$GERRIT_REFSPEC'
38           choosing-strategy: 'gerrit'
39           submodule-recursive: '{submodule-recursive}'
40
41     wrappers:
42       - infra-wrappers:
43           build-timeout: '{build-timeout}'
44
45     triggers:
46       - gerrit-trigger-patch-submitted:
47           server: '{server-name}'
48           project: '{project}'
49           branch: '{branch}'
50           files: '**'
51
52     builders:
53       - provide-maven-settings:
54           global-settings-file: 'global-settings'
55           settings-file: '{mvn-settings}'
56       - maven-target:
57           maven-version: '{maven-version}'
58           goals: '{mvn-goals}'
59           settings: '{mvn-settings}'
60           settings-type: cfp
61           global-settings: 'global-settings'
62           global-settings-type: cfp
63       - docker-login
64       - shell: '{script}'
65
66     publishers:
67       - infra-shiplogs:
68           maven-version: '{maven-version}'
69
70 - job-template:
71     # Job template for merging a submission.  triggered on
72     # gerrit-trigger-patch-merged, does scm, mvn with passed-in goals, then
73     # run script
74     # Required Variables:
75     #   branch:         git branch
76     #   script:         build script to execute
77     #   mvn-settings:   settings file for this specific job
78     #   mvn-goals:      space separated list of maven build goals (--version
79     #                   for noop, clean deploy for deploy [snapshot])
80     name: '{project-name}-{stream}-merge-scm-mvn-script'
81
82     project-type: freestyle
83     node: 'ubuntu1604-docker-8c-8g'
84
85     properties:
86       - infra-properties:
87           build-days-to-keep: '{build-days-to-keep}'
88
89     parameters:
90       - infra-parameters:
91           project: '{project}'
92           branch: '{branch}'
93           refspec: 'refs/heads/{branch}'
94           artifacts: '{archive-artifacts}'
95       - maven-exec:
96           maven-version: '{maven-version}'
97
98     scm:
99       - gerrit-trigger-scm:
100           refspec: ''
101           choosing-strategy: 'default'
102           submodule-recursive: '{submodule-recursive}'
103
104     wrappers:
105       - infra-wrappers:
106           build-timeout: '{build-timeout}'
107
108     triggers:
109       - gerrit-trigger-patch-merged:
110           server: '{server-name}'
111           project: '{project}'
112           branch: '{branch}'
113           files: '**'
114
115     builders:
116       - provide-maven-settings:
117           global-settings-file: 'global-settings'
118           settings-file: '{mvn-settings}'
119       - maven-target:
120           maven-version: '{maven-version}'
121           goals: '{mvn-goals}'
122           settings: '{mvn-settings}'
123           settings-type: cfp
124           global-settings: 'global-settings'
125           global-settings-type: cfp
126       - docker-login
127       - shell: '{script}'
128
129     publishers:
130       - infra-shiplogs:
131           maven-version: '{maven-version}'
132
133 - job-template:
134     # Job template for daily-release a submission.  triggered on timer, does
135     # scm mvn with passed-in goals, then run script
136     #
137     # Required Variables:
138     #   branch:         git branch
139     #   script:         build script to execute
140     #   mvn-goals-versioning: space separated list of maven build goals
141     #      (--version for no op,
142     #      or versions:set versions:update-child-modules versions:commit)
143     #   mvn-goals: space separated list of maven build goals (--version for
144     #      noop, or clean deploy)
145     name: '{project-name}-{stream}-daily-release-scm-mvn-script'
146
147     project-type: freestyle
148     concurrent: true
149     node: 'ubuntu1604-docker-8c-8g'
150
151     properties:
152       - infra-properties:
153           build-days-to-keep: '{build-days-to-keep}'
154
155     parameters:
156       - infra-parameters:
157           project: '{project}'
158           branch: '{branch}'
159           refspec: 'refs/heads/{branch}'
160           artifacts: '{archive-artifacts}'
161       - maven-exec:
162           maven-version: '{maven-version}'
163
164     scm:
165       - gerrit-trigger-scm:
166           refspec: ''
167           choosing-strategy: 'default'
168           submodule-recursive: '{submodule-recursive}'
169
170     wrappers:
171       - infra-wrappers:
172           build-timeout: '{build-timeout}'
173
174     triggers:
175       # 11 AM UTC
176       - timed: 'H 11 * * *'
177       - gerrit-trigger-release-manually:
178           server: '{server-name}'
179           project: '{project}'
180           branch: '{branch}'
181
182     builders:
183       - provide-maven-settings:
184           global-settings-file: 'global-settings'
185           settings-file: '{mvn-settings}'
186       - inject:
187           properties-file: version.properties
188       - maven-target:
189           maven-version: '{maven-version}'
190           goals: '{mvn-goals-versioning}'
191           properties:
192             - 'newVersion=${{release_version}}'
193           settings: '{mvn-settings}'
194           settings-type: cfp
195           global-settings: 'global-settings'
196           global-settings-type: cfp
197
198       - maven-target:
199           maven-version: '{maven-version}'
200           goals: '{mvn-goals}'
201           properties:
202             - '{maven-deploy-properties}'
203           settings: '{mvn-settings}'
204           settings-type: cfp
205           global-settings: 'global-settings'
206           global-settings-type: cfp
207       - docker-login
208       - shell: '{script}'
209
210     publishers:
211       - infra-shiplogs:
212           maven-version: '{maven-version}'
213
214 - job-template:
215     # Job template for daily-release a submission.  triggered on timer, does
216     # scm mvn with passed-in goals, then run script.
217     # Version changed using include-update-pom-versions.sh script
218     #
219     # Required Variables:
220     #   branch:         git branch
221     #   script:         build script to execute
222     #   mvn-goals: space separated list of maven build goals (--version for
223     #      noop, or clean deploy)
224     name: '{project-name}-{stream}-daily-release-version2-scm-mvn-script'
225
226     project-type: freestyle
227     concurrent: true
228     node: 'ubuntu1604-docker-8c-8g'
229
230     properties:
231       - infra-properties:
232           build-days-to-keep: '{build-days-to-keep}'
233
234     parameters:
235       - infra-parameters:
236           project: '{project}'
237           branch: '{branch}'
238           refspec: 'refs/heads/{branch}'
239           artifacts: '{archive-artifacts}'
240       - maven-exec:
241           maven-version: '{maven-version}'
242
243     scm:
244       - gerrit-trigger-scm:
245           refspec: ''
246           choosing-strategy: 'default'
247           submodule-recursive: '{submodule-recursive}'
248
249     wrappers:
250       - infra-wrappers:
251           build-timeout: '{build-timeout}'
252
253     triggers:
254       # 11 AM UTC
255       - timed: 'H 11 * * *'
256       - gerrit-trigger-release-manually:
257           server: '{server-name}'
258           project: '{project}'
259           branch: '{branch}'
260
261     builders:
262       - provide-maven-settings:
263           global-settings-file: 'global-settings'
264           settings-file: '{mvn-settings}'
265
266       - inject:
267           properties-file: version.properties
268
269       - shell: !include-raw-escape: include-update-pom-versions.sh
270
271       - maven-target:
272           maven-version: '{maven-version}'
273           goals: '{mvn-goals}'
274           properties:
275             - '{maven-deploy-properties}'
276           settings: '{mvn-settings}'
277           settings-type: cfp
278           global-settings: 'global-settings'
279           global-settings-type: cfp
280       - docker-login
281       - shell: '{script}'
282
283     publishers:
284       - infra-shiplogs:
285           maven-version: '{maven-version}'
286
287 - job-template:
288     # Job template for verifying a submission.  triggered on
289     # gerrit-trigger-patch-submitted,
290     # does scm 2 repos, mvn with passed-in goals, then run script
291     #
292     # Required Variables:
293     #   branch:         git branch
294     #   script:         build script to execute
295     #   extra-project:  extra gerrit project to checkout
296     #   extra-refspec:  refspec for the extra project
297     #   extra-branch:   branch to checkout for the extra project
298     #   checkout-dir:   directory to checkout the extra project to
299     #                     DO NOT SET THIS TO anything that translates to
300     #                     $WORKSPACE as it will destroy the initial
301     #                     project checkout
302     #   mvn-goals:      space separated list of maven build goals (e.g.
303     #                   clean, install etc,  --version for noop)
304
305     name: '{project-name}-{stream}-verify-2scm-mvn-script'
306
307     project-type: freestyle
308     concurrent: true
309     node: 'ubuntu1604-docker-8c-8g'
310
311     properties:
312       - infra-properties:
313           build-days-to-keep: '{build-days-to-keep}'
314
315     parameters:
316       - infra-parameters:
317           project: '{project}'
318           branch: '{branch}'
319           refspec: 'refs/heads/{branch}'
320           artifacts: '{archive-artifacts}'
321       - maven-exec:
322           maven-version: '{maven-version}'
323
324     scm:
325       - gerrit-trigger-scm:
326           refspec: '$GERRIT_REFSPEC'
327           choosing-strategy: 'gerrit'
328           submodule-recursive: '{submodule-recursive}'
329       - git-extra-project:
330           project: '{extra-project}'
331           refspec: '{extra-refspec}'
332           branch: '{extra-branch}'
333           checkout-dir: '{checkout-dir}'
334
335     wrappers:
336       - infra-wrappers:
337           build-timeout: '{build-timeout}'
338
339     triggers:
340       - gerrit-trigger-patch-submitted:
341           server: '{server-name}'
342           project: '{project}'
343           branch: '{branch}'
344           files: '**'
345
346     builders:
347       - provide-maven-settings:
348           global-settings-file: 'global-settings'
349           settings-file: '{mvn-settings}'
350       - maven-target:
351           maven-version: '{maven-version}'
352           goals: '{mvn-goals}'
353           settings: '{mvn-settings}'
354           settings-type: cfp
355           global-settings: 'global-settings'
356           global-settings-type: cfp
357       - docker-login
358       - shell: '{script}'
359
360     publishers:
361       - infra-shiplogs:
362           maven-version: '{maven-version}'
363
364 - job-template:
365     # Job template for merged submission.  triggered on
366     # gerrit-trigger-patch-merged,does scm of 2 repos, mvn with passed in
367     # goals, then run script
368     #
369     # Required Variables:
370     #   branch:         git branch
371     #   script:         build script to execute
372     #   extra-project:  extra gerrit project to checkout
373     #   extra-refspec:  refspec for the extra project
374     #   extra-branch:   branch to checkout for the extra project
375     #   checkout-dir:   directory to checkout the extra project to
376     #                     DO NOT SET THIS TO anything that translates to
377     #                     $WORKSPACE as it will destroy the initial
378     #                     project checkout
379     #   mvn-goals:      space separated list of maven build goals (--version
380     #                   for noop, clean deploy for mvn project)
381
382     name: '{project-name}-{stream}-merge-2scm-mvn-script'
383
384     project-type: freestyle
385     concurrent: true
386     node: 'ubuntu1604-docker-8c-8g'
387
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           submodule-recursive: '{submodule-recursive}'
406       - git-extra-project:
407           project: '{extra-project}'
408           refspec: '{extra-refspec}'
409           branch: '{extra-branch}'
410           checkout-dir: '{checkout-dir}'
411
412     wrappers:
413       - infra-wrappers:
414           build-timeout: '{build-timeout}'
415
416     triggers:
417       - gerrit-trigger-patch-merged:
418           server: '{server-name}'
419           project: '{project}'
420           branch: '{branch}'
421           files: '**'
422
423     builders:
424       - provide-maven-settings:
425           global-settings-file: 'global-settings'
426           settings-file: '{mvn-settings}'
427       - maven-target:
428           maven-version: '{maven-version}'
429           goals: '{mvn-goals}'
430           settings: '{mvn-settings}'
431           settings-type: cfp
432           global-settings: 'global-settings'
433           global-settings-type: cfp
434       - docker-login
435       - shell: '{script}'
436
437     publishers:
438       - infra-shiplogs:
439           maven-version: '{maven-version}'
440
441 - job-template:
442     # Job template for merged submission.  triggered on
443     # gerrit-trigger-patch-merged, does scm x2, mvn with passed-in goals,
444     # then run script
445     #
446     # Required Variables:
447     #   branch:         git branch
448     #   script:         build script to execute
449     #   extra-project:  extra gerrit project to checkout
450     #   extra-refspec:  refspec for the extra project
451     #   extra-branch:   branch to checkout for the extra project
452     #   checkout-dir:   directory to checkout the extra project to
453     #                     DO NOT SET THIS TO anything that translates to
454     #                     $WORKSPACE as it will destroy the initial
455     #                     project checkout
456     #   mvn-goals:      space separated list of maven build goals (--version
457     #                   for noop, clean deploy for mvn project)
458     #   mvn-goals-versioning:      space separated list of maven build goals
459     #                   (--version for no op, clean deploy for mvn project)
460
461     name: '{project-name}-{stream}-daily-release-2scm-mvn-script'
462
463     project-type: freestyle
464     node: 'ubuntu1604-docker-8c-8g'
465
466     properties:
467       - infra-properties:
468           build-days-to-keep: '{build-days-to-keep}'
469
470     parameters:
471       - infra-parameters:
472           project: '{project}'
473           branch: '{branch}'
474           refspec: 'refs/heads/{branch}'
475           artifacts: '{archive-artifacts}'
476       - maven-exec:
477           maven-version: '{maven-version}'
478
479     scm:
480       - gerrit-trigger-scm:
481           refspec: ''
482           choosing-strategy: 'default'
483           submodule-recursive: '{submodule-recursive}'
484       - git-extra-project:
485           project: '{extra-project}'
486           refspec: '{extra-refspec}'
487           branch: '{extra-branch}'
488           checkout-dir: '{checkout-dir}'
489
490     wrappers:
491       - infra-wrappers:
492           build-timeout: '{build-timeout}'
493
494     triggers:
495       - timed: 'H 11 * * *'
496       - gerrit-trigger-release-manually:
497           server: '{server-name}'
498           project: '{project}'
499           branch: '{branch}'
500
501     builders:
502       - provide-maven-settings:
503           global-settings-file: 'global-settings'
504           settings-file: '{mvn-settings}'
505       - inject:
506           properties-file: version.properties
507       - maven-target:
508           maven-version: '{maven-version}'
509           goals: '{mvn-goals-versioning}'
510           properties:
511             - 'newVersion=${{release_version}}'
512           settings: '{mvn-settings}'
513           settings-type: cfp
514           global-settings: 'global-settings'
515           global-settings-type: cfp
516
517       - maven-target:
518           maven-version: '{maven-version}'
519           goals: '{mvn-goals}'
520           settings: '{mvn-settings}'
521           settings-type: cfp
522           global-settings: 'global-settings'
523           global-settings-type: cfp
524       - docker-login
525       - shell: '{script}'
526
527     publishers:
528       - infra-shiplogs:
529           maven-version: '{maven-version}'
530
531 - job-template:
532     # Job template for basic scm and script trigger
533     #
534     # Required Variables:
535     #   branch:         git branch
536     #   build-node:     what build node to run on
537     #   script:         build script to execute
538
539     name: '{project-name}-{stream}-verify-script'
540
541     project-type: freestyle
542     concurrent: true
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: '$GERRIT_REFSPEC'
561           choosing-strategy: 'gerrit'
562           submodule-recursive: '{submodule-recursive}'
563
564     wrappers:
565       - infra-wrappers:
566           build-timeout: '{build-timeout}'
567
568     triggers:
569       - gerrit-trigger-patch-submitted:
570           server: '{server-name}'
571           project: '{project}'
572           branch: '{branch}'
573           files: '**'
574
575     builders:
576       - provide-maven-settings:
577           global-settings-file: 'global-settings'
578           settings-file: '{mvn-settings}'
579       # make sure maven gets installed / setup
580       - maven-target:
581           maven-version: '{maven-version}'
582           goals: '--version'
583           settings: '{mvn-settings}'
584           settings-type: cfp
585           global-settings: 'global-settings'
586           global-settings-type: cfp
587       - shell: '{script}'
588
589     publishers:
590       - infra-shiplogs:
591           maven-version: '{maven-version}'
592
593 - job-template:
594     # Job template for 2 scm and script trigger
595     #
596     # Required Variables:
597     #   branch:         git branch
598     #   build-node:     what build node to run on
599     #   script:         build script to execute
600     #   extra-project:  extra gerrit project to checkout
601     #   extra-refspec:  refspec for the extra project
602     #   extra-branch:   branch to checkout for the extra project
603     #   checkout-dir:   directory to checkout the extra project to
604     #                     DO NOT SET THIS TO anything that translates to
605     #                     $WORKSPACE as it will destroy the initial
606     #                     project checkout
607
608     name: '{project-name}-{stream}-two-scm-verify-script'
609
610     project-type: freestyle
611     concurrent: true
612     node: '{build-node}'
613
614     properties:
615       - infra-properties:
616           build-days-to-keep: '{build-days-to-keep}'
617
618     parameters:
619       - infra-parameters:
620           project: '{project}'
621           branch: '{branch}'
622           refspec: 'refs/heads/{branch}'
623           artifacts: '{archive-artifacts}'
624       - maven-exec:
625           maven-version: '{maven-version}'
626
627     scm:
628       - gerrit-trigger-scm:
629           refspec: '$GERRIT_REFSPEC'
630           choosing-strategy: 'gerrit'
631           submodule-recursive: '{submodule-recursive}'
632       - git-extra-project:
633           project: '{extra-project}'
634           refspec: '{extra-refspec}'
635           branch: '{extra-branch}'
636           checkout-dir: '{checkout-dir}'
637
638     wrappers:
639       - infra-wrappers:
640           build-timeout: '{build-timeout}'
641
642     triggers:
643       - gerrit-trigger-patch-submitted:
644           server: '{server-name}'
645           project: '{project}'
646           branch: '{branch}'
647           files: '**'
648
649     builders:
650       - provide-maven-settings:
651           global-settings-file: 'global-settings'
652           settings-file: '{mvn-settings}'
653       # make sure maven gets installed / setup
654       - maven-target:
655           maven-version: '{maven-version}'
656           goals: '--version'
657           settings: '{mvn-settings}'
658           settings-type: cfp
659           global-settings: 'global-settings'
660           global-settings-type: cfp
661       - shell: '{script}'
662
663     publishers:
664       - infra-shiplogs:
665           maven-version: '{maven-version}'
666
667
668 - job-template:
669     # Job template for 3 scm and script trigger
670     #
671     # Required Variables:
672     #   branch:         git branch
673     #   build-node:     what build node to run on
674     #   script:         build script to execute
675     #   extra-project1:  extra gerrit project to checkout
676     #   extra-refspec1:  refspec for the extra project
677     #   extra-branch1:   branch to checkout for the extra project
678     #   checkout-dir1:   directory to checkout the extra project to
679     #                     DO NOT SET THIS TO anything that translates to
680     #                     $WORKSPACE as it will destroy the initial
681     #                     project checkout
682     #   extra-project2:  extra gerrit project to checkout
683     #   extra-refspec2:  refspec for the extra project
684     #   extra-branch2:   branch to checkout for the extra project
685     #   checkout-dir2:   directory to checkout the extra project to
686     #                     DO NOT SET THIS TO anything that translates to
687     #                     $WORKSPACE as it will destroy the initial
688     #                     project checkout
689     name: '{project-name}-{stream}-three-scm-verify-script'
690
691     project-type: freestyle
692     concurrent: true
693     node: '{build-node}'
694
695     properties:
696       - infra-properties:
697           build-days-to-keep: '{build-days-to-keep}'
698
699     parameters:
700       - infra-parameters:
701           project: '{project}'
702           branch: '{branch}'
703           refspec: 'refs/heads/{branch}'
704           artifacts: '{archive-artifacts}'
705       - maven-exec:
706           maven-version: '{maven-version}'
707     scm:
708       - gerrit-trigger-scm:
709           refspec: '$GERRIT_REFSPEC'
710           choosing-strategy: 'gerrit'
711           submodule-recursive: '{submodule-recursive}'
712       - git-extra-project:
713           project: '{extra-project1}'
714           refspec: '{extra-refspec1}'
715           branch: '{extra-branch1}'
716           checkout-dir: '{checkout-dir1}'
717       - git-extra-project:
718           project: '{extra-project2}'
719           refspec: '{extra-refspec2}'
720           branch: '{extra-branch2}'
721           checkout-dir: '{checkout-dir2}'
722
723     wrappers:
724       - infra-wrappers:
725           build-timeout: '{build-timeout}'
726
727     triggers:
728       - gerrit-trigger-patch-submitted:
729           server: '{server-name}'
730           project: '{project}'
731           branch: '{branch}'
732           files: '**'
733
734     builders:
735       - provide-maven-settings:
736           global-settings-file: 'global-settings'
737           settings-file: '{mvn-settings}'
738       # make sure maven gets installed / setup
739       - maven-target:
740           maven-version: '{maven-version}'
741           goals: '--version'
742           settings: '{mvn-settings}'
743           settings-type: cfp
744           global-settings: 'global-settings'
745           global-settings-type: cfp
746       - shell: '{script}'
747
748     publishers:
749       - infra-shiplogs:
750           maven-version: '{maven-version}'
751
752 # vim: sw=2 ts=2 sts=2 et :
753
754 - job-template:
755     # Job template for two scm and script trigger - for docker merge
756     #
757     # Required Variables:
758     #   branch:         git branch
759     #   build-node:     what build node to run on
760     #   script:         build script to execute
761
762     name: '{project-name}-{stream}-two-scm-merge-docker-script'
763
764     project-type: freestyle
765     concurrent: true
766     node: '{build-node}'
767
768     properties:
769       - infra-properties:
770           build-days-to-keep: '{build-days-to-keep}'
771
772     parameters:
773       - infra-parameters:
774           project: '{project}'
775           branch: '{branch}'
776           refspec: 'refs/heads/{branch}'
777           artifacts: '{archive-artifacts}'
778       - maven-exec:
779           maven-version: '{maven-version}'
780
781     scm:
782       - gerrit-trigger-scm:
783           refspec: ''
784           choosing-strategy: 'default'
785           submodule-recursive: '{submodule-recursive}'
786       - git-extra-project:
787           project: '{extra-project}'
788           refspec: '{extra-refspec}'
789           branch: '{extra-branch}'
790           checkout-dir: '{checkout-dir}'
791
792     wrappers:
793       - infra-wrappers:
794           build-timeout: '{build-timeout}'
795
796     triggers:
797       - gerrit-trigger-patch-merged:
798           server: '{server-name}'
799           project: '{project}'
800           branch: '{branch}'
801           files: '**'
802
803     builders:
804       - provide-maven-settings:
805           global-settings-file: 'global-settings'
806           settings-file: '{mvn-settings}'
807       - docker-login
808       # make sure maven gets installed / setup
809       - maven-target:
810           maven-version: '{maven-version}'
811           goals: '--version'
812           settings: '{mvn-settings}'
813           settings-type: cfp
814           global-settings: 'global-settings'
815           global-settings-type: cfp
816       - shell: '{script}'
817
818     publishers:
819       - infra-shiplogs:
820           maven-version: '{maven-version}'
821
822 - job-template:
823     # Job template for two scm and script trigger - for docker daily release
824     #
825     # Required Variables:
826     #   branch:         git branch
827     #   build-node:     what build node to run on
828     #   script:         build script to execute
829
830     name: '{project-name}-{stream}-two-scm-release-docker-script-manual'
831
832     project-type: freestyle
833     concurrent: true
834     node: '{build-node}'
835
836     properties:
837       - infra-properties:
838           build-days-to-keep: '{build-days-to-keep}'
839
840     parameters:
841       - infra-parameters:
842           project: '{project}'
843           branch: '{branch}'
844           refspec: 'refs/heads/{branch}'
845           artifacts: '{archive-artifacts}'
846       - maven-exec:
847           maven-version: '{maven-version}'
848
849     scm:
850       - gerrit-trigger-scm:
851           refspec: ''
852           choosing-strategy: 'default'
853           submodule-recursive: '{submodule-recursive}'
854       - git-extra-project:
855           project: '{extra-project}'
856           refspec: '{extra-refspec}'
857           branch: '{extra-branch}'
858           checkout-dir: '{checkout-dir}'
859
860     wrappers:
861       - infra-wrappers:
862           build-timeout: '{build-timeout}'
863
864     triggers:
865       - gerrit-trigger-release-manually:
866           server: '{server-name}'
867           project: '{project}'
868           branch: '{branch}'
869
870     builders:
871       - provide-maven-settings:
872           global-settings-file: 'global-settings'
873           settings-file: '{mvn-settings}'
874       - docker-login
875       # make sure maven gets installed / setup
876       - maven-target:
877           maven-version: '{maven-version}'
878           goals: '--version'
879           settings: '{mvn-settings}'
880           settings-type: cfp
881           global-settings: 'global-settings'
882           global-settings-type: cfp
883       - shell: '{script}'
884
885     publishers:
886       - infra-shiplogs:
887           maven-version: '{maven-version}'
888
889 - job-template:
890     # 1. PULL the desired image
891     # 2. TAG it to the desired release name
892     # 3. PUSH the newly tagged image on release repo
893
894     name: '{project-name}-docker-image-blessing'
895
896     project-type: freestyle
897     concurrent: true
898     node: 'ubuntu1604-docker-8c-8g'
899
900     parameters:
901       - string:
902           name: X
903           description: "x VERSION of the STAGING image to bless into this RELEASE VERSION
904             Example : 1"
905       - string:
906           name: Y
907           description: "y VERSION of the STAGING image to bless into this RELEASE VERSION
908             Example : 2"
909       - string:
910           name: Z
911           description: "z VERSION of the RELEASE VERSION
912             Example : 3"
913       - string:
914           name: PROJECT
915           default: '{project}'
916
917     properties:
918       - infra-properties:
919           build-days-to-keep: '{build-days-to-keep}'
920
921     wrappers:
922       - infra-wrappers:
923           build-timeout: '{build-timeout}'
924
925     builders:
926       - provide-maven-settings:
927           global-settings-file: 'global-settings'
928           settings-file: '{mvn-settings}'
929       - docker-login
930       - shell: !include-raw: include-docker-blessing.sh
931
932     publishers:
933       - infra-shiplogs:
934           maven-version: '{maven-version}'