Merge "Fix info-vote job"
[releng/global-jjb.git] / jjb / lf-node-jobs.yaml
1 ---
2
3 ###############
4 # Node Verify #
5 ###############
6
7 - lf_node_verify: &lf_node_verify
8     name: lf-node-verify
9
10     ######################
11     # Default parameters #
12     ######################
13
14     branch: master
15     build-days-to-keep: 7
16     build-timeout: 10
17     disable-job: false
18     git-url: '$GIT_URL/$GERRIT_PROJECT'
19     github-url: 'https://github.com'
20     node-dir: ''
21     stream: master
22     submodule-recursive: true
23     submodule-timeout: 10
24     submodule-disable: false
25
26     gerrit_trigger_file_paths:
27       - compare-type: REG_EXP
28         pattern: '.*'
29
30     # github_included_regions MUST match gerrit_trigger_file_paths
31     github_included_regions:
32       - '.*'
33
34     #####################
35     # Job Configuration #
36     #####################
37
38     project-type: freestyle
39     node: '{build-node}'
40     concurrent: true
41     disabled: '{disable-job}'
42
43     properties:
44       - lf-infra-properties:
45           build-days-to-keep: '{build-days-to-keep}'
46
47     parameters:
48       - lf-infra-parameters:
49           project: '{project}'
50           branch: '{branch}'
51           stream: '{stream}'
52       - lf-infra-node-parameters:
53           node-dir: '{node-dir}'
54           node-version: '{node-version}'
55
56     wrappers:
57       - lf-infra-wrappers:
58           build-timeout: '{build-timeout}'
59           jenkins-ssh-credential: '{jenkins-ssh-credential}'
60
61     builders:
62       - shell: !include-raw-escape:
63           - ../shell/node-install.sh
64           - ../shell/node-run.sh
65
66     publishers:
67       - lf-infra-publish
68
69 - job-template:
70     name: '{project-name}-node-verify-{stream}'
71     id: gerrit-node-verify
72     <<: *lf_node_verify
73
74     ######################
75     # Default parameters #
76     ######################
77
78     gerrit_verify_triggers:
79       - patchset-created-event:
80           exclude-drafts: true
81           exclude-trivial-rebase: false
82           exclude-no-code-change: false
83       - draft-published-event
84       - comment-added-contains-event:
85           comment-contains-value: '^Patch Set\s+\d+:\s+(recheck|reverify)\s*$'
86
87     #####################
88     # Job Configuration #
89     #####################
90
91     scm:
92       - lf-infra-gerrit-scm:
93           jenkins-ssh-credential: '{jenkins-ssh-credential}'
94           git-url: '{git-url}'
95           refspec: '$GERRIT_REFSPEC'
96           branch: 'origin/$GERRIT_BRANCH'
97           submodule-recursive: '{submodule-recursive}'
98           submodule-timeout: '{submodule-timeout}'
99           submodule-disable: '{submodule-disable}'
100           choosing-strategy: gerrit
101
102     triggers:
103       - gerrit:
104           server-name: '{gerrit-server-name}'
105           trigger-on: '{obj:gerrit_verify_triggers}'
106           projects:
107             - project-compare-type: ANT
108               project-pattern: '{project}'
109               branches:
110                 - branch-compare-type: ANT
111                   branch-pattern: '**/{branch}'
112               file-paths: '{obj:gerrit_trigger_file_paths}'
113
114 - job-template:
115     name: '{project-name}-node-verify-{stream}'
116     id: github-node-verify
117     <<: *lf_node_verify
118
119     properties:
120       - lf-infra-properties:
121           build-days-to-keep: '{build-days-to-keep}'
122       - github:
123           url: '{github-url}/{github-org}/{project}'
124
125     scm:
126       - lf-infra-github-scm:
127           url: '{git-clone-url}{github-org}/{project}'
128           refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
129           branch: '$sha1'
130           submodule-recursive: '{submodule-recursive}'
131           submodule-timeout: '{submodule-timeout}'
132           submodule-disable: '{submodule-disable}'
133           choosing-strategy: default
134           jenkins-ssh-credential: '{jenkins-ssh-credential}'
135
136     triggers:
137       - github-pull-request:
138           trigger-phrase: '^(recheck|reverify)$'
139           only-trigger-phrase: false
140           status-context: 'Node Verify'
141           permit-all: true
142           github-hooks: true
143           included-regions: '{obj:github_included_regions}'
144           white-list-target-branches:
145             - '{branch}'