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