Update keep upgrade jjb
[infra/cicd.git] / jjb / metal3 / projects.yml
1 ---
2 #
3 # ============LICENSE_START=======================================================
4 #  Copyright (C) 2019 Nordix Foundation.
5 # ================================================================================
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
9 #
10 #      http://www.apache.org/licenses/LICENSE-2.0
11 #
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
17 #
18 # SPDX-License-Identifier: Apache-2.0
19 # ============LICENSE_END=========================================================
20
21
22 # Description:
23 # ============
24 # This file contains the list of JJB projects in metal3 category. Each project
25 # corresponds to a github repository. Under each project's 'jobs' list defines the
26 # jobs associated with that github repository. The job definitions can be found
27 # in job_{job_id}.yml files in any of JJB include folders.
28
29 - project:
30     name: 'nordix_dev_tools'
31     branch: '${{ghprbActualCommit}}'
32     ci_github_whitelist_org:
33     - nordix-metal3
34     jobs:
35     - linter_tests
36     - openstack_image_building
37     - docker_image_building
38     - update_nordix_repos
39     - openstack_node_image_building
40     - main_fullstack_building
41     - fullstack_building_test
42     - metal3_dev_tools_integration_test:
43         image_os:
44           - ubuntu
45           - centos
46     - artifact_cleanup
47     repo:
48       org: "Nordix"
49       name: "metal3-dev-tools"
50     ci_github_jenkins_credentials_id: 'nordix-metal3-ci-github-prod-token'
51     ci_ghprb_auth_id: 'e8a43847-46ff-42db-a5db-7366df0e4ee2'
52     ci_github_repo: 'https://github.com/Nordix/metal3-dev-tools.git'
53
54 - project:
55     name: integration-tests
56     org: metal3-io
57     proj:
58       - metal3_dev_env:
59           repo: metal3-dev-env
60       - project_infra:
61           repo: project-infra
62           branch: '${{ghprbActualCommit}}'
63           ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
64       - capm3:
65           repo: cluster-api-provider-metal3
66       - bmo:
67           repo: baremetal-operator
68       - ipam:
69           repo: ip-address-manager
70       - ironic_image:
71           repo: ironic-image
72           name_postfix: '_ironic_from_source'
73           trigger_postfix: '-ironic-source'
74           ironic_install_type: 'source'
75       - ironic_image:
76           repo: ironic-image
77       - ironic_ipa_downloader:
78           repo: ironic-ipa-downloader
79       - mariadb_image:
80           repo: mariadb-image
81           build_mariadb_image_locally: 'true'
82           ironic_use_mariadb: 'true'
83     image_os:
84       - ubuntu
85       - centos
86     capm3_target_branch:
87       - main:
88           capi_version: v1beta1
89           capm3_version: v1beta1
90           capm3_release_branch: main
91           target_branches:
92             - 'main'
93       - release-1-4:
94           capi_version: v1beta1
95           capm3_version: v1beta1
96           capm3_release_branch: release-1.4
97           target_branches:
98             - 'main'
99             - 'release-1.4'
100       - release-1-3:
101           capi_version: v1beta1
102           capm3_version: v1beta1
103           capm3_release_branch: release-1.3
104           target_branches:
105             - 'main'
106             - 'release-1.3'
107       - release-1-2:
108           capi_version: v1beta1
109           capm3_version: v1beta1
110           capm3_release_branch: release-1.2
111           target_branches:
112             - 'main'
113             - 'release-1.2'
114       - release-1-1:
115           capi_version: v1beta1
116           capm3_version: v1beta1
117           capm3_release_branch: release-1.1
118           target_branches:
119             - 'main'
120             - 'release-1.1'
121     exclude:
122       - proj: ironic_ipa_downloader
123         image_os: centos
124         capm3_target_branch: release-1-1
125     jobs:
126       - integration_tests
127
128 - project:
129     name: keep-integration-tests-alive
130     org: metal3-io
131     proj:
132       - metal3_dev_env:
133           repo: metal3-dev-env
134       - project_infra:
135           repo: project-infra
136           branch: '${{ghprbActualCommit}}'
137           ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
138       - capm3:
139           repo: cluster-api-provider-metal3
140       - bmo:
141           repo: baremetal-operator
142       - ipam:
143           repo: ip-address-manager
144       - ironic_image:
145           repo: ironic-image
146     image_os:
147       - ubuntu
148       - centos
149     capm3_target_branch:
150       - main:
151           capi_version: v1beta1
152           capm3_version: v1beta1
153           capm3_release_branch: main
154           target_branches:
155             - 'main'
156       - release-1-4:
157           capi_version: v1beta1
158           capm3_version: v1beta1
159           capm3_release_branch: release-1.4
160           target_branches:
161             - 'main'
162             - 'release-1.4'
163       - release-1-3:
164           capi_version: v1beta1
165           capm3_version: v1beta1
166           capm3_release_branch: release-1.3
167           target_branches:
168             - 'main'
169             - 'release-1.3'
170       - release-1-2:
171           capi_version: v1beta1
172           capm3_version: v1beta1
173           capm3_release_branch: release-1.2
174           target_branches:
175             - 'main'
176             - 'release-1.2'
177       - release-1-1:
178           capi_version: v1beta1
179           capm3_version: v1beta1
180           capm3_release_branch: release-1.1
181           target_branches:
182             - 'main'
183             - 'release-1.1'
184     jobs:
185       - keep_integration_tests
186
187 - project:
188     name: feature-tests
189     org: metal3-io
190     proj:
191       - metal3_dev_env:
192           repo: metal3-dev-env
193       - project_infra:
194           repo: project-infra
195           branch: '${{ghprbActualCommit}}'
196           ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
197       - bmo:
198           repo: baremetal-operator
199     image_os:
200       - ubuntu
201       - centos
202     exclude:
203       - proj: bmo
204         image_os: centos
205     jobs:
206       - feature_tests
207
208 - project:
209     name: metal3-dev-env-main-tests
210     org: metal3-io
211     repo: metal3-dev-env
212     image_os:
213       - ubuntu
214       - centos
215     jobs:
216       - main_feature_tests
217       - capm3_main_integration_tests:
218           capm3_target_branch:
219             - main:
220                 capi_version: v1beta1
221                 capm3_version: v1beta1
222                 capm3_release_branch: main
223                 schedule: "H 4 * * *"
224             - release-1-4:
225                 capi_version: v1beta1
226                 capm3_version: v1beta1
227                 capm3_release_branch: release-1.4
228                 schedule: "30 4 * * *"
229             - release-1-3:
230                 capi_version: v1beta1
231                 capm3_version: v1beta1
232                 capm3_release_branch: release-1.3
233                 schedule: "30 4 * * *"
234             - release-1-2:
235                 capi_version: v1beta1
236                 capm3_version: v1beta1
237                 capm3_release_branch: release-1.2
238                 schedule: "30 4 * * *"
239             - release-1-1:
240                 capi_version: v1beta1
241                 capm3_version: v1beta1
242                 capm3_release_branch: release-1.1
243                 schedule: "30 4 * * *"
244
245 - project:
246     name: bml-tests
247     org: metal3-io
248     image_os: centos
249     jobs:
250       - bml_integration_tests:
251           proj:
252             - metal3_dev_env:
253                 repo: metal3-dev-env
254             - project_infra:
255                 repo: project-infra
256                 branch: '${{ghprbActualCommit}}'
257                 ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
258       - bml_main_integration_tests:
259           repo: metal3-dev-env
260
261 - project:
262     name: 'project_infra_cleanup'
263     repo:
264       org: "metal3-io"
265       name: "project-infra"
266     ci_github_pipeline: 'jenkins/jobs/integration_tests_clean.pipeline'
267     jobs:
268     - main_clean
269
270 - project:
271     name: "capm3"
272     org: metal3-io
273     proj:
274       - capm3:
275           repo: cluster-api-provider-metal3
276       - metal3_dev_env:
277           repo: metal3-dev-env
278       - project_infra:
279           repo: project-infra
280           branch: '${{ghprbActualCommit}}'
281           ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
282       - bmo:
283           repo: baremetal-operator
284       - ipam:
285           repo: ip-address-manager
286     image_os:
287       - ubuntu
288       - centos
289     capm3_target_branch:
290       - main:
291           capi_version: v1beta1
292           capm3_version: v1beta1
293           capm3_release_branch: main
294           target_branches:
295             - 'main'
296       - release-1-4:
297           capi_version: v1beta1
298           capm3_version: v1beta1
299           capm3_release_branch: release-1.4
300           target_branches:
301             - 'release-1.4'
302       - release-1-3:
303           capi_version: v1beta1
304           capm3_version: v1beta1
305           capm3_release_branch: release-1.3
306           target_branches:
307             - 'release-1.3'
308       - release-1-2:
309           capi_version: v1beta1
310           capm3_version: v1beta1
311           capm3_release_branch: release-1.2
312           target_branches:
313             - 'release-1.2'
314       - release-1-1:
315           capi_version: v1beta1
316           capm3_version: v1beta1
317           capm3_release_branch: release-1.1
318           target_branches:
319             - 'release-1.1'
320     jobs:
321       - capm3_e2e_upgrade_tests:
322           upgrade_from_release:
323             - from-release-1-1:
324                 upgrade_from: v1.1.
325             - from-release-0-5:
326                 upgrade_from: v0.5.
327           exclude:
328             - image_os: centos
329       - capm3_e2e_integration_tests:
330           capm3_target_branch:
331             - main:
332                 capi_version: v1beta1
333                 capm3_version: v1beta1
334                 capm3_release_branch: main
335                 target_branches:
336                   - 'main'
337             - release-1-4:
338                 capi_version: v1beta1
339                 capm3_version: v1beta1
340                 capm3_release_branch: release-1.4
341                 target_branches:
342                   - 'main'
343                   - 'release-1.4'
344       - parallel_capm3_e2e_feature_tests:
345       - capm3_e2e_feature_tests:
346       - keep_capm3_e2e_integration_tests:
347           capm3_target_branch:
348             - main:
349                 capi_version: v1beta1
350                 capm3_version: v1beta1
351                 capm3_release_branch: main
352                 target_branches:
353                   - 'main'
354             - release-1-4:
355                 capi_version: v1beta1
356                 capm3_version: v1beta1
357                 capm3_release_branch: release-1.4
358                 target_branches:
359                   - 'main'
360                   - 'release-1.4'
361       - keep_capm3_e2e_feature_tests:
362       - keep_capm3_e2e_upgrade_tests:
363           upgrade_from_release:
364             - from-release-1-1:
365                 upgrade_from: v1.1.
366             - from-release-0-5:
367                 upgrade_from: v0.5.
368           exclude:
369             - image_os: centos
370
371 - project:
372     name: "capm3-main-tests"
373     repo:
374       org: "metal3-io"
375       name: "cluster-api-provider-metal3"
376     image_os:
377       - ubuntu
378       - centos
379     jobs:
380       - capm3_main_e2e_upgrade_tests:
381           upgrade_from_release:
382             - from-release-1-1:
383                 upgrade_from: v1.1.
384             - from-release-0-5:
385                 upgrade_from: v0.5.
386           exclude:
387             - image_os: centos
388       - capm3_main_e2e_ephemeral_tests:
389           exclude:
390             - image_os: ubuntu
391       - capm3_main_e2e_integration_tests:
392           capm3_target_branch:
393             - main:
394                 capi_version: v1beta1
395                 capm3_version: v1beta1
396                 capm3_release_branch: main
397                 schedule: "H 4 * * *"
398             - release-1-4:
399                 capi_version: v1beta1
400                 capm3_version: v1beta1
401                 capm3_release_branch: release-1.4
402                 schedule: "30 4 * * *"
403       - capm3_main_e2e_feature_tests:
404           capm3_target_branch:
405             - main:
406                 capi_version: v1beta1
407                 capm3_version: v1beta1
408                 capm3_branch: main
409                 capm3_release_branch: main
410                 schedule: "H 2 * * *"
411             - release-1-4:
412                 capi_version: v1beta1
413                 capm3_version: v1beta1
414                 capm3_branch: release-1.4
415                 capm3_release_branch: release-1.4
416                 schedule: "H 5 * * *"
417             - release-1-3:
418                 capi_version: v1beta1
419                 capm3_version: v1beta1
420                 capm3_branch: release-1.3
421                 capm3_release_branch: release-1.3
422                 schedule: "H 8 * * *"
423             - release-1-2:
424                 capi_version: v1beta1
425                 capm3_version: v1beta1
426                 capm3_branch: release-1.2
427                 capm3_release_branch: release-1.2
428                 schedule: "H 11 * * *"
429             - release-1-1:
430                 capi_version: v1beta1
431                 capm3_version: v1beta1
432                 capm3_branch: release-1.1
433                 capm3_release_branch: release-1.1
434                 schedule: "H 14 * * *"
435
436 - project:
437     name: 'ironic_image_build_tests'
438     org: metal3-io
439     proj:
440       - project_infra:
441           repo: project-infra
442           branch: '${{ghprbActualCommit}}'
443           ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
444       - ironic_image:
445           repo: ironic-image
446     jobs:
447       - ironic_image_build_tests