metal3: Add e2e integration job for release-1.4
[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_from 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: 4685bfcf732260f72fce58379e812e091557ef1dfc1bc8084226c7891dd6028f  # v1.27.4
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: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.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: 6a660cd44db3d4bfe1563f6689cbe2ffb28ee4baf3532e04fff2d7b909081c29  # v1.25.5
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: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.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: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.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: 6a660cd44db3d4bfe1563f6689cbe2ffb28ee4baf3532e04fff2d7b909081c29  # v1.25.5
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             - release-1-4:
327                 capi_version: v1beta1
328                 capm3_version: v1beta1
329                 capm3_release_branch: release-1.4
330                 target_branches:
331                   - 'main'
332                   - 'release-1.4'
333       - capm3_e2e_basic_tests:
334           capm3_target_branch:
335             - main:
336                 capi_version: v1beta1
337                 capm3_version: v1beta1
338                 capm3_release_branch: main
339                 target_branches:
340                   - 'main'
341             - release-1-5:
342                 capi_version: v1beta1
343                 capm3_version: v1beta1
344                 capm3_release_branch: release-1.5
345                 target_branches:
346                   - 'main'
347                   - 'release-1.5'
348       - capm3_e2e_feature_tests:
349           capm3_target_branch:
350             - main:
351                 capi_version: v1beta1
352                 capm3_version: v1beta1
353                 capm3_release_branch: main
354                 target_branches:
355                   - 'main'
356             - release-1-5:
357                 capi_version: v1beta1
358                 capm3_version: v1beta1
359                 capm3_release_branch: release-1.5
360                 target_branches:
361                   - 'release-1.5'
362             - release-1-4:
363                 capi_version: v1beta1
364                 capm3_version: v1beta1
365                 capm3_release_branch: release-1.4
366                 target_branches:
367                   - 'release-1.4'
368             - release-1-3:
369                 capi_version: v1beta1
370                 capm3_version: v1beta1
371                 capm3_release_branch: release-1.3
372                 target_branches:
373                   - 'release-1.3'
374       - keep_capm3_e2e_integration_tests:
375           capm3_target_branch:
376             - main:
377                 capi_version: v1beta1
378                 capm3_version: v1beta1
379                 capm3_release_branch: main
380                 target_branches:
381                   - 'main'
382             - release-1-5:
383                 capi_version: v1beta1
384                 capm3_version: v1beta1
385                 capm3_release_branch: release-1.5
386                 target_branches:
387                   - 'main'
388                   - 'release-1.5'
389       - keep_capm3_e2e_basic_tests:
390           capm3_target_branch:
391             - main:
392                 capi_version: v1beta1
393                 capm3_version: v1beta1
394                 capm3_release_branch: main
395                 target_branches:
396                   - 'main'
397             - release-1-5:
398                 capi_version: v1beta1
399                 capm3_version: v1beta1
400                 capm3_release_branch: release-1.5
401                 target_branches:
402                   - 'main'
403                   - 'release-1.5'
404       - keep_capm3_e2e_feature_tests:
405           capm3_target_branch:
406             - main:
407                 capi_version: v1beta1
408                 capm3_version: v1beta1
409                 capm3_release_branch: main
410                 target_branches:
411                   - 'main'
412             - release-1-5:
413                 capi_version: v1beta1
414                 capm3_version: v1beta1
415                 capm3_release_branch: release-1.5
416                 target_branches:
417                   - 'release-1.5'
418             - release-1-4:
419                 capi_version: v1beta1
420                 capm3_version: v1beta1
421                 capm3_release_branch: release-1.4
422                 target_branches:
423                   - 'release-1.4'
424             - release-1-3:
425                 capi_version: v1beta1
426                 capm3_version: v1beta1
427                 capm3_release_branch: release-1.3
428                 target_branches:
429                   - 'release-1.3'
430       - keep_capm3_e2e_clusterctl_upgrade_tests:
431           upgrade_from_release:
432             - from-release-1-5:
433                 upgrade_from: v1.5.
434             - from-release-1-4:
435                 upgrade_from: v1.4.
436             - from-release-1-3:
437                 upgrade_from: v1.3.
438             - from-release-0-5:
439                 upgrade_from: v0.5.
440           exclude:
441             - image_os: centos
442       - keep_capm3_e2e_k8s_upgrade_tests:
443           k8s_versions:
444             - 1-27-1-28:
445                 k8s_version_upgrade_from: v1.27.4
446                 k8s_version_upgrade_to: v1.28.1
447                 kubectl_sha256: 4685bfcf732260f72fce58379e812e091557ef1dfc1bc8084226c7891dd6028f  # v1.27.4
448                 capm3_release_branch: main
449                 capm3_target_branch: main
450                 target_branches:
451                   - 'main'
452             - 1-26-1-27:
453                 k8s_version_upgrade_from: v1.26.4
454                 k8s_version_upgrade_to: v1.27.4
455                 kubectl_sha256: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.4
456                 capm3_release_branch: main
457                 capm3_target_branch: main
458                 target_branches:
459                   - 'main'
460             - 1-25-1-26:
461                 k8s_version_upgrade_from: v1.25.5
462                 k8s_version_upgrade_to: v1.26.4
463                 kubectl_sha256: 6a660cd44db3d4bfe1563f6689cbe2ffb28ee4baf3532e04fff2d7b909081c29  # v1.25.5
464                 capm3_release_branch: main
465                 capm3_target_branch: main
466                 target_branches:
467                   - 'main'
468             - 1-26-1-27:
469                 k8s_version_upgrade_from: v1.26.4
470                 k8s_version_upgrade_to: v1.27.4
471                 kubectl_sha256: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.4
472                 capm3_release_branch: release-1.5
473                 capm3_target_branch: release-1-5
474                 target_branches:
475                   - 'release-1.5'
476             - 1-26-1-27:
477                 k8s_version_upgrade_from: v1.26.4
478                 k8s_version_upgrade_to: v1.27.4
479                 kubectl_sha256: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.4
480                 capm3_release_branch: release-1.4
481                 capm3_target_branch: release-1-4
482                 target_branches:
483                   - 'release-1.4'
484             - 1-25-1-26:
485                 k8s_version_upgrade_from: v1.25.5
486                 k8s_version_upgrade_to: v1.26.4
487                 kubectl_sha256: 6a660cd44db3d4bfe1563f6689cbe2ffb28ee4baf3532e04fff2d7b909081c29  # v1.25.5
488                 capm3_release_branch: release-1.3
489                 capm3_target_branch: release-1-3
490                 target_branches:
491                   - 'release-1.3'
492           exclude:
493             - image_os: centos
494
495 - project:
496     name: "capm3-main-tests"
497     repo:
498       org: "metal3-io"
499       name: "cluster-api-provider-metal3"
500     image_os:
501       - ubuntu
502       - centos
503     jobs:
504       - capm3_main_e2e_clusterctl_upgrade_tests:
505           upgrade_from_release:
506             - from-release-1-5:
507                 upgrade_from: v1.5.
508             - from-release-1-4:
509                 upgrade_from: v1.4.
510             - from-release-1-3:
511                 upgrade_from: v1.3.
512             - from-release-0-5:
513                 upgrade_from: v0.5.
514           exclude:
515             - image_os: centos
516       - capm3_main_e2e_k8s_upgrade_tests:
517           k8s_versions:
518             - 1-27-1-28:
519                 k8s_version_upgrade_from: v1.27.4
520                 k8s_version_upgrade_to: v1.28.1
521                 kubectl_sha256: 4685bfcf732260f72fce58379e812e091557ef1dfc1bc8084226c7891dd6028f  # v1.27.4
522                 capm3_release_branch: main
523                 capm3_target_branch: main
524                 target_branches:
525                   - 'main'
526             - 1-26-1-27:
527                 k8s_version_upgrade_from: v1.26.4
528                 k8s_version_upgrade_to: v1.27.4
529                 kubectl_sha256: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.4
530                 capm3_release_branch: main
531                 capm3_target_branch: main
532             - 1-25-1-26:
533                 k8s_version_upgrade_from: v1.25.5
534                 k8s_version_upgrade_to: v1.26.4
535                 kubectl_sha256: 6a660cd44db3d4bfe1563f6689cbe2ffb28ee4baf3532e04fff2d7b909081c29  # v1.25.5
536                 capm3_release_branch: main
537                 capm3_target_branch: main
538             - 1-26-1-27:
539                 k8s_version_upgrade_from: v1.26.4
540                 k8s_version_upgrade_to: v1.27.4
541                 kubectl_sha256: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.4
542                 capm3_release_branch: release-1.5
543                 capm3_target_branch: release-1-5
544             - 1-26-1-27:
545                 k8s_version_upgrade_from: v1.26.4
546                 k8s_version_upgrade_to: v1.27.4
547                 kubectl_sha256: 636ac0eaa467dbceda4b2c4e33662adc9709f5ce40341c9fc1a687fc276ac02d  # v1.26.4
548                 capm3_release_branch: release-1.4
549                 capm3_target_branch: release-1-4
550             - 1-25-1-26:
551                 k8s_version_upgrade_from: v1.25.5
552                 k8s_version_upgrade_to: v1.26.4
553                 kubectl_sha256: 6a660cd44db3d4bfe1563f6689cbe2ffb28ee4baf3532e04fff2d7b909081c29  # v1.25.5
554                 capm3_release_branch: release-1.3
555                 capm3_target_branch: release-1-3
556           exclude:
557               - image_os: centos
558       - capm3_main_e2e_ephemeral_tests:
559           exclude:
560             - image_os: ubuntu
561       - capm3_main_e2e_integration_tests:
562           capm3_target_branch:
563             - main:
564                 capi_version: v1beta1
565                 capm3_version: v1beta1
566                 capm3_release_branch: main
567                 schedule: "H 4 * * *"
568             - release-1-5:
569                 capi_version: v1beta1
570                 capm3_version: v1beta1
571                 capm3_release_branch: release-1.5
572                 schedule: "30 4 * * *"
573       - capm3_main_e2e_feature_tests:
574           capm3_target_branch:
575             - main:
576                 capi_version: v1beta1
577                 capm3_version: v1beta1
578                 capm3_branch: main
579                 capm3_release_branch: main
580                 schedule: "H 2 * * *"
581             - release-1-5:
582                 capi_version: v1beta1
583                 capm3_version: v1beta1
584                 capm3_branch: release-1.5
585                 capm3_release_branch: release-1.5
586                 schedule: "H 11 * * *"
587             - release-1-4:
588                 capi_version: v1beta1
589                 capm3_version: v1beta1
590                 capm3_branch: release-1.4
591                 capm3_release_branch: release-1.4
592                 schedule: "H 5 * * *"
593             - release-1-3:
594                 capi_version: v1beta1
595                 capm3_version: v1beta1
596                 capm3_branch: release-1.3
597                 capm3_release_branch: release-1.3
598                 schedule: "H 8 * * *"
599
600 - project:
601     name: 'ironic_image_build_tests'
602     org: metal3-io
603     proj:
604       - project_infra:
605           repo: project-infra
606           branch: '${{ghprbActualCommit}}'
607           ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
608       - ironic_image:
609           repo: ironic-image
610     jobs:
611       - ironic_image_build_tests