Parameterize DISTRIBUTION and merge job templates
[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_artifacts
39     - update_nordix_repos
40     - openstack_node_image_building
41     - main_openstack_ipa_and_ironic_image_building
42     - metal3_ipa_and_ironic_image_building_test
43     - metal3_dev_tools_integration_test_centos
44     - metal3_dev_tools_integration_test_ubuntu
45     - artifactory_cleanup
46     repo:
47       org: "Nordix"
48       name: "metal3-dev-tools"
49     ci_github_jenkins_credentials_id: 'nordix-airship-ci-github-prod-token'
50     ci_ghprb_auth_id: 'e8a43847-46ff-42db-a5db-7366df0e4ee2'
51     ci_github_repo: 'https://github.com/Nordix/metal3-dev-tools.git'
52
53 - project:
54     name: 'project_infra'
55     branch: '${{ghprbActualCommit}}'
56     repo:
57       org: "metal3-io"
58       name: "project-infra"
59     ci_github_repo: '${{ghprbAuthorRepoGitUrl}}'
60     jobs:
61     - capm3_v1a4_integration_tests:
62         distribution:
63           - ubuntu
64           - centos
65     - capm3_v1a5_integration_tests_centos
66     - capm3_v1a5_integration_tests_ubuntu
67     - capm3_v1b1_integration_tests_centos
68     - capm3_v1b1_integration_tests_ubuntu
69     - feature_tests_ubuntu
70     - feature_tests_centos
71     - feature_tests_upgrade_ubuntu
72     - bml_integration_tests_centos
73     - keep_v1b1_test_ubuntu_alive
74     - keep_v1b1_test_centos_alive
75     - keep_v1a5_test_ubuntu_alive
76     - keep_v1a5_test_centos_alive
77
78 - project:
79     name: 'project_infra_cleanup'
80     repo:
81       org: "metal3-io"
82       name: "project-infra"
83     ci_github_pipeline: 'jenkins/jobs/integration_tests_clean.pipeline'
84     jobs:
85     - main_clean
86
87 - project:
88     name: "bmo"
89     repo:
90       org: "metal3-io"
91       name: "baremetal-operator"
92     jobs:
93     - capm3_v1a4_integration_tests:
94         distribution:
95           - ubuntu
96           - centos
97     - capm3_v1a5_integration_tests_centos
98     - capm3_v1a5_integration_tests_ubuntu
99     - capm3_v1b1_integration_tests_centos
100     - capm3_v1b1_integration_tests_ubuntu
101     - keep_v1b1_test_ubuntu_alive
102     - keep_v1b1_test_centos_alive
103     - keep_v1a5_test_ubuntu_alive
104     - keep_v1a5_test_centos_alive
105     - feature_tests_ubuntu
106
107 - project:
108     name: "ipam"
109     repo:
110       org: "metal3-io"
111       name: "ip-address-manager"
112     jobs:
113     - capm3_v1a4_integration_tests:
114         distribution:
115           - ubuntu
116           - centos
117     - capm3_v1a5_integration_tests_centos
118     - capm3_v1a5_integration_tests_ubuntu
119     - capm3_v1b1_integration_tests_centos
120     - capm3_v1b1_integration_tests_ubuntu
121     - keep_v1b1_test_ubuntu_alive
122     - keep_v1b1_test_centos_alive
123     - keep_v1a5_test_ubuntu_alive
124     - keep_v1a5_test_centos_alive
125
126 - project:
127     name: "metal3_dev_env"
128     jobs:
129     - capm3_v1a4_integration_tests:
130         distribution:
131           - ubuntu
132           - centos
133     - capm3_v1a4_main_integration_tests_centos
134     - capm3_v1a4_main_integration_tests_ubuntu
135     - capm3_v1a5_integration_tests_centos
136     - capm3_v1a5_integration_tests_ubuntu
137     - capm3_v1a5_main_integration_tests_centos
138     - capm3_v1a5_main_integration_tests_ubuntu
139     - capm3_v1b1_integration_tests_centos
140     - capm3_v1b1_integration_tests_ubuntu
141     - capm3_v1b1_main_integration_tests_centos
142     - capm3_v1b1_main_integration_tests_ubuntu
143     - feature_tests_ubuntu
144     - feature_tests_centos
145     - feature_tests_upgrade_ubuntu
146     - main_feature_tests_ubuntu
147     - main_feature_tests_centos
148     - main_feature_tests_upgrade_ubuntu
149     - bml_integration_tests_centos
150     - bml_main_integration_tests_centos
151     - keep_v1b1_test_ubuntu_alive
152     - keep_v1b1_test_centos_alive
153     - keep_v1a5_test_ubuntu_alive
154     - keep_v1a5_test_centos_alive
155
156     repo:
157       org: "metal3-io"
158       name: "metal3-dev-env"
159
160 - project:
161     name: "capm3"
162     repo:
163       org: "metal3-io"
164       name: "cluster-api-provider-metal3"
165     jobs:
166     - capm3_v1a4_integration_tests:
167         distribution:
168           - ubuntu
169           - centos
170     - capm3_v1a5_integration_tests_centos
171     - capm3_v1a5_integration_tests_ubuntu
172     - capm3_v1a5_e2e_tests_ubuntu
173     - capm3_v1a5_e2e_tests_centos
174     - capm3_v1a5_main_e2e_tests_ubuntu
175     - capm3_v1a5_main_e2e_tests_centos
176     - capm3_v1b1_integration_tests_centos
177     - capm3_v1b1_integration_tests_ubuntu
178     - capm3_v1b1_e2e_tests_centos
179     - capm3_v1b1_e2e_tests_ubuntu
180     - capm3_v1b1_e2e_upgrade_tests_ubuntu
181     - capm3_v1b1_main_e2e_tests_centos
182     - capm3_v1b1_main_e2e_tests_ubuntu
183     - keep_v1b1_test_ubuntu_alive
184     - keep_v1b1_test_centos_alive
185     - keep_v1a5_test_ubuntu_alive
186     - keep_v1a5_test_centos_alive
187
188
189 - project:
190     name: "ironic_image"
191     repo:
192       org: "metal3-io"
193       name: "ironic-image"
194     jobs:
195     - capm3_v1a4_integration_tests:
196         distribution:
197           - ubuntu
198           - centos
199     - capm3_v1a5_integration_tests_centos
200     - capm3_v1a5_integration_tests_ubuntu
201     - capm3_v1b1_integration_tests_centos
202     - capm3_v1b1_integration_tests_ubuntu
203     - keep_v1b1_test_ubuntu_alive
204     - keep_v1b1_test_centos_alive
205     - keep_v1a5_test_ubuntu_alive
206     - keep_v1a5_test_centos_alive
207
208 - project:
209     name: "ironic_ipa_downloader"
210     repo:
211       org: "metal3-io"
212       name: "ironic-ipa-downloader"
213     jobs:
214     - capm3_v1a4_integration_tests:
215         distribution: ubuntu
216     - capm3_v1a5_integration_tests_ubuntu
217     - capm3_v1b1_integration_tests_centos
218     - capm3_v1b1_integration_tests_ubuntu