Add 120 build timeout to helm jobs
[ci-management.git] / jjb / global-templates-helm.yaml
1 ---
2 ###########
3 # ANCHORS #
4 ###########
5 - helm_job_boiler_plate: &helm_job_boiler_plate
6     name: helm_job_boiler_plate
7
8     ######################
9     # Default parameters #
10     ######################
11
12     branch: master
13     submodule-recursive: true
14
15     # default params for helm jobs
16     build_script: ''
17     git-url: '$GIT_URL/$PROJECT'
18     post_build_script: ''
19     pre_build_script: ''
20     submodule-disable: false
21     submodule-recursive: true
22     submodule-timeout: 10
23     build-timeout: 120
24
25     #####################
26     # Job Configuration #
27     #####################
28
29     project-type: freestyle
30     node: '{build-node}'
31
32     properties:
33       - lf-infra-properties:
34           build-days-to-keep: '{build-days-to-keep}'
35
36     parameters:
37       - lf-infra-parameters:
38           branch: '{branch}'
39           project: '{project}'
40           stream: '{stream}'
41           lftools-version: '{lftools-version}'
42
43     wrappers:
44       - lf-infra-wrappers:
45           build-timeout: '{build-timeout}'
46           jenkins-ssh-credential: '{jenkins-ssh-credential}'
47
48     publishers:
49       - lf-infra-publish
50
51 #################
52 # JOB TEMPLATES #
53 #################
54 - job-template:
55     name: '{project-name}-{stream}-verify-helm'
56     # Job template for helm verify jobs
57
58     <<: *helm_job_boiler_plate
59     concurrent: true
60
61     scm:
62       - gerrit-trigger-scm:
63           refspec: '$GERRIT_REFSPEC'
64           choosing-strategy: 'gerrit'
65           submodule-recursive: '{submodule-recursive}'
66
67     triggers:
68       - gerrit-trigger-helm-patch-submitted:
69           status-context: '{project}-Helm-Verify'
70           server: '{server-name}'
71           project: '{project}'
72           branch: '{branch}'
73           files: '{files}'
74
75     builders:
76       - lf-infra-pre-build
77       - shell: '{obj:pre_build_script}'
78       - shell: '{obj:build_script}'
79
80 - job-template:
81     name: '{project-name}-{stream}-merge-helm'
82     # Job template for Helm merge jobs
83
84     <<: *helm_job_boiler_plate
85
86     scm:
87       - gerrit-trigger-scm:
88           refspec: ''
89           choosing-strategy: 'default'
90           submodule-recursive: '{submodule-recursive}'
91
92     triggers:
93       - gerrit-trigger-helm-patch-merged:
94           server: '{server-name}'
95           project: '{project}'
96           branch: '{branch}'
97           files: '{files}'
98
99     builders:
100       - lf-infra-pre-build
101       - lf-provide-maven-settings:
102           global-settings-file: '{mvn-global-settings}'
103           settings-file: '{mvn-settings}'
104       - shell: '{obj:pre_build_script}'
105       - shell: '{obj:build_script}'
106       - lf-infra-create-netrc:
107           server-id: oom-helm
108       - inject:
109           properties-content: |
110             BUILD_TYPE=snapshot
111       - shell: '{obj:post_build_script}'
112       - lf-provide-maven-settings-cleanup
113
114 - job-template:
115     name: '{project-name}-{stream}-verify-external-helm'
116     # Job template for helm verify jobs
117
118     <<: *helm_job_boiler_plate
119
120     parameters:
121       - lf-infra-parameters:
122           branch: '{branch}'
123           project: 'oom'
124           stream: '{stream}'
125           lftools-version: '{lftools-version}'
126
127     scm:
128       - lf-infra-gerrit-scm:
129           jenkins-ssh-credential: '{jenkins-ssh-credential}'
130           git-url: '{git-url}'
131           refspec: '$GERRIT_BRANCH'
132           branch: '$GERRIT_BRANCH'
133           submodule-recursive: '{submodule-recursive}'
134           submodule-timeout: '{submodule-timeout}'
135           submodule-disable: '{submodule-disable}'
136           choosing-strategy: default
137
138     triggers:
139       - gerrit-trigger-helm-patch-submitted:
140           status-context: '{project}-Helm-Verify'
141           server: '{server-name}'
142           project: '{project}'
143           branch: '{branch}'
144           files: '{files}'
145
146     builders:
147       - lf-infra-pre-build
148       - inject:
149           properties-content: 'HELM_MODULE={helm-module}'
150       - shell: !include-raw-escape: shell/apply-submodule-patch-oom.sh
151       - shell: '{obj:pre_build_script}'
152       - shell: '{obj:build_script}'
153
154 - job-template:
155     name: '{project-name}-{stream}-merge-external-helm'
156     # Job template for Helm merge jobs
157
158     <<: *helm_job_boiler_plate
159
160     parameters:
161       - lf-infra-parameters:
162           branch: '{branch}'
163           project: 'oom'
164           stream: '{stream}'
165           lftools-version: '{lftools-version}'
166
167     scm:
168       - lf-infra-gerrit-scm:
169           jenkins-ssh-credential: '{jenkins-ssh-credential}'
170           git-url: '{git-url}'
171           refspec: '$GERRIT_BRANCH'
172           branch: '$GERRIT_BRANCH'
173           submodule-recursive: '{submodule-recursive}'
174           submodule-timeout: '{submodule-timeout}'
175           submodule-disable: '{submodule-disable}'
176           choosing-strategy: default
177
178     triggers:
179       - gerrit-trigger-helm-patch-merged:
180           server: '{server-name}'
181           project: '{project}'
182           branch: '{branch}'
183           files: '{files}'
184
185     builders:
186       - lf-infra-pre-build
187       - inject:
188           properties-content: 'HELM_MODULE={helm-module}'
189       - lf-provide-maven-settings:
190           global-settings-file: 'global-settings'
191           settings-file: '{mvn-settings}'
192       - shell: '{obj:pre_build_script}'
193       - shell: '{obj:build_script}'
194       - lf-infra-create-netrc:
195           server-id: oom-helm
196       - inject:
197           properties-content: |
198             BUILD_TYPE=snapshot
199       - shell: '{obj:post_build_script}'
200       - lf-provide-maven-settings-cleanup
201
202 - job-template:
203     name: '{project-name}-{stream}-stage-helm'
204     # Job template for Helm stage jobs
205
206     <<: *helm_job_boiler_plate
207
208     scm:
209       - gerrit-trigger-scm:
210           refspec: ''
211           choosing-strategy: 'default'
212           submodule-recursive: '{submodule-recursive}'
213
214     triggers:
215       - pollscm:
216           cron: '0 22 * * *'
217       - gerrit:
218           trigger-on:
219             - comment-added-contains-event:
220                 comment-contains-value: '^stage-helm$'
221
222     builders:
223       - lf-infra-pre-build
224       - lf-provide-maven-settings:
225           global-settings-file: '{mvn-global-settings}'
226           settings-file: '{mvn-settings}'
227       - shell: '{obj:pre_build_script}'
228       - shell: '{obj:build_script}'
229       - lf-infra-create-netrc:
230           server-id: oom-helm
231       - inject:
232           properties-content: |
233             BUILD_TYPE=staging
234       - shell: '{obj:post_build_script}'
235       - lf-provide-maven-settings-cleanup
236
237 - job-template:
238     name: '{project-name}-{subproject}-{stream}-verify-helm'
239     # Job template for helm verify jobs
240
241     <<: *helm_job_boiler_plate
242
243     disabled: true
244     builders:
245       - lf-infra-pre-build
246       - shell: '{pre_build_script}'
247       - shell: '{build_script}'
248       - shell: '{post_build_script}'
249
250 - job-template:
251     name: '{project-name}-{subproject}-{stream}-merge-helm'
252     # Job template for helm merge jobs
253
254     <<: *helm_job_boiler_plate
255
256     disabled: true
257     builders:
258       - lf-infra-pre-build
259       - shell: '{pre_build_script}'
260       - shell: '{build_script}'
261       - shell: '{post_build_script}'
262
263 - job-template:
264     name: '{project-name}-{stream}-update-helm-weekly'
265     # Job template for weekly helm update jobs
266     #
267     # Required Variables:
268     #     branch:    git branch (eg. stable/lithium or master)
269     <<: *helm_job_boiler_plate
270
271     disabled: true
272     scm:
273       - lf-infra-gerrit-scm:
274           jenkins-ssh-credential: '{jenkins-ssh-credential}'
275           git-url: '$GIT_URL/$PROJECT'
276           refspec: '$GERRIT_REFSPEC'
277           branch: '$GERRIT_BRANCH'
278           submodule-recursive: true
279           submodule-timeout: '{submodule-timeout}'
280           submodule-disable: '{submodule-disable}'
281           choosing-strategy: default
282
283     builders:
284       - lf-infra-pre-build
285       - shell: '{pre_build_script}'
286       - shell: '{build_script}'
287       - shell: '{post_build_script}'
288
289     triggers:
290       # 11 AM UTC
291       - timed: '@daily'
292       - gerrit-trigger-release-manually:
293           server: '{server-name}'
294           project: '{project}'
295           branch: '{branch}'
296