fix kubectl_sha256 to match kubernetes_version_to
[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 # NOTE: kubectl_sha256 needs to match the kubernetes_version_to version
30
31 - project:
32     name: 'nordix_dev_tools'
33     branch: '${{ghprbActualCommit}}'
34     ci_github_whitelist_org:
35     - nordix-metal3
36     jobs:
37     - linter_tests
38     - openstack_image_building
39     - docker_image_building
40     - update_nordix_repos
41     - openstack_node_image_building
42     - main_fullstack_building
43     - fullstack_building_test
44     - metal3_dev_tools_integration_test:
45         image_os:
46           - ubuntu
47           - centos
48     - artifact_cleanup
49     repo:
50       org: "Nordix"
51       name: "metal3-dev-tools"
52     ci_github_jenkins_credentials_id: 'nordix-metal3-ci-github-prod-token'
53     ci_ghprb_auth_id: 'e8a43847-46ff-42db-a5db-7366df0e4ee2'
54     ci_github_repo: 'https://github.com/Nordix/metal3-dev-tools.git'
55
56 - project:
57     name: integration-tests
58     org: metal3-io
59     proj:
60       - metal3_dev_env:
61           repo: metal3-dev-env
62       - project_infra:
63           repo: project-infra
64           branch: '${{ghprbActualCommit}}'
65           ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
66       - capm3:
67           repo: cluster-api-provider-metal3
68       - bmo:
69           repo: baremetal-operator
70       - ipam:
71           repo: ip-address-manager
72       - ironic_image:
73           repo: ironic-image
74           name_postfix: '_ironic_from_source'
75           trigger_postfix: '-ironic-source'
76           ironic_install_type: 'source'
77       - ironic_image:
78           repo: ironic-image
79       - ironic_ipa_downloader:
80           repo: ironic-ipa-downloader
81       - mariadb_image:
82           repo: mariadb-image
83           build_mariadb_image_locally: 'true'
84           ironic_use_mariadb: 'true'
85     image_os:
86       - ubuntu
87       - centos
88     capm3_target_branch:
89       - main:
90           capi_version: v1beta1
91           capm3_version: v1beta1
92           capm3_release_branch: main
93           target_branches:
94             - 'main'
95       - release-1-5:
96           capi_version: v1beta1
97           capm3_version: v1beta1
98           capm3_release_branch: release-1.5
99           target_branches:
100             - 'main'
101             - 'release-1.5'
102       - release-1-4:
103           capi_version: v1beta1
104           capm3_version: v1beta1
105           capm3_release_branch: release-1.4
106           target_branches:
107             - 'main'
108             - 'release-1.4'
109       - release-1-3:
110           capi_version: v1beta1
111           capm3_version: v1beta1
112           capm3_release_branch: release-1.3
113           target_branches:
114             - 'main'
115             - 'release-1.3'
116     jobs:
117       - integration_tests
118
119 - project:
120     name: keep-integration-tests-alive
121     org: metal3-io
122     proj:
123       - metal3_dev_env:
124           repo: metal3-dev-env
125       - project_infra:
126           repo: project-infra
127           branch: '${{ghprbActualCommit}}'
128           ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
129       - capm3:
130           repo: cluster-api-provider-metal3
131       - bmo:
132           repo: baremetal-operator
133       - ipam:
134           repo: ip-address-manager
135       - ironic_image:
136           repo: ironic-image
137     image_os:
138       - ubuntu
139       - centos
140     capm3_target_branch:
141       - main:
142           capi_version: v1beta1
143           capm3_version: v1beta1
144           capm3_release_branch: main
145           target_branches:
146             - 'main'
147       - release-1-5:
148           capi_version: v1beta1
149           capm3_version: v1beta1
150           capm3_release_branch: release-1.5
151           target_branches:
152             - 'main'
153             - 'release-1.5'
154       - release-1-4:
155           capi_version: v1beta1
156           capm3_version: v1beta1
157           capm3_release_branch: release-1.4
158           target_branches:
159             - 'main'
160             - 'release-1.4'
161       - release-1-3:
162           capi_version: v1beta1
163           capm3_version: v1beta1
164           capm3_release_branch: release-1.3
165           target_branches:
166             - 'main'
167             - 'release-1.3'
168     jobs:
169       - keep_integration_tests
170
171 - project:
172     name: metal3-dev-env-main-tests
173     org: metal3-io
174     repo: metal3-dev-env
175     image_os:
176       - ubuntu
177       - centos
178     jobs:
179       - capm3_main_integration_tests:
180           capm3_target_branch:
181             - main:
182                 capi_version: v1beta1
183                 capm3_version: v1beta1
184                 capm3_release_branch: main
185                 schedule: "H 4 * * *"
186             - release-1-5:
187                 capi_version: v1beta1
188                 capm3_version: v1beta1
189                 capm3_release_branch: release-1.5
190                 schedule: "30 4 * * *"
191             - release-1-4:
192                 capi_version: v1beta1
193                 capm3_version: v1beta1
194                 capm3_release_branch: release-1.4
195                 schedule: "30 4 * * *"
196             - release-1-3:
197                 capi_version: v1beta1
198                 capm3_version: v1beta1
199                 capm3_release_branch: release-1.3
200                 schedule: "30 4 * * *"
201
202 - project:
203     name: bml-tests
204     org: metal3-io
205     image_os: centos
206     jobs:
207       - bml_integration_tests:
208           proj:
209             - metal3_dev_env:
210                 repo: metal3-dev-env
211             - project_infra:
212                 repo: project-infra
213                 branch: '${{ghprbActualCommit}}'
214                 ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
215       - bml_main_integration_tests:
216           repo: metal3-dev-env
217
218 - project:
219     name: 'project_infra_cleanup'
220     repo:
221       org: "metal3-io"
222       name: "project-infra"
223     ci_github_pipeline: 'jenkins/jobs/integration_tests_clean.pipeline'
224     jobs:
225     - main_clean
226
227 - project:
228     name: "capm3"
229     org: metal3-io
230     proj:
231       - capm3:
232           repo: cluster-api-provider-metal3
233       - metal3_dev_env:
234           repo: metal3-dev-env
235       - project_infra:
236           repo: project-infra
237           branch: '${{ghprbActualCommit}}'
238           ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
239       - bmo:
240           repo: baremetal-operator
241       - ipam:
242           repo: ip-address-manager
243     image_os:
244       - ubuntu
245       - centos
246     jobs:
247       - capm3_e2e_clusterctl_upgrade_tests:
248           upgrade_from_release:
249             - from-release-1-5:
250                 upgrade_from: v1.5.
251             - from-release-1-4:
252                 upgrade_from: v1.4.
253             - from-release-1-3:
254                 upgrade_from: v1.3.
255             - from-release-0-5:
256                 upgrade_from: v0.5.
257           exclude:
258             - image_os: centos
259       - capm3_e2e_k8s_upgrade_tests:
260           k8s_versions:
261             - 1-27-1-28:
262                 k8s_version_upgrade_from: v1.27.4
263                 k8s_version_upgrade_to: v1.28.1
264                 kubectl_sha256: e7a7d6f9d06fab38b4128785aa80f65c54f6675a0d2abef655259ddd852274e1  # v1.28.1
265                 capm3_release_branch: main
266                 capm3_target_branch: main
267                 target_branches:
268                   - 'main'
269             - 1-26-1-27:
270                 k8s_version_upgrade_from: v1.26.4
271                 k8s_version_upgrade_to: v1.27.4
272                 kubectl_sha256: 4685bfcf732260f72fce58379e812e091557ef1dfc1bc8084226c7891dd6028f  # v1.27.4
273                 capm3_release_branch: main
274                 capm3_target_branch: main
275                 target_branches:
276                   - 'main'
277             - 1-25-1-26:
278                 k8s_version_upgrade_from: v1.25.5
279                 k8s_version_upgrade_to: v1.26.4
280                 kubectl_sha256: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.4
281                 capm3_release_branch: main
282                 capm3_target_branch: main
283                 target_branches:
284                   - 'main'
285             - 1-26-1-27:
286                 k8s_version_upgrade_from: v1.26.4
287                 k8s_version_upgrade_to: v1.27.4
288                 kubectl_sha256: 4685bfcf732260f72fce58379e812e091557ef1dfc1bc8084226c7891dd6028f  # v1.27.4
289                 capm3_release_branch: release-1.5
290                 capm3_target_branch: release-1-5
291                 target_branches:
292                   - 'release-1.5'
293             - 1-26-1-27:
294                 k8s_version_upgrade_from: v1.26.4
295                 k8s_version_upgrade_to: v1.27.4
296                 kubectl_sha256: 4685bfcf732260f72fce58379e812e091557ef1dfc1bc8084226c7891dd6028f  # v1.27.4
297                 capm3_release_branch: release-1.4
298                 capm3_target_branch: release-1-4
299                 target_branches:
300                   - 'release-1.4'
301             - 1-25-1-26:
302                 k8s_version_upgrade_from: v1.25.5
303                 k8s_version_upgrade_to: v1.26.4
304                 kubectl_sha256: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.4
305                 capm3_release_branch: release-1.3
306                 capm3_target_branch: release-1-3
307                 target_branches:
308                   - 'release-1.3'
309           exclude:
310               - image_os: centos
311       - capm3_e2e_integration_tests:
312           capm3_target_branch:
313             - main:
314                 capi_version: v1beta1
315                 capm3_version: v1beta1
316                 capm3_release_branch: main
317                 target_branches:
318                   - 'main'
319             - release-1-5:
320                 capi_version: v1beta1
321                 capm3_version: v1beta1
322                 capm3_release_branch: release-1.5
323                 target_branches:
324                   - 'main'
325                   - 'release-1.5'
326       - capm3_e2e_basic_tests:
327           capm3_target_branch:
328             - main:
329                 capi_version: v1beta1
330                 capm3_version: v1beta1
331                 capm3_release_branch: main
332                 target_branches:
333                   - 'main'
334             - release-1-5:
335                 capi_version: v1beta1
336                 capm3_version: v1beta1
337                 capm3_release_branch: release-1.5
338                 target_branches:
339                   - 'main'
340                   - 'release-1.5'
341       - capm3_e2e_feature_tests:
342           capm3_target_branch:
343             - main:
344                 capi_version: v1beta1
345                 capm3_version: v1beta1
346                 capm3_release_branch: main
347                 target_branches:
348                   - 'main'
349             - release-1-5:
350                 capi_version: v1beta1
351                 capm3_version: v1beta1
352                 capm3_release_branch: release-1.5
353                 target_branches:
354                   - 'release-1.5'
355             - release-1-4:
356                 capi_version: v1beta1
357                 capm3_version: v1beta1
358                 capm3_release_branch: release-1.4
359                 target_branches:
360                   - 'release-1.4'
361             - release-1-3:
362                 capi_version: v1beta1
363                 capm3_version: v1beta1
364                 capm3_release_branch: release-1.3
365                 target_branches:
366                   - 'release-1.3'
367       - keep_capm3_e2e_integration_tests:
368           capm3_target_branch:
369             - main:
370                 capi_version: v1beta1
371                 capm3_version: v1beta1
372                 capm3_release_branch: main
373                 target_branches:
374                   - 'main'
375             - release-1-5:
376                 capi_version: v1beta1
377                 capm3_version: v1beta1
378                 capm3_release_branch: release-1.5
379                 target_branches:
380                   - 'main'
381                   - 'release-1.5'
382       - keep_capm3_e2e_basic_tests:
383           capm3_target_branch:
384             - main:
385                 capi_version: v1beta1
386                 capm3_version: v1beta1
387                 capm3_release_branch: main
388                 target_branches:
389                   - 'main'
390             - release-1-5:
391                 capi_version: v1beta1
392                 capm3_version: v1beta1
393                 capm3_release_branch: release-1.5
394                 target_branches:
395                   - 'main'
396                   - 'release-1.5'
397       - keep_capm3_e2e_feature_tests:
398           capm3_target_branch:
399             - main:
400                 capi_version: v1beta1
401                 capm3_version: v1beta1
402                 capm3_release_branch: main
403                 target_branches:
404                   - 'main'
405             - release-1-5:
406                 capi_version: v1beta1
407                 capm3_version: v1beta1
408                 capm3_release_branch: release-1.5
409                 target_branches:
410                   - 'release-1.5'
411             - release-1-4:
412                 capi_version: v1beta1
413                 capm3_version: v1beta1
414                 capm3_release_branch: release-1.4
415                 target_branches:
416                   - 'release-1.4'
417             - release-1-3:
418                 capi_version: v1beta1
419                 capm3_version: v1beta1
420                 capm3_release_branch: release-1.3
421                 target_branches:
422                   - 'release-1.3'
423       - keep_capm3_e2e_clusterctl_upgrade_tests:
424           upgrade_from_release:
425             - from-release-1-5:
426                 upgrade_from: v1.5.
427             - from-release-1-4:
428                 upgrade_from: v1.4.
429             - from-release-1-3:
430                 upgrade_from: v1.3.
431             - from-release-0-5:
432                 upgrade_from: v0.5.
433           exclude:
434             - image_os: centos
435       - keep_capm3_e2e_k8s_upgrade_tests:
436           k8s_versions:
437             - 1-27-1-28:
438                 k8s_version_upgrade_from: v1.27.4
439                 k8s_version_upgrade_to: v1.28.1
440                 kubectl_sha256: e7a7d6f9d06fab38b4128785aa80f65c54f6675a0d2abef655259ddd852274e1  # v1.28.1
441                 capm3_release_branch: main
442                 capm3_target_branch: main
443                 target_branches:
444                   - 'main'
445             - 1-26-1-27:
446                 k8s_version_upgrade_from: v1.26.4
447                 k8s_version_upgrade_to: v1.27.4
448                 kubectl_sha256: 4685bfcf732260f72fce58379e812e091557ef1dfc1bc8084226c7891dd6028f  # v1.27.4
449                 capm3_release_branch: main
450                 capm3_target_branch: main
451                 target_branches:
452                   - 'main'
453             - 1-25-1-26:
454                 k8s_version_upgrade_from: v1.25.5
455                 k8s_version_upgrade_to: v1.26.4
456                 kubectl_sha256: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.4
457                 capm3_release_branch: main
458                 capm3_target_branch: main
459                 target_branches:
460                   - 'main'
461             - 1-26-1-27:
462                 k8s_version_upgrade_from: v1.26.4
463                 k8s_version_upgrade_to: v1.27.4
464                 kubectl_sha256: 4685bfcf732260f72fce58379e812e091557ef1dfc1bc8084226c7891dd6028f  # v1.27.4
465                 capm3_release_branch: release-1.5
466                 capm3_target_branch: release-1-5
467                 target_branches:
468                   - 'release-1.5'
469             - 1-26-1-27:
470                 k8s_version_upgrade_from: v1.26.4
471                 k8s_version_upgrade_to: v1.27.4
472                 kubectl_sha256: 4685bfcf732260f72fce58379e812e091557ef1dfc1bc8084226c7891dd6028f  # v1.27.4
473                 capm3_release_branch: release-1.4
474                 capm3_target_branch: release-1-4
475                 target_branches:
476                   - 'release-1.4'
477             - 1-25-1-26:
478                 k8s_version_upgrade_from: v1.25.5
479                 k8s_version_upgrade_to: v1.26.4
480                 kubectl_sha256: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.4
481                 capm3_release_branch: release-1.3
482                 capm3_target_branch: release-1-3
483                 target_branches:
484                   - 'release-1.3'
485           exclude:
486             - image_os: centos
487
488 - project:
489     name: "capm3-main-tests"
490     repo:
491       org: "metal3-io"
492       name: "cluster-api-provider-metal3"
493     image_os:
494       - ubuntu
495       - centos
496     jobs:
497       - capm3_main_e2e_clusterctl_upgrade_tests:
498           upgrade_from_release:
499             - from-release-1-5:
500                 upgrade_from: v1.5.
501             - from-release-1-4:
502                 upgrade_from: v1.4.
503             - from-release-1-3:
504                 upgrade_from: v1.3.
505             - from-release-0-5:
506                 upgrade_from: v0.5.
507           exclude:
508             - image_os: centos
509       - capm3_main_e2e_k8s_upgrade_tests:
510           k8s_versions:
511             - 1-27-1-28:
512                 k8s_version_upgrade_from: v1.27.4
513                 k8s_version_upgrade_to: v1.28.1
514                 kubectl_sha256: e7a7d6f9d06fab38b4128785aa80f65c54f6675a0d2abef655259ddd852274e1  # v1.28.1
515                 capm3_release_branch: main
516                 capm3_target_branch: main
517                 target_branches:
518                   - 'main'
519             - 1-26-1-27:
520                 k8s_version_upgrade_from: v1.26.4
521                 k8s_version_upgrade_to: v1.27.4
522                 kubectl_sha256: 4685bfcf732260f72fce58379e812e091557ef1dfc1bc8084226c7891dd6028f  # v1.27.4
523                 capm3_release_branch: main
524                 capm3_target_branch: main
525             - 1-25-1-26:
526                 k8s_version_upgrade_from: v1.25.5
527                 k8s_version_upgrade_to: v1.26.4
528                 kubectl_sha256: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.4
529                 capm3_release_branch: main
530                 capm3_target_branch: main
531             - 1-26-1-27:
532                 k8s_version_upgrade_from: v1.26.4
533                 k8s_version_upgrade_to: v1.27.4
534                 kubectl_sha256: 4685bfcf732260f72fce58379e812e091557ef1dfc1bc8084226c7891dd6028f  # v1.27.4
535                 capm3_release_branch: release-1.5
536                 capm3_target_branch: release-1-5
537             - 1-26-1-27:
538                 k8s_version_upgrade_from: v1.26.4
539                 k8s_version_upgrade_to: v1.27.4
540                 kubectl_sha256: 4685bfcf732260f72fce58379e812e091557ef1dfc1bc8084226c7891dd6028f  # v1.27.4
541                 capm3_release_branch: release-1.4
542                 capm3_target_branch: release-1-4
543             - 1-25-1-26:
544                 k8s_version_upgrade_from: v1.25.5
545                 k8s_version_upgrade_to: v1.26.4
546                 kubectl_sha256: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.4
547                 capm3_release_branch: release-1.3
548                 capm3_target_branch: release-1-3
549           exclude:
550               - image_os: centos
551       - capm3_main_e2e_ephemeral_tests:
552           exclude:
553             - image_os: ubuntu
554       - capm3_main_e2e_integration_tests:
555           capm3_target_branch:
556             - main:
557                 capi_version: v1beta1
558                 capm3_version: v1beta1
559                 capm3_release_branch: main
560                 schedule: "H 4 * * *"
561             - release-1-5:
562                 capi_version: v1beta1
563                 capm3_version: v1beta1
564                 capm3_release_branch: release-1.5
565                 schedule: "30 4 * * *"
566       - capm3_main_e2e_feature_tests:
567           capm3_target_branch:
568             - main:
569                 capi_version: v1beta1
570                 capm3_version: v1beta1
571                 capm3_branch: main
572                 capm3_release_branch: main
573                 schedule: "H 2 * * *"
574             - release-1-5:
575                 capi_version: v1beta1
576                 capm3_version: v1beta1
577                 capm3_branch: release-1.5
578                 capm3_release_branch: release-1.5
579                 schedule: "H 11 * * *"
580             - release-1-4:
581                 capi_version: v1beta1
582                 capm3_version: v1beta1
583                 capm3_branch: release-1.4
584                 capm3_release_branch: release-1.4
585                 schedule: "H 5 * * *"
586             - release-1-3:
587                 capi_version: v1beta1
588                 capm3_version: v1beta1
589                 capm3_branch: release-1.3
590                 capm3_release_branch: release-1.3
591                 schedule: "H 8 * * *"
592
593 - project:
594     name: 'ironic_image_build_tests'
595     org: metal3-io
596     proj:
597       - project_infra:
598           repo: project-infra
599           branch: '${{ghprbActualCommit}}'
600           ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
601       - ironic_image:
602           repo: ironic-image
603     jobs:
604       - ironic_image_build_tests