blob: 475efa0cbaa59e2856c2c19bc9f02f576e14b17d [file] [log] [blame]
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -05001---
Jessica Wagantall48a6b4c2021-08-02 20:19:36 -07002############
3# BUILDERS #
4############
5
6- builder:
7 name: oom-create-netrc
8 builders:
9 - inject:
10 properties-content: "SERVER_ID={server-id}"
11 - shell: !include-raw-escape: ../shell/oom-create-netrc.sh
12
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -050013###########
14# ANCHORS #
15###########
16- helm_job_boiler_plate: &helm_job_boiler_plate
17 name: helm_job_boiler_plate
18
19 ######################
20 # Default parameters #
21 ######################
22
23 branch: master
24 submodule-recursive: true
25
26 # default params for helm jobs
Jeremy Phelps3cffa432018-08-15 16:26:12 -050027 build_script: ''
Jessica Wagantallabff9c02019-04-08 16:35:10 -070028 git-url: '$GIT_URL/$PROJECT'
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -050029 post_build_script: ''
Jessica Wagantallabff9c02019-04-08 16:35:10 -070030 pre_build_script: ''
Jessica Wagantall11a31f02019-05-13 12:28:14 -070031 submodule-disable: false
Jessica Wagantall7d10bdf2018-10-29 11:17:16 -070032 submodule-timeout: 10
Sylvain Desbureaux5657eda2020-11-26 10:25:39 +010033 build-timeout: 240
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -050034
35 #####################
36 # Job Configuration #
37 #####################
38
39 project-type: freestyle
40 node: '{build-node}'
41
42 properties:
43 - lf-infra-properties:
44 build-days-to-keep: '{build-days-to-keep}'
45
46 parameters:
47 - lf-infra-parameters:
48 branch: '{branch}'
49 project: '{project}'
50 stream: '{stream}'
51 lftools-version: '{lftools-version}'
52
53 wrappers:
54 - lf-infra-wrappers:
55 build-timeout: '{build-timeout}'
56 jenkins-ssh-credential: '{jenkins-ssh-credential}'
57
58 publishers:
59 - lf-infra-publish
60
Jeremy Phelps3cffa432018-08-15 16:26:12 -050061#################
62# JOB TEMPLATES #
63#################
64- job-template:
Sylvain Desbureaux8a80b092021-02-17 13:49:17 +010065 name: '{project-name}-{stream}-verify-{helm_bin}'
Jeremy Phelps3cffa432018-08-15 16:26:12 -050066 # Job template for helm verify jobs
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -050067
Jeremy Phelps3cffa432018-08-15 16:26:12 -050068 <<: *helm_job_boiler_plate
Jessica Wagantall039bb1b2020-03-10 11:42:52 -070069 concurrent: true
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -050070
71 scm:
72 - gerrit-trigger-scm:
73 refspec: '$GERRIT_REFSPEC'
Jeremy Phelpsb4961362018-08-29 17:29:40 -050074 choosing-strategy: 'gerrit'
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -050075 submodule-recursive: '{submodule-recursive}'
76
77 triggers:
Jeremy Phelpsd73b2142018-08-27 15:26:11 -050078 - gerrit-trigger-helm-patch-submitted:
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -050079 status-context: '{project}-Helm-Verify'
80 server: '{server-name}'
81 project: '{project}'
82 branch: '{branch}'
Sylvain Desbureaux0da65b92021-02-09 09:42:42 +010083 helm_bin: '{helm_bin}'
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -050084 files: '{files}'
85
Jeremy Phelps3cffa432018-08-15 16:26:12 -050086 builders:
Jessica Wagantall05ae7da2018-10-22 17:32:33 -070087 - lf-infra-pre-build
Sylvain Desbureaux8a80b092021-02-17 13:49:17 +010088 - shell: |
89 echo "export HELM_BIN={helm_bin}" > helm.prop
Jeremy Phelps3cffa432018-08-15 16:26:12 -050090 - shell: '{obj:pre_build_script}'
91 - shell: '{obj:build_script}'
92
93- job-template:
94 name: '{project-name}-{stream}-merge-helm'
95 # Job template for Helm merge jobs
96
97 <<: *helm_job_boiler_plate
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -050098
99 scm:
100 - gerrit-trigger-scm:
Jeremy Phelpsb4961362018-08-29 17:29:40 -0500101 refspec: ''
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500102 choosing-strategy: 'default'
103 submodule-recursive: '{submodule-recursive}'
104
105 triggers:
Jeremy Phelpsd73b2142018-08-27 15:26:11 -0500106 - gerrit-trigger-helm-patch-merged:
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500107 server: '{server-name}'
108 project: '{project}'
109 branch: '{branch}'
110 files: '{files}'
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500111
112 builders:
Jessica Wagantall05ae7da2018-10-22 17:32:33 -0700113 - lf-infra-pre-build
Jeremy Phelps3cffa432018-08-15 16:26:12 -0500114 - lf-provide-maven-settings:
115 global-settings-file: '{mvn-global-settings}'
116 settings-file: '{mvn-settings}'
Sylvain Desbureaux8a80b092021-02-17 13:49:17 +0100117 - shell: |
efiacorcdb844e2022-04-28 12:54:56 +0100118 echo "export HELM_BIN=helm3.6" > helm.prop
Jeremy Phelps3cffa432018-08-15 16:26:12 -0500119 - shell: '{obj:pre_build_script}'
120 - shell: '{obj:build_script}'
Jessica Wagantall48a6b4c2021-08-02 20:19:36 -0700121 - oom-create-netrc:
Jeremy Phelps3cffa432018-08-15 16:26:12 -0500122 server-id: oom-helm
123 - inject:
124 properties-content: |
125 BUILD_TYPE=snapshot
126 - shell: '{obj:post_build_script}'
127 - lf-provide-maven-settings-cleanup
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500128
129- job-template:
Jessica Wagantallabff9c02019-04-08 16:35:10 -0700130 name: '{project-name}-{stream}-verify-external-helm'
131 # Job template for helm verify jobs
132
133 <<: *helm_job_boiler_plate
134
135 parameters:
136 - lf-infra-parameters:
137 branch: '{branch}'
138 project: 'oom'
139 stream: '{stream}'
140 lftools-version: '{lftools-version}'
141
142 scm:
143 - lf-infra-gerrit-scm:
144 jenkins-ssh-credential: '{jenkins-ssh-credential}'
145 git-url: '{git-url}'
146 refspec: '$GERRIT_BRANCH'
147 branch: '$GERRIT_BRANCH'
148 submodule-recursive: '{submodule-recursive}'
149 submodule-timeout: '{submodule-timeout}'
Jessica Wagantall11a31f02019-05-13 12:28:14 -0700150 submodule-disable: '{submodule-disable}'
Jessica Wagantallabff9c02019-04-08 16:35:10 -0700151 choosing-strategy: default
152
153 triggers:
154 - gerrit-trigger-helm-patch-submitted:
155 status-context: '{project}-Helm-Verify'
156 server: '{server-name}'
157 project: '{project}'
158 branch: '{branch}'
159 files: '{files}'
160
161 builders:
162 - lf-infra-pre-build
163 - inject:
164 properties-content: 'HELM_MODULE={helm-module}'
165 - shell: !include-raw-escape: shell/apply-submodule-patch-oom.sh
Sylvain Desbureaux8a80b092021-02-17 13:49:17 +0100166 - shell: |
efiacorcdb844e2022-04-28 12:54:56 +0100167 echo "export HELM_BIN=helm3.6" > helm.prop
Jessica Wagantallabff9c02019-04-08 16:35:10 -0700168 - shell: '{obj:pre_build_script}'
169 - shell: '{obj:build_script}'
170
171- job-template:
Jessica Wagantall73d08bd2019-04-17 15:42:17 -0700172 name: '{project-name}-{stream}-merge-external-helm'
173 # Job template for Helm merge jobs
174
175 <<: *helm_job_boiler_plate
176
177 parameters:
178 - lf-infra-parameters:
179 branch: '{branch}'
180 project: 'oom'
181 stream: '{stream}'
182 lftools-version: '{lftools-version}'
183
184 scm:
185 - lf-infra-gerrit-scm:
186 jenkins-ssh-credential: '{jenkins-ssh-credential}'
187 git-url: '{git-url}'
188 refspec: '$GERRIT_BRANCH'
189 branch: '$GERRIT_BRANCH'
190 submodule-recursive: '{submodule-recursive}'
191 submodule-timeout: '{submodule-timeout}'
Jessica Wagantall11a31f02019-05-13 12:28:14 -0700192 submodule-disable: '{submodule-disable}'
Jessica Wagantall73d08bd2019-04-17 15:42:17 -0700193 choosing-strategy: default
194
195 triggers:
196 - gerrit-trigger-helm-patch-merged:
197 server: '{server-name}'
198 project: '{project}'
199 branch: '{branch}'
200 files: '{files}'
201
202 builders:
203 - lf-infra-pre-build
204 - inject:
205 properties-content: 'HELM_MODULE={helm-module}'
206 - lf-provide-maven-settings:
207 global-settings-file: 'global-settings'
208 settings-file: '{mvn-settings}'
Sylvain Desbureaux8a80b092021-02-17 13:49:17 +0100209 - shell: |
efiacorcdb844e2022-04-28 12:54:56 +0100210 echo "export HELM_BIN=helm3.6" > helm.prop
Jessica Wagantall73d08bd2019-04-17 15:42:17 -0700211 - shell: '{obj:pre_build_script}'
212 - shell: '{obj:build_script}'
Bengt Thuree459f0612022-04-27 22:17:42 +1000213 - oom-create-netrc:
Jessica Wagantall73d08bd2019-04-17 15:42:17 -0700214 server-id: oom-helm
215 - inject:
216 properties-content: |
217 BUILD_TYPE=snapshot
218 - shell: '{obj:post_build_script}'
219 - lf-provide-maven-settings-cleanup
220
221- job-template:
Jessica Wagantall019550b2020-12-21 12:24:30 -0800222 name: '{project-name}-{stream}-release-helm'
Jeremy Phelps3cffa432018-08-15 16:26:12 -0500223 # Job template for Helm stage jobs
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500224
225 <<: *helm_job_boiler_plate
Jeremy Phelps3cffa432018-08-15 16:26:12 -0500226
227 scm:
228 - gerrit-trigger-scm:
Jeremy Phelpsb4961362018-08-29 17:29:40 -0500229 refspec: ''
Jeremy Phelps3cffa432018-08-15 16:26:12 -0500230 choosing-strategy: 'default'
231 submodule-recursive: '{submodule-recursive}'
232
233 triggers:
Jeremy Phelps3cffa432018-08-15 16:26:12 -0500234 - gerrit:
Eric Ballfde0bda2021-12-07 10:46:08 -0800235 server-name: '{gerrit-server-name}'
Jeremy Phelps3cffa432018-08-15 16:26:12 -0500236 trigger-on:
237 - comment-added-contains-event:
Sylvain Desbureaux36dcc772021-06-17 22:21:44 +0200238 comment-contains-value: '^Patch Set\s+\d+:\s+release-helm\s*$'
Eric Ballfde0bda2021-12-07 10:46:08 -0800239 projects:
240 - project-compare-type: 'ANT'
241 project-pattern: '{project}'
242 branches:
243 - branch-compare-type: 'ANT'
244 branch-pattern: '**/{branch}'
245 file-paths:
246 - compare-type: 'ANT'
247 pattern: '**'
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500248
249 builders:
Jessica Wagantall05ae7da2018-10-22 17:32:33 -0700250 - lf-infra-pre-build
Jeremy Phelps3cffa432018-08-15 16:26:12 -0500251 - lf-provide-maven-settings:
252 global-settings-file: '{mvn-global-settings}'
253 settings-file: '{mvn-settings}'
Sylvain Desbureaux8a80b092021-02-17 13:49:17 +0100254 - shell: |
efiacorcdb844e2022-04-28 12:54:56 +0100255 echo "export HELM_BIN=helm3.6" > helm.prop
Jeremy Phelps3cffa432018-08-15 16:26:12 -0500256 - shell: '{obj:pre_build_script}'
257 - shell: '{obj:build_script}'
Bengt Thuree459f0612022-04-27 22:17:42 +1000258 - oom-create-netrc:
Jeremy Phelps3cffa432018-08-15 16:26:12 -0500259 server-id: oom-helm
260 - inject:
261 properties-content: |
Jessica Wagantall019550b2020-12-21 12:24:30 -0800262 BUILD_TYPE=release
Jeremy Phelps3cffa432018-08-15 16:26:12 -0500263 - shell: '{obj:post_build_script}'
264 - lf-provide-maven-settings-cleanup
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500265
266- job-template:
267 name: '{project-name}-{subproject}-{stream}-verify-helm'
268 # Job template for helm verify jobs
269
270 <<: *helm_job_boiler_plate
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500271
Jeremy Phelps4eb85d72018-08-23 12:48:24 -0500272 disabled: true
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500273 builders:
Jessica Wagantall05ae7da2018-10-22 17:32:33 -0700274 - lf-infra-pre-build
Sylvain Desbureaux8a80b092021-02-17 13:49:17 +0100275 - shell: |
efiacorcdb844e2022-04-28 12:54:56 +0100276 echo "export HELM_BIN=helm3.6" > helm.prop
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500277 - shell: '{pre_build_script}'
278 - shell: '{build_script}'
279 - shell: '{post_build_script}'
280
281- job-template:
282 name: '{project-name}-{subproject}-{stream}-merge-helm'
283 # Job template for helm merge jobs
284
285 <<: *helm_job_boiler_plate
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500286
Jeremy Phelps4eb85d72018-08-23 12:48:24 -0500287 disabled: true
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500288 builders:
Jessica Wagantall05ae7da2018-10-22 17:32:33 -0700289 - lf-infra-pre-build
Sylvain Desbureaux8a80b092021-02-17 13:49:17 +0100290 - shell: |
efiacorcdb844e2022-04-28 12:54:56 +0100291 echo "export HELM_BIN=helm3.6" > helm.prop
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500292 - shell: '{pre_build_script}'
293 - shell: '{build_script}'
Sylvain Desbureaux36dcc772021-06-17 22:21:44 +0200294 - inject:
295 properties-content: |
296 BUILD_TYPE=snapshot
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500297 - shell: '{post_build_script}'
298
299- job-template:
300 name: '{project-name}-{stream}-update-helm-weekly'
301 # Job template for weekly helm update jobs
302 #
303 # Required Variables:
304 # branch: git branch (eg. stable/lithium or master)
305 <<: *helm_job_boiler_plate
306
Jeremy Phelps4eb85d72018-08-23 12:48:24 -0500307 disabled: true
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500308 scm:
309 - lf-infra-gerrit-scm:
310 jenkins-ssh-credential: '{jenkins-ssh-credential}'
311 git-url: '$GIT_URL/$PROJECT'
312 refspec: '$GERRIT_REFSPEC'
313 branch: '$GERRIT_BRANCH'
314 submodule-recursive: true
Jessica Wagantall7d10bdf2018-10-29 11:17:16 -0700315 submodule-timeout: '{submodule-timeout}'
Jessica Wagantall11a31f02019-05-13 12:28:14 -0700316 submodule-disable: '{submodule-disable}'
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500317 choosing-strategy: default
318
319 builders:
Jessica Wagantall05ae7da2018-10-22 17:32:33 -0700320 - lf-infra-pre-build
Sylvain Desbureaux8a80b092021-02-17 13:49:17 +0100321 - shell: |
efiacorcdb844e2022-04-28 12:54:56 +0100322 echo "export HELM_BIN=helm3.6" > helm.prop
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500323 - shell: '{pre_build_script}'
324 - shell: '{build_script}'
325 - shell: '{post_build_script}'
326
327 triggers:
328 # 11 AM UTC
Gary Wu5f4277f2018-09-28 10:36:23 -0700329 - timed: '@daily'
Jeremy Phelpsbca3dbb2018-05-24 12:50:26 -0500330 - gerrit-trigger-release-manually:
331 server: '{server-name}'
332 project: '{project}'
333 branch: '{branch}'