blob: eb21a4c2bb3fed8991b35eee060db72b3a2a28bc [file] [log] [blame]
Minna Färme7617002023-07-24 12:24:01 +03001---
2#
3# ============LICENSE_START=======================================================
4# Copyright (C) 2022 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# Description:
22# ============
23# This file contains job template definition for Cluster API Provider Metal3 (CAPM3) e2e basic integration tests.
24# This job can be triggered manually or through a Github pull request. It creates a
25# pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository.
26
27- job-template:
28 id: capm3_e2e_basic_tests
Mohammed Boukhalfac2051952024-03-05 13:52:43 +020029 name: '{job_prefix}-{image_os}-e2e-basic-test-{capm3_target_branch}'
30 description: "CAPM3 {capm3_version} e2e basic integration tests on {image_os}."
Minna Färme7617002023-07-24 12:24:01 +030031 project-type: pipeline
32 defaults: global
33 disabled: False
34 concurrent: True
35 parameters:
Mohammed Boukhalfa011b1a92024-02-19 08:40:35 +020036 # Parameters set by Prow
37 - string:
38 name: BUILD_ID
39 description: 'Used by Prow when triggering jobs'
40 - string:
41 name: PROW_JOB_ID
42 description: 'Used by Prow when triggering jobs'
43 - string:
44 name: REPO_OWNER
Mohammed Boukhalfa011b1a92024-02-19 08:40:35 +020045 description: 'Project github repo org name'
46 - string:
47 name: REPO_NAME
Mohammed Boukhalfa011b1a92024-02-19 08:40:35 +020048 description: 'Project github repo name'
49 - string:
50 name: PULL_BASE_REF
Sunnatillocad20a42024-04-05 13:43:08 +030051 default: '{capm3_release_branch}'
Mohammed Boukhalfa011b1a92024-02-19 08:40:35 +020052 description: 'Ref name of the base branch'
53 - string:
54 name: PULL_PULL_SHA
Sunnatillocad20a42024-04-05 13:43:08 +030055 default: '{capm3_release_branch}'
Mohammed Boukhalfa011b1a92024-02-19 08:40:35 +020056 description: 'Pull request head SHA'
Mohammed Boukhalfab33e4d02024-03-05 11:04:17 +020057 - string:
58 name: PULL_NUMBER
59 description: 'Pull request number'
Mohammed Boukhalfa011b1a92024-02-19 08:40:35 +020060 # End of Prow parameters
Minna Färme7617002023-07-24 12:24:01 +030061 - string:
Minna Färme7617002023-07-24 12:24:01 +030062 name: IMAGE_OS
63 default: '{image_os}'
64 description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos'
65 - string:
66 name: capm3_release_branch
67 default: '{capm3_release_branch}'
68 description: 'The target branch of CAPM3 to be used for this test'
69 - string:
Kashif Khan511cdd32023-10-04 17:04:13 +030070 name: bmo_release_branch
71 default: '{bmo_release_branch}'
72 description: 'The target branch of BMO to be used for this test'
73 - string:
Minna Färme7617002023-07-24 12:24:01 +030074 name: CAPI_VERSION
75 default: '{capi_version}'
76 description: 'Cluster API version. E.g. v1beta1.'
77 - string:
78 name: CAPM3_VERSION
79 default: '{capm3_version}'
80 description: 'Cluster API provider Metal3 version. E.g. v1beta1.'
81 - string:
82 name: TARGET_NODE_MEMORY
83 default: 4096
84 description: 'RAM size of the target host.'
85 - string:
Sunnatillo2483b962024-05-03 13:28:44 +030086 name: NUM_NODES
87 default: 2
88 description: 'Number of libvirt VMs.'
Minna Färme7617002023-07-24 12:24:01 +030089 - string:
90 name: GINKGO_FOCUS
91 default: "basic"
92 description: 'Select the e2e basic integration test'
93
94 properties:
95 - build-discarder:
96 days-to-keep: 30
97 num-to-keep: 300
98 artifact-days-to-keep: -1
99 artifact-num-to-keep: -1
Minna Färme7617002023-07-24 12:24:01 +0300100
Mohammed Boukhalfac2051952024-03-05 13:52:43 +0200101 triggers: []
102
Minna Färme7617002023-07-24 12:24:01 +0300103 pipeline-scm:
104 scm:
105 - git:
Mohammed Boukhalfa02279bc2024-03-08 18:19:33 +0200106 url: "{ci_github_repo}"
Minna Färme7617002023-07-24 12:24:01 +0300107 credentials-id: "{ci_github_jenkins_credentials_id}"
108 branches:
Mohammed Boukhalfa02279bc2024-03-08 18:19:33 +0200109 - '{branch|main}'
Minna Färme7617002023-07-24 12:24:01 +0300110 name: 'origin'
111 refspec: '+refs/heads/*:refs/remotes/origin/*'
112 wipe-workspace: True
113 honor-refspec: True
114 shallow-clone: False
Sunnatilloe8a78ce2024-05-02 11:41:51 +0300115 script-path: "{e2e_tests_pipeline}"
Minna Färme7617002023-07-24 12:24:01 +0300116 lightweight-checkout: False
Mohammed Boukhalfac2051952024-03-05 13:52:43 +0200117
118- project:
119 name: "capm3-basic"
120 image_os:
121 - ubuntu
122 - centos
123 jobs:
124 - capm3_e2e_basic_tests:
125 capm3_target_branch:
126 - main:
127 capi_version: v1beta1
128 capm3_version: v1beta1
129 capm3_release_branch: main
130 bmo_release_branch: main
131 target_branches:
132 - 'main'
Huy Mai9e2b3692024-04-12 13:12:28 +0300133 - release-1-7:
134 capi_version: v1beta1
135 capm3_version: v1beta1
136 capm3_release_branch: release-1.7
137 bmo_release_branch: release-0.6
138 target_branches:
139 - 'main'
140 - 'release-1.7'
141 - 'release-0.6'
Mohammed Boukhalfac2051952024-03-05 13:52:43 +0200142 - release-1-6:
143 capi_version: v1beta1
144 capm3_version: v1beta1
145 capm3_release_branch: release-1.6
146 bmo_release_branch: release-0.5
147 target_branches:
148 - 'main'
149 - 'release-1.6'
150 - 'release-0.5'