Update packer version to 1.2.2
[releng/global-jjb.git] / jjb / lf-ci-jobs.yaml
1 ---
2 - job-group:
3     name: '{project-name}-ci-jobs'
4
5     jobs:
6       - gerrit-jenkins-cfg-merge
7       - gerrit-jjb-deploy-job
8       - gerrit-jjb-merge
9       - gerrit-jjb-verify
10
11 - job-group:
12     name: '{project-name}-github-ci-jobs'
13
14     jobs:
15       - github-jenkins-cfg-merge
16       - github-jjb-deploy-job
17       - github-jjb-merge
18       - github-jjb-verify
19
20 - job-group:
21     name: '{project-name}-packer-jobs'
22
23     packer-version: 1.2.2
24
25     jobs:
26       - gerrit-packer-merge
27       - gerrit-packer-verify
28
29
30 - job-group:
31     name: '{project-name}-github-packer-jobs'
32
33     packer-version: 1.2.2
34
35     jobs:
36       - github-packer-merge
37       - github-packer-verify
38
39 ####################
40 # COMMON FUNCTIONS #
41 ####################
42
43 - builder:
44     name: lf-infra-jjbini
45     builders:
46       - config-file-provider:
47           files:
48             - file-id: jjbini
49               target: '$HOME/.config/jenkins_jobs/jenkins_jobs.ini'
50
51 - builder:
52     name: lf-infra-jjbini-sandbox
53     # TODO: Consolidate this into jjbini when JJB2.0 is available.
54     builders:
55       - config-file-provider:
56           files:
57             - file-id: jjbini-sandbox
58               target: '$HOME/.config/jenkins_jobs/jenkins_jobs.ini'
59
60 - lf_packer_file_paths: &lf_packer_file_paths
61     name: lf-packer-file-paths
62     file-paths:
63       - compare-type: ANT
64         pattern: 'packer/vars/{platforms}.json'
65       - compare-type: ANT
66         pattern: 'packer/templates/{templates}.json'
67       - compare-type: ANT
68         pattern: 'packer/provision/*.sh'
69       - compare-type: ANT
70         pattern: 'packer/provision/{templates}.yaml'
71       - compare-type: ANT
72         pattern: 'packer/provision/local-{templates}.yaml'
73       - compare-type: ANT
74         pattern: 'packer/provision/lib/**'
75
76 - lf_packer: &lf_packer_common
77     name: lf-packer-common
78     # Provide configuration common in packer jobs.
79
80     ######################
81     # Default parameters #
82     ######################
83
84     branch: master
85     build-timeout: 90
86     stream: master
87     submodule-recursive: true
88     packer-cloud-settings: packer-cloud-env
89
90     #####################
91     # Job Configuration #
92     #####################
93
94     project-type: freestyle
95     node: '{build-node}'
96
97     properties:
98       - lf-infra-properties:
99           project: '{project}'
100           build-days-to-keep: 7
101
102     parameters:
103       - lf-infra-parameters:
104           project: '{project}'
105           stream: '{stream}'
106           branch: '{branch}'
107           lftools-version: '{lftools-version}'
108       - lf-infra-packer-parameters:
109           packer-version: '{packer-version}'
110
111     wrappers:
112       - lf-infra-wrappers:
113           build-timeout: '{build-timeout}'
114           jenkins-ssh-credential: '{jenkins-ssh-credential}'
115
116     publishers:
117       - lf-infra-publish
118
119 - parameter:
120     name: lf-infra-jjb-parameters
121     parameters:
122       - string:
123           name: JJB_VERSION
124           default: '{jjb-version}'
125           description: Jenkins Job Builder version to download and install.
126
127 - parameter:
128     name: lf-infra-packer-parameters
129     parameters:
130       - string:
131           name: PACKER_VERSION
132           default: '{packer-version}'
133           description: Packer version to download and install.
134
135 - lf_jjb_common: &lf_jjb_common
136     name: lf-jjb-common
137
138     ######################
139     # Default parameters #
140     ######################
141
142     branch: master
143     build-timeout: 10
144     jjb-version: 2.0.3
145     stream: master
146     submodule-recursive: true
147
148     gerrit_trigger_file_paths:
149       - compare-type: ANT
150         pattern: '**/*.sh'
151       - compare-type: ANT
152         pattern: '**/*.yaml'
153       - compare-type: ANT
154         pattern: '**/global-jjb'
155
156     #####################
157     # Job Configuration #
158     #####################
159
160     project-type: freestyle
161     node: '{build-node}'
162
163     properties:
164       - lf-infra-properties:
165           project: '{project}'
166           build-days-to-keep: 7
167
168     parameters:
169       - lf-infra-parameters:
170           project: '{project}'
171           stream: '{stream}'
172           branch: '{branch}'
173           lftools-version: '{lftools-version}'
174       - lf-infra-jjb-parameters:
175           jjb-version: '{jjb-version}'
176
177     wrappers:
178       - lf-infra-wrappers:
179           build-timeout: '{build-timeout}'
180           jenkins-ssh-credential: '{jenkins-ssh-credential}'
181
182     publishers:
183       - lf-infra-publish
184
185 ######################
186 # Gerrit Branch Lock #
187 ######################
188
189 - job-template:
190     name: '{project-name}-gerrit-branch-lock-{stream}'
191     id: gerrit-branch-lock
192
193     ######################
194     # Default parameters #
195     ######################
196
197     branch: master
198     git-url: '$GIT_URL/$GERRIT_PROJECT'
199     stream: master
200     gerrit_merge_triggers:
201       - comment-added-contains-event:
202           comment-contains-value: (un)?lock branch$
203
204     #####################
205     # Job Configuration #
206     #####################
207
208     project-type: freestyle
209     node: '{build-node}'
210
211     properties:
212       - lf-infra-properties:
213           project: '{project}'
214           build-days-to-keep: 1
215
216     parameters:
217       - lf-infra-parameters:
218           project: '{project}'
219           stream: '{stream}'
220           branch: '{branch}'
221           lftools-version: '{lftools-version}'
222
223     wrappers:
224       - lf-infra-wrappers:
225           build-timeout: 5
226           jenkins-ssh-credential: '{jenkins-ssh-credential}'
227
228     scm:
229       - lf-infra-gerrit-scm:
230           git-url: '{git-url}'
231           refspec: ''
232           branch: '{branch}'
233           submodule-recursive: false
234           choosing-strategy: default
235           jenkins-ssh-credential: '{jenkins-ssh-credential}'
236
237     triggers:
238       - gerrit:
239           server-name: '{gerrit-server-name}'
240           trigger-on: '{obj:gerrit_merge_triggers}'
241           projects:
242             - project-compare-type: ANT
243               project-pattern: '{project}'
244               branches:
245                 - branch-compare-type: ANT
246                   branch-pattern: '**/{branch}'
247
248     builders:
249       - shell: !include-raw-escape: ../shell/gerrit-branch-lock.sh
250
251
252     publishers:
253       - lf-infra-publish
254
255 ##########################################
256 # Jenkins Configuration Management Merge #
257 ##########################################
258
259 - builder:
260     name: lf-jenkins-cfg-clouds
261     builders:
262       - lf-infra-jjbini
263       - inject:
264           properties-content: 'jenkins_silos={jenkins-silos}'
265       - shell: !include-raw-escape: ../shell/jenkins-configure-clouds.sh
266       - shell: rm "$HOME/.config/jenkins_jobs/jenkins_jobs.ini"
267
268 - builder:
269     name: lf-jenkins-cfg-global-vars
270     builders:
271       - lf-infra-jjbini
272       - inject:
273           properties-content: 'jenkins_silos={jenkins-silos}'
274       - shell: !include-raw-escape: ../shell/jenkins-configure-global-vars.sh
275       - shell: rm "$HOME/.config/jenkins_jobs/jenkins_jobs.ini"
276
277 - lf_jenkins_configuration: &lf_jenkins_cfg_merge
278     name: lf-jenkins-cfg-merge
279
280     ######################
281     # Default parameters #
282     ######################
283
284     branch: master
285     cron: '@daily'
286     git-url: '$GIT_URL/$GERRIT_PROJECT'
287     jenkins-silos: production sandbox
288
289     gerrit_merge_triggers:
290       - change-merged-event
291       - comment-added-contains-event:
292           comment-contains-value: remerge$
293
294     gerrit_trigger_file_paths:
295       - compare-type: ANT
296         pattern: 'jenkins-config/**'
297
298     #####################
299     # Job Configuration #
300     #####################
301
302     project-type: freestyle
303     node: '{build-node}'
304     concurrent: false
305
306     properties:
307       - lf-infra-properties:
308           project: '{project}'
309           build-days-to-keep: 1
310
311     parameters:
312       - lf-infra-parameters:
313           project: '{project}'
314           stream: ''
315           branch: master
316           lftools-version: '{lftools-version}'
317
318     wrappers:
319       - lf-infra-wrappers:
320           build-timeout: 10
321           jenkins-ssh-credential: '{jenkins-ssh-credential}'
322
323     builders:
324       - shell: !include-raw-escape:
325           - ../shell/lftools-install.sh
326       - lf-jenkins-cfg-global-vars:
327           jenkins-silos: '{jenkins-silos}'
328       - lf-jenkins-cfg-clouds:
329           jenkins-silos: '{jenkins-silos}'
330
331     publishers:
332       - lf-infra-publish
333
334 - job-template:
335     name: '{project-name}-jenkins-cfg-merge'
336     id: gerrit-jenkins-cfg-merge
337     <<: *lf_jenkins_cfg_merge
338
339     scm:
340       - lf-infra-gerrit-scm:
341           git-url: '{git-url}'
342           refspec: 'refs/heads/{branch}'
343           branch: '{branch}'
344           submodule-recursive: true
345           choosing-strategy: default
346           jenkins-ssh-credential: '{jenkins-ssh-credential}'
347
348     triggers:
349       - timed: '{obj:cron}'
350       - gerrit:
351           server-name: '{gerrit-server-name}'
352           trigger-on: '{obj:gerrit_merge_triggers}'
353           projects:
354             - project-compare-type: ANT
355               project-pattern: '{project}'
356               branches:
357                 - branch-compare-type: ANT
358                   branch-pattern: '**/{branch}'
359               file-paths: '{obj:gerrit_trigger_file_paths}'
360
361 - job-template:
362     name: '{project-name}-jenkins-cfg-merge'
363     id: github-jenkins-cfg-merge
364     <<: *lf_jenkins_cfg_merge
365
366     properties:
367       - github:
368           url: '{git-url}/{github-org}/{project}'
369
370     scm:
371       - lf-infra-github-scm:
372           url: '{git-clone-url}{github-org}/{project}'
373           refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
374           branch: '$sha1'
375           submodule-recursive: true
376           choosing-strategy: default
377           jenkins-ssh-credential: '{jenkins-ssh-credential}'
378
379     triggers:
380       - timed: '{obj:cron}'
381       - github
382       - pollscm:
383           cron: ''
384       - lf-infra-github-pr-trigger:
385           trigger-phrase: '^remerge$'
386           only-trigger-phrase: true
387           status-context: 'Jenkins CFG Merge'
388           permit-all: false
389           github-hooks: true
390           github-org: '{github-org}'
391           github_pr_whitelist: '{obj:github_pr_whitelist}'
392           github_pr_admin_list: '{obj:github_pr_admin_list}'
393
394
395 ##################
396 # JJB DEPLOY JOB #
397 ##################
398
399 - lf_jjb_deploy_job: &lf_jjb_deploy_job
400     name: lf-jjb-deploy-job
401
402     ######################
403     # Default parameters #
404     ######################
405
406     branch: master
407     git-url: '$GIT_URL/$GERRIT_PROJECT'
408     stream: master
409     gerrit_jjb_deploy_job_triggers:
410       - comment-added-contains-event:
411           comment-contains-value: 'jjb-deploy[:]* (?!\*+$).+$'
412
413     #####################
414     # Job Configuration #
415     #####################
416
417     project-type: freestyle
418     node: '{build-node}'
419     concurrent: true
420
421     properties:
422       - lf-infra-properties:
423           project: '{project}'
424           build-days-to-keep: 1
425
426     parameters:
427       - lf-infra-parameters:
428           project: '{project}'
429           stream: '{stream}'
430           branch: '{branch}'
431           lftools-version: '{lftools-version}'
432
433     wrappers:
434       - lf-infra-wrappers:
435           build-timeout: 5
436           jenkins-ssh-credential: '{jenkins-ssh-credential}'
437
438     builders:
439       - lf-pip-install:
440           pip-packages: jenkins-job-builder
441       - lf-infra-jjbini-sandbox
442       - shell: !include-raw-escape: ../shell/jjb-deploy-job.sh
443
444     publishers:
445       - lf-infra-publish
446
447 - job-template:
448     name: '{project-name}-jjb-deploy-job'
449     id: gerrit-jjb-deploy-job
450     <<: *lf_jjb_deploy_job
451
452     scm:
453       - lf-infra-gerrit-scm:
454           git-url: '{git-url}'
455           refspec: 'refs/heads/{branch}'
456           branch: '{branch}'
457           submodule-recursive: true
458           choosing-strategy: default
459           jenkins-ssh-credential: '{jenkins-ssh-credential}'
460
461     triggers:
462       - gerrit:
463           server-name: '{gerrit-server-name}'
464           trigger-on: '{obj:gerrit_jjb_deploy_job_triggers}'
465           projects:
466             - project-compare-type: ANT
467               project-pattern: '{project}'
468               branches:
469                 - branch-compare-type: ANT
470                   branch-pattern: '**/{branch}'
471
472 - job-template:
473     name: '{project-name}-jjb-deploy-job'
474     id: github-jjb-deploy-job
475     <<: *lf_jjb_deploy_job
476
477     properties:
478       - github:
479           url: '{git-url}/{github-org}/{project}'
480
481     scm:
482       - lf-infra-github-scm:
483           url: '{git-clone-url}{github-org}/{project}'
484           refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
485           branch: '$sha1'
486           submodule-recursive: true
487           choosing-strategy: default
488           jenkins-ssh-credential: '{jenkins-ssh-credential}'
489
490     triggers:
491       - lf-infra-github-pr-trigger:
492           trigger-phrase: '^jjb-deploy (?!\*+$).+$'
493           only-trigger-phrase: true
494           status-context: 'JJB Deploy Job'
495           permit-all: true
496           github-hooks: true
497           github-org: ''
498           github_pr_whitelist:
499             - ''
500           github_pr_admin_list:
501             - ''
502
503 #############
504 # JJB Merge #
505 #############
506
507 - lf_jjb_merge: &lf_jjb_merge
508     name: lf-jjb-merge
509
510     ######################
511     # Default parameters #
512     ######################
513
514     gerrit_merge_triggers:
515       - change-merged-event
516       - comment-added-contains-event:
517           comment-contains-value: remerge$
518
519     #####################
520     # Job Configuration #
521     #####################
522
523     builders:
524       - lf-infra-jjbini
525       - shell: !include-raw-escape:
526           - ../shell/jjb-install.sh
527           - ../shell/jjb-merge-job.sh
528
529 - job-template:
530     name: '{project-name}-jjb-merge'
531     id: gerrit-jjb-merge
532     <<: *lf_jjb_common
533     # yamllint disable-line rule:key-duplicates
534     <<: *lf_jjb_merge
535
536     git-url: '$GIT_URL/$GERRIT_PROJECT'
537
538     scm:
539       - lf-infra-gerrit-scm:
540           git-url: '{git-url}'
541           refspec: ''
542           branch: '{branch}'
543           submodule-recursive: '{submodule-recursive}'
544           choosing-strategy: default
545           jenkins-ssh-credential: '{jenkins-ssh-credential}'
546
547     triggers:
548       - gerrit:
549           server-name: '{gerrit-server-name}'
550           trigger-on: '{obj:gerrit_merge_triggers}'
551           projects:
552             - project-compare-type: ANT
553               project-pattern: '{project}'
554               branches:
555                 - branch-compare-type: ANT
556                   branch-pattern: '**/{branch}'
557               file-paths: '{obj:gerrit_trigger_file_paths}'
558
559 - job-template:
560     name: '{project-name}-jjb-merge'
561     id: github-jjb-merge
562     <<: *lf_jjb_common
563     # yamllint disable-line rule:key-duplicates
564     <<: *lf_jjb_merge
565
566     properties:
567       - github:
568           url: '{git-url}/{github-org}/{project}'
569
570     scm:
571       - lf-infra-github-scm:
572           url: '{git-clone-url}{github-org}/{project}'
573           refspec: ''
574           branch: 'refs/heads/{branch}'
575           submodule-recursive: '{submodule-recursive}'
576           choosing-strategy: default
577           jenkins-ssh-credential: '{jenkins-ssh-credential}'
578
579     triggers:
580       - github
581       - pollscm:
582           cron: ''
583       - lf-infra-github-pr-trigger:
584           trigger-phrase: '^remerge$'
585           only-trigger-phrase: true
586           status-context: 'JJB Merge'
587           permit-all: false
588           github-hooks: true
589           github-org: '{github-org}'
590           github_pr_whitelist: '{obj:github_pr_whitelist}'
591           github_pr_admin_list: '{obj:github_pr_admin_list}'
592
593 ##############
594 # JJB Verify #
595 ##############
596
597 - lf_jjb_verify: &lf_jjb_verify
598     name: lf-jjb-verify
599
600     ######################
601     # Default parameters #
602     ######################
603
604     gerrit_verify_triggers:
605       - patchset-created-event:
606           exclude-drafts: true
607           exclude-trivial-rebase: false
608           exclude-no-code-change: false
609       - draft-published-event
610       - comment-added-contains-event:
611           comment-contains-value: recheck$
612
613     #####################
614     # Job Configuration #
615     #####################
616
617     concurrent: true
618
619     builders:
620       - lf-infra-jjbini
621       - shell: !include-raw-escape:
622           - ../shell/git-validate-jira-urls.sh
623           - ../shell/jjb-install.sh
624           - ../shell/jjb-verify-job.sh
625           - ../shell/jjb-check-unicode.sh
626       - lf-infra-gpg-verify-git-signature
627
628 - job-template:
629     name: '{project-name}-jjb-verify'
630     id: gerrit-jjb-verify
631     <<: *lf_jjb_common
632     # yamllint disable-line rule:key-duplicates
633     <<: *lf_jjb_verify
634
635     git-url: '$GIT_URL/$GERRIT_PROJECT'
636
637     scm:
638       - lf-infra-gerrit-scm:
639           git-url: '{git-url}'
640           refspec: '$GERRIT_REFSPEC'
641           branch: '$GERRIT_BRANCH'
642           submodule-recursive: '{submodule-recursive}'
643           choosing-strategy: gerrit
644           jenkins-ssh-credential: '{jenkins-ssh-credential}'
645
646     triggers:
647       - gerrit:
648           server-name: '{gerrit-server-name}'
649           trigger-on: '{obj:gerrit_verify_triggers}'
650           projects:
651             - project-compare-type: ANT
652               project-pattern: '{project}'
653               branches:
654                 - branch-compare-type: ANT
655                   branch-pattern: '**/{branch}'
656               file-paths: '{obj:gerrit_trigger_file_paths}'
657
658 - job-template:
659     name: '{project-name}-jjb-verify'
660     id: github-jjb-verify
661     <<: *lf_jjb_common
662     # yamllint disable-line rule:key-duplicates
663     <<: *lf_jjb_verify
664
665     properties:
666       - github:
667           url: '{git-url}/{github-org}/{project}'
668
669     scm:
670       - lf-infra-github-scm:
671           url: '{git-clone-url}{github-org}/{project}'
672           refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
673           branch: '$sha1'
674           submodule-recursive: '{submodule-recursive}'
675           choosing-strategy: default
676           jenkins-ssh-credential: '{jenkins-ssh-credential}'
677
678     triggers:
679       - lf-infra-github-pr-trigger:
680           trigger-phrase: '^recheck$'
681           only-trigger-phrase: false
682           status-context: 'JJB Verify'
683           permit-all: true
684           github-hooks: true
685           github-org: ''
686           github_pr_whitelist:
687             - ''
688           github_pr_admin_list:
689             - ''
690
691 ################
692 # Packer Merge #
693 ################
694
695 - lf_packer_merge: &lf_packer_merge
696     name: lf-packer-merge
697
698     ######################
699     # Default parameters #
700     ######################
701
702     gerrit_merge_triggers:
703       - change-merged-event
704       - comment-added-contains-event:
705           comment-contains-value: remerge$
706
707     #####################
708     # Job Configuration #
709     #####################
710
711     builders:
712       - lf-infra-packer-validate:
713           packer-cloud-settings: '{packer-cloud-settings}'
714           packer-version: '{packer-version}'
715       - lf-infra-packer-build:
716           packer-cloud-settings: '{packer-cloud-settings}'
717           packer-version: '{packer-version}'
718           platform: '{platforms}'
719           template: '{templates}'
720
721 - job-template:
722     name: '{project-name}-packer-merge-{platforms}-{templates}'
723     id: gerrit-packer-merge
724     <<: *lf_packer_common
725     # yamllint disable-line rule:key-duplicates
726     <<: *lf_packer_merge
727
728     git-url: '$GIT_URL/$GERRIT_PROJECT'
729
730     scm:
731       - lf-infra-gerrit-scm:
732           git-url: '{git-url}'
733           refspec: '$GERRIT_REFSPEC'
734           branch: '$GERRIT_BRANCH'
735           submodule-recursive: '{submodule-recursive}'
736           choosing-strategy: gerrit
737           jenkins-ssh-credential: '{jenkins-ssh-credential}'
738
739     triggers:
740       - timed: '00 10 1 * *'
741       - gerrit:
742           server-name: '{gerrit-server-name}'
743           trigger-on: '{obj:gerrit_merge_triggers}'
744           projects:
745             - project-compare-type: ANT
746               project-pattern: '{project}'
747               branches:
748                 - branch-compare-type: ANT
749                   branch-pattern: '**/{branch}'
750               <<: *lf_packer_file_paths
751
752 - job-template:
753     name: '{project-name}-packer-merge-{platforms}-{templates}'
754     id: github-packer-merge
755     <<: *lf_packer_common
756     # yamllint disable-line rule:key-duplicates
757     <<: *lf_packer_merge
758
759     properties:
760       - github:
761           url: '{git-url}/{github-org}/{project}'
762
763     scm:
764       - lf-infra-github-scm:
765           url: '{git-clone-url}{github-org}/{project}'
766           refspec: ''
767           branch: 'refs/heads/{branch}'
768           submodule-recursive: '{submodule-recursive}'
769           choosing-strategy: default
770           jenkins-ssh-credential: '{jenkins-ssh-credential}'
771
772     triggers:
773       - timed: '00 10 1 * *'
774       - github
775       - pollscm:
776           cron: ''
777       - lf-infra-github-pr-trigger:
778           trigger-phrase: '^remerge$'
779           only-trigger-phrase: true
780           status-context: 'Packer {platforms}-${templates} Merge'
781           permit-all: false
782           github-hooks: true
783           github-org: '{github-org}'
784           github_pr_whitelist: '{obj:github_pr_whitelist}'
785           github_pr_admin_list: '{obj:github_pr_admin_list}'
786
787 #################
788 # Packer Verify #
789 #################
790
791 - lf_packer_verify: &lf_packer_verify
792     name: lf-packer-verify
793
794     ######################
795     # Default parameters #
796     ######################
797
798     build-timeout: 10
799
800     gerrit_verify_triggers:
801       - patchset-created-event:
802           exclude-drafts: true
803           exclude-trivial-rebase: false
804           exclude-no-code-change: false
805       - draft-published-event
806       - comment-added-contains-event:
807           comment-contains-value: recheck$
808
809     gerrit_trigger_file_paths:
810       - compare-type: ANT
811         pattern: 'packer/vars/**.json'
812       - compare-type: ANT
813         pattern: 'packer/templates/**.json'
814       - compare-type: ANT
815         pattern: 'packer/provision/**.sh'
816       - compare-type: ANT
817         pattern: 'packer/provision/lib/**'
818
819     #####################
820     # Job Configuration #
821     #####################
822
823     concurrent: true
824
825     builders:
826       - lf-infra-packer-validate:
827           packer-cloud-settings: '{packer-cloud-settings}'
828           packer-version: '{packer-version}'
829
830 - job-template:
831     name: '{project-name}-packer-verify'
832     id: gerrit-packer-verify
833     <<: *lf_packer_common
834     # yamllint disable-line rule:key-duplicates
835     <<: *lf_packer_verify
836
837     git-url: '$GIT_URL/$GERRIT_PROJECT'
838
839     scm:
840       - lf-infra-gerrit-scm:
841           git-url: '{git-url}'
842           refspec: '$GERRIT_REFSPEC'
843           branch: '$GERRIT_BRANCH'
844           submodule-recursive: '{submodule-recursive}'
845           choosing-strategy: gerrit
846           jenkins-ssh-credential: '{jenkins-ssh-credential}'
847
848     triggers:
849       - gerrit:
850           server-name: '{gerrit-server-name}'
851           trigger-on: '{obj:gerrit_verify_triggers}'
852           projects:
853             - project-compare-type: ANT
854               project-pattern: '{project}'
855               branches:
856                 - branch-compare-type: ANT
857                   branch-pattern: '**/{branch}'
858               file-paths: '{obj:gerrit_trigger_file_paths}'
859
860 - job-template:
861     name: '{project-name}-packer-verify'
862     id: github-packer-verify
863     <<: *lf_packer_common
864     # yamllint disable-line rule:key-duplicates
865     <<: *lf_packer_verify
866
867     properties:
868       - github:
869           url: '{git-url}/{github-org}/{project}'
870
871     scm:
872       - lf-infra-github-scm:
873           url: '{git-clone-url}{github-org}/{project}'
874           refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
875           branch: '$sha1'
876           submodule-recursive: '{submodule-recursive}'
877           choosing-strategy: default
878           jenkins-ssh-credential: '{jenkins-ssh-credential}'
879
880     triggers:
881       - lf-infra-github-pr-trigger:
882           trigger-phrase: '^recheck$'
883           only-trigger-phrase: false
884           status-context: 'Packer Verify'
885           permit-all: true
886           github-hooks: true
887           github-org: ''
888           github_pr_whitelist:
889             - ''
890           github_pr_admin_list:
891             - ''