a1ffea855974d26a6648d1841d5ecf6c70257bcd
[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-5:
94           capi_version: v1beta1
95           capm3_version: v1beta1
96           capm3_release_branch: release-1.5
97           target_branches:
98             - 'main'
99             - 'release-1.5'
100       - release-1-4:
101           capi_version: v1beta1
102           capm3_version: v1beta1
103           capm3_release_branch: release-1.4
104           target_branches:
105             - 'main'
106             - 'release-1.4'
107       - release-1-3:
108           capi_version: v1beta1
109           capm3_version: v1beta1
110           capm3_release_branch: release-1.3
111           target_branches:
112             - 'main'
113             - 'release-1.3'
114     jobs:
115       - integration_tests
116
117 - project:
118     name: keep-integration-tests-alive
119     org: metal3-io
120     proj:
121       - metal3_dev_env:
122           repo: metal3-dev-env
123       - project_infra:
124           repo: project-infra
125           branch: '${{ghprbActualCommit}}'
126           ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
127       - capm3:
128           repo: cluster-api-provider-metal3
129       - bmo:
130           repo: baremetal-operator
131       - ipam:
132           repo: ip-address-manager
133       - ironic_image:
134           repo: ironic-image
135     image_os:
136       - ubuntu
137       - centos
138     capm3_target_branch:
139       - main:
140           capi_version: v1beta1
141           capm3_version: v1beta1
142           capm3_release_branch: main
143           target_branches:
144             - 'main'
145       - release-1-5:
146           capi_version: v1beta1
147           capm3_version: v1beta1
148           capm3_release_branch: release-1.5
149           target_branches:
150             - 'main'
151             - 'release-1.5'
152       - release-1-4:
153           capi_version: v1beta1
154           capm3_version: v1beta1
155           capm3_release_branch: release-1.4
156           target_branches:
157             - 'main'
158             - 'release-1.4'
159       - release-1-3:
160           capi_version: v1beta1
161           capm3_version: v1beta1
162           capm3_release_branch: release-1.3
163           target_branches:
164             - 'main'
165             - 'release-1.3'
166     jobs:
167       - keep_integration_tests
168
169 - project:
170     name: metal3-dev-env-main-tests
171     org: metal3-io
172     repo: metal3-dev-env
173     image_os:
174       - ubuntu
175       - centos
176     jobs:
177       - capm3_main_integration_tests:
178           capm3_target_branch:
179             - main:
180                 capi_version: v1beta1
181                 capm3_version: v1beta1
182                 capm3_release_branch: main
183                 schedule: "H 4 * * *"
184             - release-1-5:
185                 capi_version: v1beta1
186                 capm3_version: v1beta1
187                 capm3_release_branch: release-1.5
188                 schedule: "30 4 * * *"
189             - release-1-4:
190                 capi_version: v1beta1
191                 capm3_version: v1beta1
192                 capm3_release_branch: release-1.4
193                 schedule: "30 4 * * *"
194             - release-1-3:
195                 capi_version: v1beta1
196                 capm3_version: v1beta1
197                 capm3_release_branch: release-1.3
198                 schedule: "30 4 * * *"
199
200 - project:
201     name: bml-tests
202     org: metal3-io
203     image_os: centos
204     jobs:
205       - bml_integration_tests:
206           proj:
207             - metal3_dev_env:
208                 repo: metal3-dev-env
209             - project_infra:
210                 repo: project-infra
211                 branch: '${{ghprbActualCommit}}'
212                 ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
213       - bml_main_integration_tests:
214           repo: metal3-dev-env
215
216 - project:
217     name: 'project_infra_cleanup'
218     repo:
219       org: "metal3-io"
220       name: "project-infra"
221     ci_github_pipeline: 'jenkins/jobs/integration_tests_clean.pipeline'
222     jobs:
223     - main_clean
224
225 - project:
226     name: "capm3"
227     org: metal3-io
228     proj:
229       - capm3:
230           repo: cluster-api-provider-metal3
231       - metal3_dev_env:
232           repo: metal3-dev-env
233       - project_infra:
234           repo: project-infra
235           branch: '${{ghprbActualCommit}}'
236           ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
237       - bmo:
238           repo: baremetal-operator
239       - ipam:
240           repo: ip-address-manager
241     image_os:
242       - ubuntu
243       - centos
244     jobs:
245       - capm3_e2e_clusterctl_upgrade_tests:
246           upgrade_from_release:
247             - from-release-1-5:
248                 upgrade_from: v1.5.
249             - from-release-1-4:
250                 upgrade_from: v1.4.
251             - from-release-1-3:
252                 upgrade_from: v1.3.
253             - from-release-0-5:
254                 upgrade_from: v0.5.
255           exclude:
256             - image_os: centos
257       - capm3_e2e_k8s_upgrade_tests:
258           k8s_versions:
259             - 1-27-1-28:
260                 k8s_version_upgrade_from: v1.27.4
261                 k8s_version_upgrade_to: v1.28.1
262                 capm3_release_branch: main
263                 capm3_target_branch: main
264                 target_branches:
265                   - 'main'
266             - 1-26-1-27:
267                 k8s_version_upgrade_from: v1.26.4
268                 k8s_version_upgrade_to: v1.27.4
269                 capm3_release_branch: main
270                 capm3_target_branch: main
271                 target_branches:
272                   - 'main'
273             - 1-25-1-26:
274                 k8s_version_upgrade_from: v1.25.5
275                 k8s_version_upgrade_to: v1.26.4
276                 capm3_release_branch: main
277                 capm3_target_branch: main
278                 target_branches:
279                   - 'main'
280             - 1-26-1-27:
281                 k8s_version_upgrade_from: v1.26.4
282                 k8s_version_upgrade_to: v1.27.4
283                 capm3_release_branch: release-1.5
284                 capm3_target_branch: release-1-5
285                 target_branches:
286                   - 'release-1.5'
287             - 1-26-1-27:
288                 k8s_version_upgrade_from: v1.26.4
289                 k8s_version_upgrade_to: v1.27.4
290                 capm3_release_branch: release-1.4
291                 capm3_target_branch: release-1-4
292                 target_branches:
293                   - 'release-1.4'
294             - 1-25-1-26:
295                 k8s_version_upgrade_from: v1.25.5
296                 k8s_version_upgrade_to: v1.26.4
297                 capm3_release_branch: release-1.3
298                 capm3_target_branch: release-1-3
299                 target_branches:
300                   - 'release-1.3'
301           exclude:
302               - image_os: centos
303       - capm3_e2e_integration_tests:
304           capm3_target_branch:
305             - main:
306                 capi_version: v1beta1
307                 capm3_version: v1beta1
308                 capm3_release_branch: main
309                 target_branches:
310                   - 'main'
311             - release-1-5:
312                 capi_version: v1beta1
313                 capm3_version: v1beta1
314                 capm3_release_branch: release-1.5
315                 target_branches:
316                   - 'main'
317                   - 'release-1.5'
318       - capm3_e2e_basic_tests:
319           capm3_target_branch:
320             - main:
321                 capi_version: v1beta1
322                 capm3_version: v1beta1
323                 capm3_release_branch: main
324                 target_branches:
325                   - 'main'
326             - release-1-5:
327                 capi_version: v1beta1
328                 capm3_version: v1beta1
329                 capm3_release_branch: release-1.5
330                 target_branches:
331                   - 'main'
332                   - 'release-1.5'
333       - capm3_e2e_feature_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                   - 'release-1.5'
347             - release-1-4:
348                 capi_version: v1beta1
349                 capm3_version: v1beta1
350                 capm3_release_branch: release-1.4
351                 target_branches:
352                   - 'release-1.4'
353             - release-1-3:
354                 capi_version: v1beta1
355                 capm3_version: v1beta1
356                 capm3_release_branch: release-1.3
357                 target_branches:
358                   - 'release-1.3'
359       - keep_capm3_e2e_integration_tests:
360           capm3_target_branch:
361             - main:
362                 capi_version: v1beta1
363                 capm3_version: v1beta1
364                 capm3_release_branch: main
365                 target_branches:
366                   - 'main'
367             - release-1-5:
368                 capi_version: v1beta1
369                 capm3_version: v1beta1
370                 capm3_release_branch: release-1.5
371                 target_branches:
372                   - 'main'
373                   - 'release-1.5'
374       - keep_capm3_e2e_basic_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_feature_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                   - 'release-1.5'
403             - release-1-4:
404                 capi_version: v1beta1
405                 capm3_version: v1beta1
406                 capm3_release_branch: release-1.4
407                 target_branches:
408                   - 'release-1.4'
409             - release-1-3:
410                 capi_version: v1beta1
411                 capm3_version: v1beta1
412                 capm3_release_branch: release-1.3
413                 target_branches:
414                   - 'release-1.3'
415       - keep_capm3_e2e_clusterctl_upgrade_tests:
416           upgrade_from_release:
417             - from-release-1-5:
418                 upgrade_from: v1.5.
419             - from-release-1-4:
420                 upgrade_from: v1.4.
421             - from-release-1-3:
422                 upgrade_from: v1.3.
423             - from-release-0-5:
424                 upgrade_from: v0.5.
425           exclude:
426             - image_os: centos
427       - keep_capm3_e2e_k8s_upgrade_tests:
428           k8s_versions:
429             - 1-27-1-28:
430                 k8s_version_upgrade_from: v1.27.4
431                 k8s_version_upgrade_to: v1.28.1
432                 capm3_release_branch: main
433                 capm3_target_branch: main
434                 target_branches:
435                   - 'main'
436             - 1-26-1-27:
437                 k8s_version_upgrade_from: v1.26.4
438                 k8s_version_upgrade_to: v1.27.4
439                 capm3_release_branch: main
440                 capm3_target_branch: main
441                 target_branches:
442                   - 'main'
443             - 1-25-1-26:
444                 k8s_version_upgrade_from: v1.25.5
445                 k8s_version_upgrade_to: v1.26.4
446                 capm3_release_branch: main
447                 capm3_target_branch: main
448                 target_branches:
449                   - 'main'
450             - 1-26-1-27:
451                 k8s_version_upgrade_from: v1.26.4
452                 k8s_version_upgrade_to: v1.27.4
453                 capm3_release_branch: release-1.5
454                 capm3_target_branch: release-1-5
455                 target_branches:
456                   - 'release-1.5'
457             - 1-26-1-27:
458                 k8s_version_upgrade_from: v1.26.4
459                 k8s_version_upgrade_to: v1.27.4
460                 capm3_release_branch: release-1.4
461                 capm3_target_branch: release-1-4
462                 target_branches:
463                   - 'release-1.4'
464             - 1-25-1-26:
465                 k8s_version_upgrade_from: v1.25.5
466                 k8s_version_upgrade_to: v1.26.4
467                 capm3_release_branch: release-1.3
468                 capm3_target_branch: release-1-3
469                 target_branches:
470                   - 'release-1.3'
471           exclude:
472             - image_os: centos
473
474 - project:
475     name: "capm3-main-tests"
476     repo:
477       org: "metal3-io"
478       name: "cluster-api-provider-metal3"
479     image_os:
480       - ubuntu
481       - centos
482     jobs:
483       - capm3_main_e2e_clusterctl_upgrade_tests:
484           upgrade_from_release:
485             - from-release-1-5:
486                 upgrade_from: v1.5.
487             - from-release-1-4:
488                 upgrade_from: v1.4.
489             - from-release-1-3:
490                 upgrade_from: v1.3.
491             - from-release-0-5:
492                 upgrade_from: v0.5.
493           exclude:
494             - image_os: centos
495       - capm3_main_e2e_k8s_upgrade_tests:
496           k8s_versions:
497             - 1-27-1-28:
498                 k8s_version_upgrade_from: v1.27.4
499                 k8s_version_upgrade_to: v1.28.1
500                 capm3_release_branch: main
501                 capm3_target_branch: main
502                 target_branches:
503                   - 'main'
504             - 1-26-1-27:
505                 k8s_version_upgrade_from: v1.26.4
506                 k8s_version_upgrade_to: v1.27.4
507                 capm3_release_branch: main
508                 capm3_target_branch: main
509             - 1-25-1-26:
510                 k8s_version_upgrade_from: v1.25.5
511                 k8s_version_upgrade_to: v1.26.4
512                 capm3_release_branch: main
513                 capm3_target_branch: main
514             - 1-26-1-27:
515                 k8s_version_upgrade_from: v1.26.4
516                 k8s_version_upgrade_to: v1.27.4
517                 capm3_release_branch: release-1.5
518                 capm3_target_branch: release-1-5
519             - 1-26-1-27:
520                 k8s_version_upgrade_from: v1.26.4
521                 k8s_version_upgrade_to: v1.27.4
522                 capm3_release_branch: release-1.4
523                 capm3_target_branch: release-1-4
524             - 1-25-1-26:
525                 k8s_version_upgrade_from: v1.25.5
526                 k8s_version_upgrade_to: v1.26.4
527                 capm3_release_branch: release-1.3
528                 capm3_target_branch: release-1-3
529           exclude:
530               - image_os: centos
531       - capm3_main_e2e_ephemeral_tests:
532           exclude:
533             - image_os: ubuntu
534       - capm3_main_e2e_integration_tests:
535           capm3_target_branch:
536             - main:
537                 capi_version: v1beta1
538                 capm3_version: v1beta1
539                 capm3_release_branch: main
540                 schedule: "H 4 * * *"
541             - release-1-5:
542                 capi_version: v1beta1
543                 capm3_version: v1beta1
544                 capm3_release_branch: release-1.5
545                 schedule: "30 4 * * *"
546       - capm3_main_e2e_feature_tests:
547           capm3_target_branch:
548             - main:
549                 capi_version: v1beta1
550                 capm3_version: v1beta1
551                 capm3_branch: main
552                 capm3_release_branch: main
553                 schedule: "H 2 * * *"
554             - release-1-5:
555                 capi_version: v1beta1
556                 capm3_version: v1beta1
557                 capm3_branch: release-1.5
558                 capm3_release_branch: release-1.5
559                 schedule: "H 11 * * *"
560             - release-1-4:
561                 capi_version: v1beta1
562                 capm3_version: v1beta1
563                 capm3_branch: release-1.4
564                 capm3_release_branch: release-1.4
565                 schedule: "H 5 * * *"
566             - release-1-3:
567                 capi_version: v1beta1
568                 capm3_version: v1beta1
569                 capm3_branch: release-1.3
570                 capm3_release_branch: release-1.3
571                 schedule: "H 8 * * *"
572
573 - project:
574     name: 'ironic_image_build_tests'
575     org: metal3-io
576     proj:
577       - project_infra:
578           repo: project-infra
579           branch: '${{ghprbActualCommit}}'
580           ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
581       - ironic_image:
582           repo: ironic-image
583     jobs:
584       - ironic_image_build_tests