blob: eb21a4c2bb3fed8991b35eee060db72b3a2a28bc [file] [log] [blame]
---
#
# ============LICENSE_START=======================================================
# Copyright (C) 2022 Nordix Foundation.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# SPDX-License-Identifier: Apache-2.0
# ============LICENSE_END=========================================================
# Description:
# ============
# This file contains job template definition for Cluster API Provider Metal3 (CAPM3) e2e basic integration tests.
# This job can be triggered manually or through a Github pull request. It creates a
# pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository.
- job-template:
id: capm3_e2e_basic_tests
name: '{job_prefix}-{image_os}-e2e-basic-test-{capm3_target_branch}'
description: "CAPM3 {capm3_version} e2e basic integration tests on {image_os}."
project-type: pipeline
defaults: global
disabled: False
concurrent: True
parameters:
# Parameters set by Prow
- string:
name: BUILD_ID
description: 'Used by Prow when triggering jobs'
- string:
name: PROW_JOB_ID
description: 'Used by Prow when triggering jobs'
- string:
name: REPO_OWNER
description: 'Project github repo org name'
- string:
name: REPO_NAME
description: 'Project github repo name'
- string:
name: PULL_BASE_REF
default: '{capm3_release_branch}'
description: 'Ref name of the base branch'
- string:
name: PULL_PULL_SHA
default: '{capm3_release_branch}'
description: 'Pull request head SHA'
- string:
name: PULL_NUMBER
description: 'Pull request number'
# End of Prow parameters
- string:
name: IMAGE_OS
default: '{image_os}'
description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos'
- string:
name: capm3_release_branch
default: '{capm3_release_branch}'
description: 'The target branch of CAPM3 to be used for this test'
- string:
name: bmo_release_branch
default: '{bmo_release_branch}'
description: 'The target branch of BMO to be used for this test'
- string:
name: CAPI_VERSION
default: '{capi_version}'
description: 'Cluster API version. E.g. v1beta1.'
- string:
name: CAPM3_VERSION
default: '{capm3_version}'
description: 'Cluster API provider Metal3 version. E.g. v1beta1.'
- string:
name: TARGET_NODE_MEMORY
default: 4096
description: 'RAM size of the target host.'
- string:
name: NUM_NODES
default: 2
description: 'Number of libvirt VMs.'
- string:
name: GINKGO_FOCUS
default: "basic"
description: 'Select the e2e basic integration test'
properties:
- build-discarder:
days-to-keep: 30
num-to-keep: 300
artifact-days-to-keep: -1
artifact-num-to-keep: -1
triggers: []
pipeline-scm:
scm:
- git:
url: "{ci_github_repo}"
credentials-id: "{ci_github_jenkins_credentials_id}"
branches:
- '{branch|main}'
name: 'origin'
refspec: '+refs/heads/*:refs/remotes/origin/*'
wipe-workspace: True
honor-refspec: True
shallow-clone: False
script-path: "{e2e_tests_pipeline}"
lightweight-checkout: False
- project:
name: "capm3-basic"
image_os:
- ubuntu
- centos
jobs:
- capm3_e2e_basic_tests:
capm3_target_branch:
- main:
capi_version: v1beta1
capm3_version: v1beta1
capm3_release_branch: main
bmo_release_branch: main
target_branches:
- 'main'
- release-1-7:
capi_version: v1beta1
capm3_version: v1beta1
capm3_release_branch: release-1.7
bmo_release_branch: release-0.6
target_branches:
- 'main'
- 'release-1.7'
- 'release-0.6'
- release-1-6:
capi_version: v1beta1
capm3_version: v1beta1
capm3_release_branch: release-1.6
bmo_release_branch: release-0.5
target_branches:
- 'main'
- 'release-1.6'
- 'release-0.5'