From 2e1382e68c55bbb656a92c3f642e63c709c98e7b Mon Sep 17 00:00:00 2001 From: Lennart Jern Date: Mon, 14 Feb 2022 12:24:16 +0200 Subject: [PATCH] metal3: parameterize image_os This reduces the number of job templates by almost 2 since we now use the same template for centos and ubuntu for each job. Note that the status checks and trigger phrases change for all ubuntu jobs! This is beacuse they used to have centos spelled out but ubuntu omitted (e.g. test-v1b1-centos-integration and test-v1b1-integration). Now ubuntu will also be spelled out: test-v1b1-ubuntu-integration. Change-Id: I885483219da1ff41227f861d7b3570debf22f022 --- ...job_capm3_v1a4_main_integration_tests.yml} | 8 +- ...pm3_v1a4_main_integration_tests_ubuntu.yml | 96 -------- ...entos.yml => job_capm3_v1a5_e2e_tests.yml} | 12 +- .../job_capm3_v1a5_e2e_tests_ubuntu.yml | 122 ---------- ...l => job_capm3_v1a5_integration_tests.yml} | 12 +- ...ob_capm3_v1a5_integration_tests_ubuntu.yml | 119 --------- ....yml => job_capm3_v1a5_main_e2e_tests.yml} | 8 +- .../job_capm3_v1a5_main_e2e_tests_ubuntu.yml | 104 -------- ...job_capm3_v1a5_main_integration_tests.yml} | 8 +- ...pm3_v1a5_main_integration_tests_ubuntu.yml | 96 -------- ...entos.yml => job_capm3_v1b1_e2e_tests.yml} | 12 +- .../job_capm3_v1b1_e2e_tests_ubuntu.yml | 121 --------- ...l => job_capm3_v1b1_integration_tests.yml} | 12 +- ...ob_capm3_v1b1_integration_tests_ubuntu.yml | 117 --------- ....yml => job_capm3_v1b1_main_e2e_tests.yml} | 8 +- .../job_capm3_v1b1_main_e2e_tests_ubuntu.yml | 104 -------- ...job_capm3_v1b1_main_integration_tests.yml} | 8 +- ...pm3_v1b1_main_integration_tests_centos.yml | 96 -------- ...tests_centos.yml => job_feature_tests.yml} | 14 +- jjb/metal3/job_feature_tests_ubuntu.yml | 127 ---------- ...s.yml => job_keep_integration_vm_v1a5.yml} | 12 +- .../job_keep_integration_vm_v1a5_ubuntu.yml | 124 ---------- ...s.yml => job_keep_integration_vm_v1b1.yml} | 12 +- .../job_keep_integration_vm_v1b1_ubuntu.yml | 122 ---------- ..._centos.yml => job_main_feature_tests.yml} | 10 +- jjb/metal3/job_main_feature_tests_ubuntu.yml | 105 -------- ...job_metal3_dev_tools_integration_test.yml} | 12 +- ...tal3_dev_tools_integration_test_ubuntu.yml | 121 --------- jjb/metal3/projects.yml | 229 ++++++++++++------ 29 files changed, 225 insertions(+), 1726 deletions(-) rename jjb/metal3/{job_capm3_v1a4_main_integration_tests_centos.yml => job_capm3_v1a4_main_integration_tests.yml} (95%) delete mode 100644 jjb/metal3/job_capm3_v1a4_main_integration_tests_ubuntu.yml rename jjb/metal3/{job_capm3_v1a5_e2e_tests_centos.yml => job_capm3_v1a5_e2e_tests.yml} (93%) delete mode 100644 jjb/metal3/job_capm3_v1a5_e2e_tests_ubuntu.yml rename jjb/metal3/{job_capm3_v1a5_integration_tests_centos.yml => job_capm3_v1a5_integration_tests.yml} (92%) delete mode 100644 jjb/metal3/job_capm3_v1a5_integration_tests_ubuntu.yml rename jjb/metal3/{job_capm3_v1a5_main_e2e_tests_centos.yml => job_capm3_v1a5_main_e2e_tests.yml} (95%) delete mode 100644 jjb/metal3/job_capm3_v1a5_main_e2e_tests_ubuntu.yml rename jjb/metal3/{job_capm3_v1a5_main_integration_tests_centos.yml => job_capm3_v1a5_main_integration_tests.yml} (94%) delete mode 100644 jjb/metal3/job_capm3_v1a5_main_integration_tests_ubuntu.yml rename jjb/metal3/{job_capm3_v1b1_e2e_tests_centos.yml => job_capm3_v1b1_e2e_tests.yml} (93%) delete mode 100644 jjb/metal3/job_capm3_v1b1_e2e_tests_ubuntu.yml rename jjb/metal3/{job_capm3_v1b1_integration_tests_centos.yml => job_capm3_v1b1_integration_tests.yml} (92%) delete mode 100644 jjb/metal3/job_capm3_v1b1_integration_tests_ubuntu.yml rename jjb/metal3/{job_capm3_v1b1_main_e2e_tests_centos.yml => job_capm3_v1b1_main_e2e_tests.yml} (96%) delete mode 100644 jjb/metal3/job_capm3_v1b1_main_e2e_tests_ubuntu.yml rename jjb/metal3/{job_capm3_v1b1_main_integration_tests_ubuntu.yml => job_capm3_v1b1_main_integration_tests.yml} (95%) delete mode 100644 jjb/metal3/job_capm3_v1b1_main_integration_tests_centos.yml rename jjb/metal3/{job_feature_tests_centos.yml => job_feature_tests.yml} (92%) delete mode 100644 jjb/metal3/job_feature_tests_ubuntu.yml rename jjb/metal3/{job_keep_integration_vm_v1a5_centos.yml => job_keep_integration_vm_v1a5.yml} (92%) delete mode 100644 jjb/metal3/job_keep_integration_vm_v1a5_ubuntu.yml rename jjb/metal3/{job_keep_integration_vm_v1b1_centos.yml => job_keep_integration_vm_v1b1.yml} (92%) delete mode 100644 jjb/metal3/job_keep_integration_vm_v1b1_ubuntu.yml rename jjb/metal3/{job_main_feature_tests_centos.yml => job_main_feature_tests.yml} (94%) delete mode 100644 jjb/metal3/job_main_feature_tests_ubuntu.yml rename jjb/metal3/{job_metal3_dev_tools_integration_test_centos.yml => job_metal3_dev_tools_integration_test.yml} (93%) delete mode 100644 jjb/metal3/job_metal3_dev_tools_integration_test_ubuntu.yml diff --git a/jjb/metal3/job_capm3_v1a4_main_integration_tests_centos.yml b/jjb/metal3/job_capm3_v1a4_main_integration_tests.yml similarity index 95% rename from jjb/metal3/job_capm3_v1a4_main_integration_tests_centos.yml rename to jjb/metal3/job_capm3_v1a4_main_integration_tests.yml index 25652665..2d59a733 100644 --- a/jjb/metal3/job_capm3_v1a4_main_integration_tests_centos.yml +++ b/jjb/metal3/job_capm3_v1a4_main_integration_tests.yml @@ -25,9 +25,9 @@ # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - job-template: - id: capm3_v1a4_main_integration_tests_centos - name: '{job_prefix}_main_v1a4_integration_test_centos' - description: "CAPM3 v1alpha4 main integration tests for {repo[org]}/{repo[name]} on CentOS." + id: capm3_v1a4_main_integration_tests + name: '{job_prefix}_main_v1a4_integration_test_{image_os}' + description: "CAPM3 v1alpha4 main integration tests for {repo[org]}/{repo[name]} on {image_os}." project-type: pipeline defaults: global disabled: False @@ -55,7 +55,7 @@ description: 'Target branch of the PR' - string: name: IMAGE_OS - default: 'centos' + 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: CAPI_VERSION diff --git a/jjb/metal3/job_capm3_v1a4_main_integration_tests_ubuntu.yml b/jjb/metal3/job_capm3_v1a4_main_integration_tests_ubuntu.yml deleted file mode 100644 index 32b1452b..00000000 --- a/jjb/metal3/job_capm3_v1a4_main_integration_tests_ubuntu.yml +++ /dev/null @@ -1,96 +0,0 @@ ---- -# -# ============LICENSE_START======================================================= -# Copyright (C) 2019 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) main 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_v1a4_main_integration_tests_ubuntu - name: '{job_prefix}_main_v1a4_integration_test_ubuntu' - description: "CAPM3 v1alpha4 main integration tests for {repo[org]}/{repo[name]} on Ubuntu." - project-type: pipeline - defaults: global - disabled: False - concurrent: True - parameters: - - string: - name: PROJECT_REPO_ORG - default: '{repo[org]}' - description: 'Project github repo org name' - - string: - name: PROJECT_REPO_NAME - default: '{repo[name]}' - description: 'Project github repo name' - - string: - name: ghprbActualCommit - default: 'master' - description: 'CI Repo branch for triggering manual build' - - string: - name: ghprbAuthorRepoGitUrl - default: 'https://github.com/{repo[org]}/{repo[name]}.git' - description: 'CI Repo URL for triggering manual build' - - string: - name: ghprbTargetBranch - default: 'master' - description: 'Target branch of the PR' - - string: - name: IMAGE_OS - default: 'ubuntu' - description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos' - - string: - name: CAPI_VERSION - default: 'v1alpha3' - description: 'Cluster API version. Can be v1alpha3.' - - string: - name: CAPM3_VERSION - default: 'v1alpha4' - description: 'Cluster API provider Metal3 version. Can be v1alpha4 or v1alpha5.' - - string: - name: TARGET_NODE_MEMORY - default: 4096 - description: 'RAM size of the target host.' - - properties: - - build-discarder: - days-to-keep: 30 - num-to-keep: 300 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 - - triggers: - - timed: "15 4 * * *" - - 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: "{ci_github_pipeline}" - lightweight-checkout: False diff --git a/jjb/metal3/job_capm3_v1a5_e2e_tests_centos.yml b/jjb/metal3/job_capm3_v1a5_e2e_tests.yml similarity index 93% rename from jjb/metal3/job_capm3_v1a5_e2e_tests_centos.yml rename to jjb/metal3/job_capm3_v1a5_e2e_tests.yml index f9908ee4..57ad7502 100644 --- a/jjb/metal3/job_capm3_v1a5_e2e_tests_centos.yml +++ b/jjb/metal3/job_capm3_v1a5_e2e_tests.yml @@ -25,9 +25,9 @@ # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - job-template: - id: capm3_v1a5_e2e_tests_centos - name: '{job_prefix}_{name}_v1a5_e2e_test_centos' - description: "CAPM3 v1alpha5 e2e tests for {repo[org]}/{repo[name]} on CentOS." + id: capm3_v1a5_e2e_tests + name: '{job_prefix}_{name}_v1a5_e2e_test_{image_os}' + description: "CAPM3 v1alpha5 e2e tests for {repo[org]}/{repo[name]} on {image_os}." project-type: pipeline defaults: global disabled: False @@ -55,7 +55,7 @@ description: 'Target branch of the PR' - string: name: IMAGE_OS - default: 'centos' + 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: CAPI_VERSION @@ -90,7 +90,7 @@ org-list: "{ci_github_whitelist_org}" cron: 'H/5 * * * *' auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/test-v1a5-centos-e2e(\s(.|\n)*)?' + trigger-phrase: '((.|\n)*\s)?/test-v1a5-{image_os}-e2e(\s(.|\n)*)?' skip-build-phrase: '/skip-test' only-trigger-phrase: True github-hooks: True @@ -101,7 +101,7 @@ - 'master' - 'main' - 'release-0.5' - status-context: "test-v1a5-centos-e2e" + status-context: "test-v1a5-{image_os}-e2e" success-status: "Passed" failure-status: "Failed" error-status: "Error" diff --git a/jjb/metal3/job_capm3_v1a5_e2e_tests_ubuntu.yml b/jjb/metal3/job_capm3_v1a5_e2e_tests_ubuntu.yml deleted file mode 100644 index 01611afc..00000000 --- a/jjb/metal3/job_capm3_v1a5_e2e_tests_ubuntu.yml +++ /dev/null @@ -1,122 +0,0 @@ ---- -# -# ============LICENSE_START======================================================= -# Copyright (C) 2021 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 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_v1a5_e2e_tests_ubuntu - name: '{job_prefix}_{name}_v1a5_e2e_test_ubuntu' - description: "CAPM3 v1alpha5 e2e tests for {repo[org]}/{repo[name]} on Ubuntu." - project-type: pipeline - defaults: global - disabled: False - concurrent: True - parameters: - - string: - name: PROJECT_REPO_ORG - default: '{repo[org]}' - description: 'Project github repo org name' - - string: - name: PROJECT_REPO_NAME - default: '{repo[name]}' - description: 'Project github repo name' - - string: - name: ghprbActualCommit - default: 'master' - description: 'CI Repo branch for triggering manual build' - - string: - name: ghprbAuthorRepoGitUrl - default: 'https://github.com/{repo[org]}/{repo[name]}.git' - description: 'CI Repo URL for triggering manual build' - - string: - name: ghprbTargetBranch - default: 'master' - description: 'Target branch of the PR' - - string: - name: IMAGE_OS - default: 'ubuntu' - description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos' - - string: - name: CAPI_VERSION - default: 'v1alpha4' - description: 'Cluster API version. Can be v1alpha4.' - - string: - name: CAPM3_VERSION - default: 'v1alpha5' - description: 'Cluster API provider Metal3 version. Can be v1alpha5 or v1alpha4.' - - string: - name: TARGET_NODE_MEMORY - default: 4096 - description: 'RAM size of the target host.' - - string: - name: TESTS_FOR - default: "e2e_tests" - description: 'Tests using the e2e framework.' - - properties: - - build-discarder: - days-to-keep: 30 - num-to-keep: 300 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 - - github: - url: https://github.com/{repo[org]}/{repo[name]} - - triggers: - - github-pull-request: - admin-list: - - '{ci_github_admin_user}' - org-list: "{ci_github_whitelist_org}" - cron: 'H/5 * * * *' - auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/test-v1a5-e2e(\s(.|\n)*)?' - skip-build-phrase: '/skip-test' - only-trigger-phrase: True - github-hooks: True - permit-all: False - auto-close-on-fail: False - allow-whitelist-orgs-as-admins: True - white-list-target-branches: - - 'master' - - 'main' - - 'release-0.5' - status-context: "test-v1a5-e2e" - success-status: "Passed" - failure-status: "Failed" - error-status: "Error" - cancel-builds-on-update: True - 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: "{ci_github_pipeline}" - lightweight-checkout: False diff --git a/jjb/metal3/job_capm3_v1a5_integration_tests_centos.yml b/jjb/metal3/job_capm3_v1a5_integration_tests.yml similarity index 92% rename from jjb/metal3/job_capm3_v1a5_integration_tests_centos.yml rename to jjb/metal3/job_capm3_v1a5_integration_tests.yml index 4ae113ff..7c64d113 100644 --- a/jjb/metal3/job_capm3_v1a5_integration_tests_centos.yml +++ b/jjb/metal3/job_capm3_v1a5_integration_tests.yml @@ -25,9 +25,9 @@ # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - job-template: - id: capm3_v1a5_integration_tests_centos - name: '{job_prefix}_{name}_v1a5_integration_test_centos' - description: "CAPM3 v1alpha5 integration tests for {repo[org]}/{repo[name]} on CentOS." + id: capm3_v1a5_integration_tests + name: '{job_prefix}_{name}_v1a5_integration_test_{image_os}' + description: "CAPM3 v1alpha5 integration tests for {repo[org]}/{repo[name]} on {image_os}." project-type: pipeline defaults: global disabled: False @@ -55,7 +55,7 @@ description: 'Target branch of the PR' - string: name: IMAGE_OS - default: 'centos' + 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: CAPI_VERSION @@ -86,7 +86,7 @@ org-list: "{ci_github_whitelist_org}" cron: 'H/5 * * * *' auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/test-v1a5-centos-integration(\s(.|\n)*)?' + trigger-phrase: '((.|\n)*\s)?/test-v1a5-{image_os}-integration(\s(.|\n)*)?' skip-build-phrase: '/skip-test' only-trigger-phrase: True github-hooks: True @@ -98,7 +98,7 @@ - 'main' - 'release-0.5' - 'release-0.1' - status-context: "test-v1a5-centos-integration" + status-context: "test-v1a5-{image_os}-integration" success-status: "Passed" failure-status: "Failed" error-status: "Error" diff --git a/jjb/metal3/job_capm3_v1a5_integration_tests_ubuntu.yml b/jjb/metal3/job_capm3_v1a5_integration_tests_ubuntu.yml deleted file mode 100644 index 0ba8ea8a..00000000 --- a/jjb/metal3/job_capm3_v1a5_integration_tests_ubuntu.yml +++ /dev/null @@ -1,119 +0,0 @@ ---- -# -# ============LICENSE_START======================================================= -# Copyright (C) 2019 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) 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_v1a5_integration_tests_ubuntu - name: '{job_prefix}_{name}_v1a5_integration_test_ubuntu' - description: "CAPM3 v1alpha5 integration tests for {repo[org]}/{repo[name]} on Ubuntu." - project-type: pipeline - defaults: global - disabled: False - concurrent: True - parameters: - - string: - name: PROJECT_REPO_ORG - default: '{repo[org]}' - description: 'Project github repo org name' - - string: - name: PROJECT_REPO_NAME - default: '{repo[name]}' - description: 'Project github repo name' - - string: - name: ghprbActualCommit - default: 'master' - description: 'CI Repo branch for triggering manual build' - - string: - name: ghprbAuthorRepoGitUrl - default: 'https://github.com/{repo[org]}/{repo[name]}.git' - description: 'CI Repo URL for triggering manual build' - - string: - name: ghprbTargetBranch - default: 'master' - description: 'Target branch of the PR' - - string: - name: IMAGE_OS - default: 'ubuntu' - description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos' - - string: - name: CAPI_VERSION - default: 'v1alpha4' - description: 'Cluster API version.' - - string: - name: CAPM3_VERSION - default: 'v1alpha5' - description: 'Cluster API provider Metal3 version.' - - string: - name: TARGET_NODE_MEMORY - default: 4096 - description: 'RAM size of the target host.' - - properties: - - build-discarder: - days-to-keep: 30 - num-to-keep: 300 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 - - github: - url: https://github.com/{repo[org]}/{repo[name]} - - triggers: - - github-pull-request: - admin-list: - - '{ci_github_admin_user}' - org-list: "{ci_github_whitelist_org}" - cron: 'H/5 * * * *' - auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/test-v1a5-integration(\s(.|\n)*)?' - skip-build-phrase: '/skip-test' - only-trigger-phrase: True - github-hooks: True - permit-all: False - auto-close-on-fail: False - allow-whitelist-orgs-as-admins: True - white-list-target-branches: - - 'master' - - 'main' - - 'release-0.5' - - 'release-0.1' - status-context: "test-v1a5-integration" - success-status: "Passed" - failure-status: "Failed" - error-status: "Error" - cancel-builds-on-update: True - 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: "{ci_github_pipeline}" - lightweight-checkout: False diff --git a/jjb/metal3/job_capm3_v1a5_main_e2e_tests_centos.yml b/jjb/metal3/job_capm3_v1a5_main_e2e_tests.yml similarity index 95% rename from jjb/metal3/job_capm3_v1a5_main_e2e_tests_centos.yml rename to jjb/metal3/job_capm3_v1a5_main_e2e_tests.yml index b2189baa..afa4dd3a 100644 --- a/jjb/metal3/job_capm3_v1a5_main_e2e_tests_centos.yml +++ b/jjb/metal3/job_capm3_v1a5_main_e2e_tests.yml @@ -25,9 +25,9 @@ # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - job-template: - id: capm3_v1a5_main_e2e_tests_centos - name: '{job_prefix}_main_v1a5_e2e_test_centos' - description: "CAPM3 v1alpha5 main e2e tests for {repo[org]}/{repo[name]} on CentOS." + id: capm3_v1a5_main_e2e_tests + name: '{job_prefix}_main_v1a5_e2e_test_{image_os}' + description: "CAPM3 v1alpha5 main e2e tests for {repo[org]}/{repo[name]} on {image_os}." project-type: pipeline defaults: global disabled: False @@ -55,7 +55,7 @@ description: 'Target branch of the PR' - string: name: IMAGE_OS - default: 'centos' + 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: CAPI_VERSION diff --git a/jjb/metal3/job_capm3_v1a5_main_e2e_tests_ubuntu.yml b/jjb/metal3/job_capm3_v1a5_main_e2e_tests_ubuntu.yml deleted file mode 100644 index 30d5763f..00000000 --- a/jjb/metal3/job_capm3_v1a5_main_e2e_tests_ubuntu.yml +++ /dev/null @@ -1,104 +0,0 @@ ---- -# -# ============LICENSE_START======================================================= -# Copyright (C) 2019 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) main e2e tests. -# This job can be triggered manually or periodically by the CI system. It creates a -# pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - -- job-template: - id: capm3_v1a5_main_e2e_tests_ubuntu - name: '{job_prefix}_main_v1a5_e2e_test_ubuntu' - description: "CAPM3 v1alpha5 main e2e tests for {repo[org]}/{repo[name]} on Ubuntu." - project-type: pipeline - defaults: global - disabled: False - concurrent: True - parameters: - - string: - name: PROJECT_REPO_ORG - default: '{repo[org]}' - description: 'Project github repo org name' - - string: - name: PROJECT_REPO_NAME - default: '{repo[name]}' - description: 'Project github repo name' - - string: - name: ghprbActualCommit - default: 'release-0.5' - description: 'CI Repo branch for triggering manual build' - - string: - name: ghprbAuthorRepoGitUrl - default: 'https://github.com/{repo[org]}/{repo[name]}.git' - description: 'CI Repo URL for triggering manual build' - - string: - name: ghprbTargetBranch - default: 'release-0.5' - description: 'Target branch of the PR' - - string: - name: IMAGE_OS - default: 'ubuntu' - description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos' - - string: - name: CAPI_VERSION - default: 'v1alpha4' - description: 'Cluster API version.' - - string: - name: CAPM3_VERSION - default: 'v1alpha5' - description: 'Cluster API provider Metal3 version.' - - string: - name: TARGET_NODE_MEMORY - default: 4096 - description: 'RAM size of the target host.' - - string: - name: NUM_NODES - default: 4 - description: 'Number of libvirt VMs.' - - string: - name: TESTS_FOR - default: "e2e_tests" - description: 'Tests using the e2e framework.' - - properties: - - build-discarder: - days-to-keep: 30 - num-to-keep: 300 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 - - triggers: - - timed: "H 20 * * *" - - 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: "{ci_github_pipeline}" - lightweight-checkout: False diff --git a/jjb/metal3/job_capm3_v1a5_main_integration_tests_centos.yml b/jjb/metal3/job_capm3_v1a5_main_integration_tests.yml similarity index 94% rename from jjb/metal3/job_capm3_v1a5_main_integration_tests_centos.yml rename to jjb/metal3/job_capm3_v1a5_main_integration_tests.yml index dddd8312..05c65ed0 100644 --- a/jjb/metal3/job_capm3_v1a5_main_integration_tests_centos.yml +++ b/jjb/metal3/job_capm3_v1a5_main_integration_tests.yml @@ -25,9 +25,9 @@ # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - job-template: - id: capm3_v1a5_main_integration_tests_centos - name: '{job_prefix}_main_v1a5_integration_test_centos' - description: "CAPM3 v1alpha5 main integration tests for {repo[org]}/{repo[name]} on CentOS." + id: capm3_v1a5_main_integration_tests + name: '{job_prefix}_main_v1a5_integration_test_{image_os}' + description: "CAPM3 v1alpha5 main integration tests for {repo[org]}/{repo[name]} on {image_os}." project-type: pipeline defaults: global disabled: False @@ -55,7 +55,7 @@ description: 'Target branch of the PR' - string: name: IMAGE_OS - default: 'centos' + 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: CAPI_VERSION diff --git a/jjb/metal3/job_capm3_v1a5_main_integration_tests_ubuntu.yml b/jjb/metal3/job_capm3_v1a5_main_integration_tests_ubuntu.yml deleted file mode 100644 index a22546a8..00000000 --- a/jjb/metal3/job_capm3_v1a5_main_integration_tests_ubuntu.yml +++ /dev/null @@ -1,96 +0,0 @@ ---- -# -# ============LICENSE_START======================================================= -# Copyright (C) 2019 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) main 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_v1a5_main_integration_tests_ubuntu - name: '{job_prefix}_main_v1a5_integration_test_ubuntu' - description: "CAPM3 v1alpha5 main integration tests for {repo[org]}/{repo[name]} on Ubuntu." - project-type: pipeline - defaults: global - disabled: False - concurrent: True - parameters: - - string: - name: PROJECT_REPO_ORG - default: '{repo[org]}' - description: 'Project github repo org name' - - string: - name: PROJECT_REPO_NAME - default: '{repo[name]}' - description: 'Project github repo name' - - string: - name: ghprbActualCommit - default: 'master' - description: 'CI Repo branch for triggering manual build' - - string: - name: ghprbAuthorRepoGitUrl - default: 'https://github.com/{repo[org]}/{repo[name]}.git' - description: 'CI Repo URL for triggering manual build' - - string: - name: ghprbTargetBranch - default: 'master' - description: 'Target branch of the PR' - - string: - name: IMAGE_OS - default: 'ubuntu' - description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos' - - string: - name: CAPI_VERSION - default: 'v1alpha4' - description: 'Cluster API version.' - - string: - name: CAPM3_VERSION - default: 'v1alpha5' - description: 'Cluster API provider Metal3 version.' - - string: - name: TARGET_NODE_MEMORY - default: 4096 - description: 'RAM size of the target host.' - - properties: - - build-discarder: - days-to-keep: 30 - num-to-keep: 300 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 - - triggers: - - timed: "45 4 * * *" - - 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: "{ci_github_pipeline}" - lightweight-checkout: False diff --git a/jjb/metal3/job_capm3_v1b1_e2e_tests_centos.yml b/jjb/metal3/job_capm3_v1b1_e2e_tests.yml similarity index 93% rename from jjb/metal3/job_capm3_v1b1_e2e_tests_centos.yml rename to jjb/metal3/job_capm3_v1b1_e2e_tests.yml index 46e4cf6c..76fad92e 100644 --- a/jjb/metal3/job_capm3_v1b1_e2e_tests_centos.yml +++ b/jjb/metal3/job_capm3_v1b1_e2e_tests.yml @@ -25,9 +25,9 @@ # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - job-template: - id: capm3_v1b1_e2e_tests_centos - name: '{job_prefix}_{name}_v1b1_e2e_test_centos' - description: "CAPM3 v1beta1 e2e tests for {repo[org]}/{repo[name]} on CentOS." + id: capm3_v1b1_e2e_tests + name: '{job_prefix}_{name}_v1b1_e2e_test_{image_os}' + description: "CAPM3 v1beta1 e2e tests for {repo[org]}/{repo[name]} on {image_os}." project-type: pipeline defaults: global disabled: False @@ -55,7 +55,7 @@ description: 'Target branch of the PR' - string: name: IMAGE_OS - default: 'centos' + 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: CAPI_VERSION @@ -90,7 +90,7 @@ org-list: "{ci_github_whitelist_org}" cron: 'H/5 * * * *' auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/test-v1b1-centos-e2e(\s(.|\n)*)?' + trigger-phrase: '((.|\n)*\s)?/test-v1b1-{image_os}-e2e(\s(.|\n)*)?' skip-build-phrase: '/skip-test' only-trigger-phrase: True github-hooks: True @@ -100,7 +100,7 @@ white-list-target-branches: - 'master' - 'main' - status-context: "test-v1b1-centos-e2e" + status-context: "test-v1b1-{image_os}-e2e" success-status: "Passed" failure-status: "Failed" error-status: "Error" diff --git a/jjb/metal3/job_capm3_v1b1_e2e_tests_ubuntu.yml b/jjb/metal3/job_capm3_v1b1_e2e_tests_ubuntu.yml deleted file mode 100644 index 9df2d449..00000000 --- a/jjb/metal3/job_capm3_v1b1_e2e_tests_ubuntu.yml +++ /dev/null @@ -1,121 +0,0 @@ ---- -# -# ============LICENSE_START======================================================= -# Copyright (C) 2021 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 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_v1b1_e2e_tests_ubuntu - name: '{job_prefix}_{name}_v1b1_e2e_test_ubuntu' - description: "CAPM3 v1beta1 e2e tests for {repo[org]}/{repo[name]} on Ubuntu." - project-type: pipeline - defaults: global - disabled: False - concurrent: True - parameters: - - string: - name: PROJECT_REPO_ORG - default: '{repo[org]}' - description: 'Project github repo org name' - - string: - name: PROJECT_REPO_NAME - default: '{repo[name]}' - description: 'Project github repo name' - - string: - name: ghprbActualCommit - default: 'master' - description: 'CI Repo branch for triggering manual build' - - string: - name: ghprbAuthorRepoGitUrl - default: 'https://github.com/{repo[org]}/{repo[name]}.git' - description: 'CI Repo URL for triggering manual build' - - string: - name: ghprbTargetBranch - default: 'master' - description: 'Target branch of the PR' - - string: - name: IMAGE_OS - default: 'ubuntu' - description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos' - - string: - name: CAPI_VERSION - default: 'v1beta1' - description: 'Cluster API version. Can be v1beta1.' - - string: - name: CAPM3_VERSION - default: 'v1beta1' - description: 'Cluster API provider Metal3 version. Can be v1beta1.' - - string: - name: TARGET_NODE_MEMORY - default: 4096 - description: 'RAM size of the target host.' - - string: - name: TESTS_FOR - default: "e2e_tests" - description: 'Tests using the e2e framework.' - - properties: - - build-discarder: - days-to-keep: 30 - num-to-keep: 300 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 - - github: - url: https://github.com/{repo[org]}/{repo[name]} - - triggers: - - github-pull-request: - admin-list: - - '{ci_github_admin_user}' - org-list: "{ci_github_whitelist_org}" - cron: 'H/5 * * * *' - auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/test-v1b1-e2e(\s(.|\n)*)?' - skip-build-phrase: '/skip-test' - only-trigger-phrase: True - github-hooks: True - permit-all: False - auto-close-on-fail: False - allow-whitelist-orgs-as-admins: True - white-list-target-branches: - - 'master' - - 'main' - status-context: "test-v1b1-e2e" - success-status: "Passed" - failure-status: "Failed" - error-status: "Error" - cancel-builds-on-update: True - 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: "{ci_github_pipeline}" - lightweight-checkout: False diff --git a/jjb/metal3/job_capm3_v1b1_integration_tests_centos.yml b/jjb/metal3/job_capm3_v1b1_integration_tests.yml similarity index 92% rename from jjb/metal3/job_capm3_v1b1_integration_tests_centos.yml rename to jjb/metal3/job_capm3_v1b1_integration_tests.yml index 3369f68a..26ef8aef 100644 --- a/jjb/metal3/job_capm3_v1b1_integration_tests_centos.yml +++ b/jjb/metal3/job_capm3_v1b1_integration_tests.yml @@ -25,9 +25,9 @@ # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - job-template: - id: capm3_v1b1_integration_tests_centos - name: '{job_prefix}_{name}_v1b1_integration_test_centos' - description: "CAPM3 v1beta1 integration tests for {repo[org]}/{repo[name]} on CentOS." + id: capm3_v1b1_integration_tests + name: '{job_prefix}_{name}_v1b1_integration_test_{image_os}' + description: "CAPM3 v1beta1 integration tests for {repo[org]}/{repo[name]} on {image_os}." project-type: pipeline defaults: global disabled: False @@ -55,7 +55,7 @@ description: 'Target branch of the PR' - string: name: IMAGE_OS - default: 'centos' + 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: CAPI_VERSION @@ -86,7 +86,7 @@ org-list: "{ci_github_whitelist_org}" cron: 'H/5 * * * *' auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/test-v1b1-centos-integration(\s(.|\n)*)?' + trigger-phrase: '((.|\n)*\s)?/test-v1b1-{image_os}-integration(\s(.|\n)*)?' skip-build-phrase: '/skip-test' only-trigger-phrase: True github-hooks: True @@ -96,7 +96,7 @@ white-list-target-branches: - 'master' - 'main' - status-context: "test-v1b1-centos-integration" + status-context: "test-v1b1-{image_os}-integration" success-status: "Passed" failure-status: "Failed" error-status: "Error" diff --git a/jjb/metal3/job_capm3_v1b1_integration_tests_ubuntu.yml b/jjb/metal3/job_capm3_v1b1_integration_tests_ubuntu.yml deleted file mode 100644 index b6f85687..00000000 --- a/jjb/metal3/job_capm3_v1b1_integration_tests_ubuntu.yml +++ /dev/null @@ -1,117 +0,0 @@ ---- -# -# ============LICENSE_START======================================================= -# Copyright (C) 2019 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) 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_v1b1_integration_tests_ubuntu - name: '{job_prefix}_{name}_v1b1_integration_test_ubuntu' - description: "CAPM3 v1beta1 integration tests for {repo[org]}/{repo[name]} on Ubuntu." - project-type: pipeline - defaults: global - disabled: False - concurrent: True - parameters: - - string: - name: PROJECT_REPO_ORG - default: '{repo[org]}' - description: 'Project github repo org name' - - string: - name: PROJECT_REPO_NAME - default: '{repo[name]}' - description: 'Project github repo name' - - string: - name: ghprbActualCommit - default: 'main' - description: 'CI Repo branch for triggering manual build' - - string: - name: ghprbAuthorRepoGitUrl - default: 'https://github.com/{repo[org]}/{repo[name]}.git' - description: 'CI Repo URL for triggering manual build' - - string: - name: ghprbTargetBranch - default: 'main' - description: 'Target branch of the PR' - - string: - name: IMAGE_OS - default: 'ubuntu' - description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos' - - string: - name: CAPI_VERSION - default: 'v1beta1' - description: 'Cluster API version.' - - string: - name: CAPM3_VERSION - default: 'v1beta1' - description: 'Cluster API provider Metal3 version.' - - string: - name: TARGET_NODE_MEMORY - default: 4096 - description: 'RAM size of the target host.' - - properties: - - build-discarder: - days-to-keep: 30 - num-to-keep: 300 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 - - github: - url: https://github.com/{repo[org]}/{repo[name]} - - triggers: - - github-pull-request: - admin-list: - - '{ci_github_admin_user}' - org-list: "{ci_github_whitelist_org}" - cron: 'H/5 * * * *' - auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/test-v1b1-integration(\s(.|\n)*)?' - skip-build-phrase: '/skip-test' - only-trigger-phrase: True - github-hooks: True - permit-all: False - auto-close-on-fail: False - allow-whitelist-orgs-as-admins: True - white-list-target-branches: - - 'master' - - 'main' - status-context: "test-v1b1-integration" - success-status: "Passed" - failure-status: "Failed" - error-status: "Error" - cancel-builds-on-update: True - 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: "{ci_github_pipeline}" - lightweight-checkout: False diff --git a/jjb/metal3/job_capm3_v1b1_main_e2e_tests_centos.yml b/jjb/metal3/job_capm3_v1b1_main_e2e_tests.yml similarity index 96% rename from jjb/metal3/job_capm3_v1b1_main_e2e_tests_centos.yml rename to jjb/metal3/job_capm3_v1b1_main_e2e_tests.yml index f053093a..d0b44a80 100644 --- a/jjb/metal3/job_capm3_v1b1_main_e2e_tests_centos.yml +++ b/jjb/metal3/job_capm3_v1b1_main_e2e_tests.yml @@ -25,9 +25,9 @@ # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - job-template: - id: capm3_v1b1_main_e2e_tests_centos - name: '{job_prefix}_main_v1b1_e2e_test_centos' - description: "CAPM3 v1beta1 e2e tests for {repo[org]}/{repo[name]} on CentOS." + id: capm3_v1b1_main_e2e_tests + name: '{job_prefix}_main_v1b1_e2e_test_{image_os}' + description: "CAPM3 v1beta1 e2e tests for {repo[org]}/{repo[name]} on {image_os}." project-type: pipeline defaults: global disabled: False @@ -55,7 +55,7 @@ description: 'Target branch of the PR' - string: name: IMAGE_OS - default: 'centos' + 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: CAPI_VERSION diff --git a/jjb/metal3/job_capm3_v1b1_main_e2e_tests_ubuntu.yml b/jjb/metal3/job_capm3_v1b1_main_e2e_tests_ubuntu.yml deleted file mode 100644 index 1b311b19..00000000 --- a/jjb/metal3/job_capm3_v1b1_main_e2e_tests_ubuntu.yml +++ /dev/null @@ -1,104 +0,0 @@ ---- -# -# ============LICENSE_START======================================================= -# Copyright (C) 2019 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 tests. -# This job can be triggered manually or periodically by the CI system. It creates a -# pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - -- job-template: - id: capm3_v1b1_main_e2e_tests_ubuntu - name: '{job_prefix}_main_v1b1_e2e_test_ubuntu' - description: "CAPM3 v1beta1 main e2e tests for {repo[org]}/{repo[name]} on Ubuntu." - project-type: pipeline - defaults: global - disabled: False - concurrent: True - parameters: - - string: - name: PROJECT_REPO_ORG - default: '{repo[org]}' - description: 'Project github repo org name' - - string: - name: PROJECT_REPO_NAME - default: '{repo[name]}' - description: 'Project github repo name' - - string: - name: ghprbActualCommit - default: 'main' - description: 'CI Repo branch for triggering manual build' - - string: - name: ghprbAuthorRepoGitUrl - default: 'https://github.com/{repo[org]}/{repo[name]}.git' - description: 'CI Repo URL for triggering manual build' - - string: - name: ghprbTargetBranch - default: 'main' - description: 'Target branch of the PR' - - string: - name: IMAGE_OS - default: 'ubuntu' - description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos' - - string: - name: CAPI_VERSION - default: 'v1beta1' - description: 'Cluster API version.' - - string: - name: CAPM3_VERSION - default: 'v1beta1' - description: 'Cluster API provider Metal3 version.' - - string: - name: TARGET_NODE_MEMORY - default: 4096 - description: 'RAM size of the target host.' - - string: - name: NUM_NODES - default: 4 - description: 'Number of libvirt VMs.' - - string: - name: TESTS_FOR - default: "e2e_tests" - description: 'Tests using the e2e framework.' - - properties: - - build-discarder: - days-to-keep: 30 - num-to-keep: 300 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 - - triggers: - - timed: "H 20 * * *" - - 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: "{ci_github_pipeline}" - lightweight-checkout: False diff --git a/jjb/metal3/job_capm3_v1b1_main_integration_tests_ubuntu.yml b/jjb/metal3/job_capm3_v1b1_main_integration_tests.yml similarity index 95% rename from jjb/metal3/job_capm3_v1b1_main_integration_tests_ubuntu.yml rename to jjb/metal3/job_capm3_v1b1_main_integration_tests.yml index 4e825f0b..e63a1698 100644 --- a/jjb/metal3/job_capm3_v1b1_main_integration_tests_ubuntu.yml +++ b/jjb/metal3/job_capm3_v1b1_main_integration_tests.yml @@ -25,9 +25,9 @@ # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - job-template: - id: capm3_v1b1_main_integration_tests_ubuntu - name: '{job_prefix}_main_v1b1_integration_test_ubuntu' - description: "CAPM3 v1beta1 integration tests for {repo[org]}/{repo[name]} on Ubuntu." + id: capm3_v1b1_main_integration_tests + name: '{job_prefix}_main_v1b1_integration_test_{image_os}' + description: "CAPM3 v1beta1 integration tests for {repo[org]}/{repo[name]} on {image_os}." project-type: pipeline defaults: global disabled: False @@ -55,7 +55,7 @@ description: 'Target branch of the PR' - string: name: IMAGE_OS - default: 'ubuntu' + 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: CAPI_VERSION diff --git a/jjb/metal3/job_capm3_v1b1_main_integration_tests_centos.yml b/jjb/metal3/job_capm3_v1b1_main_integration_tests_centos.yml deleted file mode 100644 index acdaa538..00000000 --- a/jjb/metal3/job_capm3_v1b1_main_integration_tests_centos.yml +++ /dev/null @@ -1,96 +0,0 @@ ---- -# -# ============LICENSE_START======================================================= -# Copyright (C) 2019 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) main 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_v1b1_main_integration_tests_centos - name: '{job_prefix}_main_v1b1_integration_test_centos' - description: "CAPM3 v1beta1 integration tests for {repo[org]}/{repo[name]} on CentOS." - project-type: pipeline - defaults: global - disabled: False - concurrent: True - parameters: - - string: - name: PROJECT_REPO_ORG - default: '{repo[org]}' - description: 'Project github repo org name' - - string: - name: PROJECT_REPO_NAME - default: '{repo[name]}' - description: 'Project github repo name' - - string: - name: ghprbActualCommit - default: 'master' - description: 'CI Repo branch for triggering manual build' - - string: - name: ghprbAuthorRepoGitUrl - default: 'https://github.com/{repo[org]}/{repo[name]}.git' - description: 'CI Repo URL for triggering manual build' - - string: - name: ghprbTargetBranch - default: 'master' - description: 'Target branch of the PR' - - string: - name: IMAGE_OS - default: 'centos' - description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos' - - string: - name: CAPI_VERSION - default: 'v1beta1' - description: 'Cluster API version.' - - string: - name: CAPM3_VERSION - default: 'v1beta1' - description: 'Cluster API provider Metal3 version.' - - string: - name: TARGET_NODE_MEMORY - default: 4096 - description: 'RAM size of the target host.' - - properties: - - build-discarder: - days-to-keep: 30 - num-to-keep: 300 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 - - triggers: - - timed: "H 4 * * *" - - 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: "{ci_github_pipeline}" - lightweight-checkout: False diff --git a/jjb/metal3/job_feature_tests_centos.yml b/jjb/metal3/job_feature_tests.yml similarity index 92% rename from jjb/metal3/job_feature_tests_centos.yml rename to jjb/metal3/job_feature_tests.yml index d7d8989a..a51f5f51 100644 --- a/jjb/metal3/job_feature_tests_centos.yml +++ b/jjb/metal3/job_feature_tests.yml @@ -25,9 +25,9 @@ # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - job-template: - id: feature_tests_centos - name: '{job_prefix}_{name}_feature_tests_centos' - description: "Inspection, remediation, pivoting, node reuse and repivoting feature tests on Centos." + id: feature_tests + name: '{job_prefix}_{name}_feature_tests_{image_os}' + description: "Inspection, remediation, pivoting, node reuse and repivoting feature tests on {image_os}." project-type: pipeline defaults: global disabled: False @@ -55,7 +55,7 @@ description: 'Target branch of the PR' - string: name: IMAGE_OS - default: 'centos' + 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: CAPI_VERSION @@ -75,7 +75,7 @@ description: 'Number of libvirt VMs.' - string: name: TESTS_FOR - default: "feature_tests_centos" + default: "feature_tests_{image_os}" description: 'Tests for pivoting and remediation.' properties: @@ -94,7 +94,7 @@ org-list: "{ci_github_whitelist_org}" cron: 'H/5 * * * *' auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/test-features-centos(\s(.|\n)*)?' + trigger-phrase: '((.|\n)*\s)?/test-features-{image_os}(\s(.|\n)*)?' skip-build-phrase: '/skip-test' only-trigger-phrase: True github-hooks: True @@ -106,7 +106,7 @@ - 'main' - 'release-0.5' - 'release-0.1' - status-context: "test-features-centos" + status-context: "test-features-{image_os}" success-status: "Passed" failure-status: "Failed" error-status: "Error" diff --git a/jjb/metal3/job_feature_tests_ubuntu.yml b/jjb/metal3/job_feature_tests_ubuntu.yml deleted file mode 100644 index 23a55872..00000000 --- a/jjb/metal3/job_feature_tests_ubuntu.yml +++ /dev/null @@ -1,127 +0,0 @@ ---- -# -# ============LICENSE_START======================================================= -# Copyright (C) 2019 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) feature 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: feature_tests_ubuntu - name: '{job_prefix}_{name}_feature_tests_ubuntu' - description: "Inspection, remediation, pivoting, node reuse and repivoting feature tests on Ubuntu." - project-type: pipeline - defaults: global - disabled: False - concurrent: True - parameters: - - string: - name: PROJECT_REPO_ORG - default: '{repo[org]}' - description: 'Project github repo org name' - - string: - name: PROJECT_REPO_NAME - default: '{repo[name]}' - description: 'Project github repo name' - - string: - name: ghprbActualCommit - default: 'master' - description: 'CI Repo branch for triggering manual build' - - string: - name: ghprbAuthorRepoGitUrl - default: 'https://github.com/{repo[org]}/{repo[name]}.git' - description: 'CI Repo URL for triggering manual build' - - string: - name: ghprbTargetBranch - default: 'master' - description: 'Target branch of the PR' - - string: - name: IMAGE_OS - default: 'ubuntu' - description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos' - - string: - name: CAPI_VERSION - default: 'v1beta1' - description: 'Cluster API version.' - - string: - name: CAPM3_VERSION - default: 'v1beta1' - description: 'Cluster API provider Metal3 version.' - - string: - name: TARGET_NODE_MEMORY - default: 4096 - description: 'RAM size of the target host.' - - string: - name: NUM_NODES - default: 4 - description: 'Number of libvirt VMs.' - - string: - name: TESTS_FOR - default: "feature_tests" - description: 'Tests for pivoting and remediation.' - - properties: - - build-discarder: - days-to-keep: 30 - num-to-keep: 300 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 - - github: - url: https://github.com/{repo[org]}/{repo[name]} - - triggers: - - github-pull-request: - admin-list: - - '{ci_github_admin_user}' - org-list: "{ci_github_whitelist_org}" - cron: 'H/5 * * * *' - auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/test-features(\s(.|\n)*)?' - skip-build-phrase: '/skip-test' - only-trigger-phrase: True - github-hooks: True - permit-all: False - auto-close-on-fail: False - allow-whitelist-orgs-as-admins: True - white-list-target-branches: - - 'master' - - 'main' - - 'release-0.5' - - 'release-0.1' - status-context: "test-features" - success-status: "Passed" - failure-status: "Failed" - error-status: "Error" - cancel-builds-on-update: True - 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: "{ci_github_pipeline}" - lightweight-checkout: False diff --git a/jjb/metal3/job_keep_integration_vm_v1a5_centos.yml b/jjb/metal3/job_keep_integration_vm_v1a5.yml similarity index 92% rename from jjb/metal3/job_keep_integration_vm_v1a5_centos.yml rename to jjb/metal3/job_keep_integration_vm_v1a5.yml index 2c4914d0..2405de73 100644 --- a/jjb/metal3/job_keep_integration_vm_v1a5_centos.yml +++ b/jjb/metal3/job_keep_integration_vm_v1a5.yml @@ -26,9 +26,9 @@ # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - job-template: - id: keep_v1a5_test_centos_alive - name: '{job_prefix}_{name}_keep_v1a5_test_centos_alive' - description: "CAPM3 v1alpha5 integration tests for keeping the vm for {repo[org]}/{repo[name]} on CentOS." + id: keep_v1a5_test_alive + name: '{job_prefix}_{name}_keep_v1a5_test_{image_os}_alive' + description: "CAPM3 v1alpha5 integration tests for keeping the vm for {repo[org]}/{repo[name]} on {image_os}." project-type: pipeline defaults: global disabled: False @@ -56,7 +56,7 @@ description: 'Target branch of the PR' - string: name: IMAGE_OS - default: 'centos' + 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: CAPI_VERSION @@ -91,7 +91,7 @@ org-list: "{ci_github_whitelist_org}" cron: 'H/5 * * * *' auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/keep-test-v1a5-centos-integration(\s(.|\n)*)?' + trigger-phrase: '((.|\n)*\s)?/keep-test-v1a5-{image_os}-integration(\s(.|\n)*)?' skip-build-phrase: '/skip-test' only-trigger-phrase: True github-hooks: True @@ -103,7 +103,7 @@ - 'main' - 'release-0.5' - 'release-0.1' - status-context: "keep-test-v1a5-centos-integration" + status-context: "keep-test-v1a5-{image_os}-integration" success-status: "Passed" failure-status: "Failed" error-status: "Error" diff --git a/jjb/metal3/job_keep_integration_vm_v1a5_ubuntu.yml b/jjb/metal3/job_keep_integration_vm_v1a5_ubuntu.yml deleted file mode 100644 index ff578fc3..00000000 --- a/jjb/metal3/job_keep_integration_vm_v1a5_ubuntu.yml +++ /dev/null @@ -1,124 +0,0 @@ ---- -# -# ============LICENSE_START======================================================= -# Copyright (C) 2019 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) -# keeping integration test vm. -# 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: keep_v1a5_test_ubuntu_alive - name: '{job_prefix}_{name}_keep_v1a5_test_ubuntu_alive' - description: "CAPM3 v1alpha5 integration tests for keeping the vm for {repo[org]}/{repo[name]} on Ubuntu." - project-type: pipeline - defaults: global - disabled: False - concurrent: True - parameters: - - string: - name: PROJECT_REPO_ORG - default: '{repo[org]}' - description: 'Project github repo org name' - - string: - name: PROJECT_REPO_NAME - default: '{repo[name]}' - description: 'Project github repo name' - - string: - name: ghprbActualCommit - default: 'master' - description: 'CI Repo branch for triggering manual build' - - string: - name: ghprbAuthorRepoGitUrl - default: 'https://github.com/{repo[org]}/{repo[name]}.git' - description: 'CI Repo URL for triggering manual build' - - string: - name: ghprbTargetBranch - default: 'master' - description: 'Target branch of the PR' - - string: - name: IMAGE_OS - default: 'ubuntu' - description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos' - - string: - name: CAPI_VERSION - default: 'v1alpha4' - description: 'Cluster API version.' - - string: - name: CAPM3_VERSION - default: 'v1alpha5' - description: 'Cluster API provider Metal3 version.' - - string: - name: TARGET_NODE_MEMORY - default: 4096 - description: 'RAM size of the target host.' - - string: - name: SKIP_DELETION - default: 'true' - description: 'Whether tester VM should be deleted or not by the end of the test' - - properties: - - build-discarder: - days-to-keep: 30 - num-to-keep: 300 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 - - github: - url: https://github.com/{repo[org]}/{repo[name]} - - triggers: - - github-pull-request: - admin-list: - - '{ci_github_admin_user}' - org-list: "{ci_github_whitelist_org}" - cron: 'H/5 * * * *' - auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/keep-test-v1a5-integration(\s(.|\n)*)?' - skip-build-phrase: '/skip-test' - only-trigger-phrase: True - github-hooks: True - permit-all: False - auto-close-on-fail: False - allow-whitelist-orgs-as-admins: True - white-list-target-branches: - - 'master' - - 'main' - - 'release-0.5' - - 'release-0.1' - status-context: "keep-test-v1a5-integration" - success-status: "Passed" - failure-status: "Failed" - error-status: "Error" - cancel-builds-on-update: True - 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: "{ci_github_pipeline}" - lightweight-checkout: False diff --git a/jjb/metal3/job_keep_integration_vm_v1b1_centos.yml b/jjb/metal3/job_keep_integration_vm_v1b1.yml similarity index 92% rename from jjb/metal3/job_keep_integration_vm_v1b1_centos.yml rename to jjb/metal3/job_keep_integration_vm_v1b1.yml index a2ad7ec7..791dbfc4 100644 --- a/jjb/metal3/job_keep_integration_vm_v1b1_centos.yml +++ b/jjb/metal3/job_keep_integration_vm_v1b1.yml @@ -26,9 +26,9 @@ # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - job-template: - id: keep_v1b1_test_centos_alive - name: '{job_prefix}_{name}_keep_v1b1_test_centos_alive' - description: "CAPM3 v1beta1 integration tests for keeping the vm for {repo[org]}/{repo[name]} on CentOS." + id: keep_v1b1_test_alive + name: '{job_prefix}_{name}_keep_v1b1_test_{image_os}_alive' + description: "CAPM3 v1beta1 integration tests for keeping the vm for {repo[org]}/{repo[name]} on {image_os}." project-type: pipeline defaults: global disabled: False @@ -56,7 +56,7 @@ description: 'Target branch of the PR' - string: name: IMAGE_OS - default: 'centos' + 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: CAPI_VERSION @@ -91,7 +91,7 @@ org-list: "{ci_github_whitelist_org}" cron: 'H/5 * * * *' auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/keep-test-v1b1-centos-integration(\s(.|\n)*)?' + trigger-phrase: '((.|\n)*\s)?/keep-test-v1b1-{image_os}-integration(\s(.|\n)*)?' skip-build-phrase: '/skip-test' only-trigger-phrase: True github-hooks: True @@ -101,7 +101,7 @@ white-list-target-branches: - 'master' - 'main' - status-context: "keep-test-v1b1-centos-integration" + status-context: "keep-test-v1b1-{image_os}-integration" success-status: "Passed" failure-status: "Failed" error-status: "Error" diff --git a/jjb/metal3/job_keep_integration_vm_v1b1_ubuntu.yml b/jjb/metal3/job_keep_integration_vm_v1b1_ubuntu.yml deleted file mode 100644 index 14eeff05..00000000 --- a/jjb/metal3/job_keep_integration_vm_v1b1_ubuntu.yml +++ /dev/null @@ -1,122 +0,0 @@ ---- -# -# ============LICENSE_START======================================================= -# Copyright (C) 2019 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) -# keeping integration test vm. -# 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: keep_v1b1_test_ubuntu_alive - name: '{job_prefix}_{name}_keep_v1b1_test_ubuntu_alive' - description: "CAPM3 v1beta1 integration tests for keeping the vm for {repo[org]}/{repo[name]} on Ubuntu." - project-type: pipeline - defaults: global - disabled: False - concurrent: True - parameters: - - string: - name: PROJECT_REPO_ORG - default: '{repo[org]}' - description: 'Project github repo org name' - - string: - name: PROJECT_REPO_NAME - default: '{repo[name]}' - description: 'Project github repo name' - - string: - name: ghprbActualCommit - default: 'main' - description: 'CI Repo branch for triggering manual build' - - string: - name: ghprbAuthorRepoGitUrl - default: 'https://github.com/{repo[org]}/{repo[name]}.git' - description: 'CI Repo URL for triggering manual build' - - string: - name: ghprbTargetBranch - default: 'main' - description: 'Target branch of the PR' - - string: - name: IMAGE_OS - default: 'ubuntu' - description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos' - - string: - name: CAPI_VERSION - default: 'v1beta1' - description: 'Cluster API version.' - - string: - name: CAPM3_VERSION - default: 'v1beta1' - description: 'Cluster API provider Metal3 version.' - - string: - name: TARGET_NODE_MEMORY - default: 4096 - description: 'RAM size of the target host.' - - string: - name: SKIP_DELETION - default: 'true' - description: 'Whether tester VM should be deleted or not by the end of the test' - - properties: - - build-discarder: - days-to-keep: 30 - num-to-keep: 300 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 - - github: - url: https://github.com/{repo[org]}/{repo[name]} - - triggers: - - github-pull-request: - admin-list: - - '{ci_github_admin_user}' - org-list: "{ci_github_whitelist_org}" - cron: 'H/5 * * * *' - auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/keep-test-v1b1-integration(\s(.|\n)*)?' - skip-build-phrase: '/skip-test' - only-trigger-phrase: True - github-hooks: True - permit-all: False - auto-close-on-fail: False - allow-whitelist-orgs-as-admins: True - white-list-target-branches: - - 'master' - - 'main' - status-context: "keep-test-v1b1-integration" - success-status: "Passed" - failure-status: "Failed" - error-status: "Error" - cancel-builds-on-update: True - 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: "{ci_github_pipeline}" - lightweight-checkout: False diff --git a/jjb/metal3/job_main_feature_tests_centos.yml b/jjb/metal3/job_main_feature_tests.yml similarity index 94% rename from jjb/metal3/job_main_feature_tests_centos.yml rename to jjb/metal3/job_main_feature_tests.yml index f4a5b61b..bedd5094 100644 --- a/jjb/metal3/job_main_feature_tests_centos.yml +++ b/jjb/metal3/job_main_feature_tests.yml @@ -26,9 +26,9 @@ # pipeline job. The pipeline scripts are maintained in Metal3 CI project infra repository. - job-template: - id: main_feature_tests_centos - name: '{job_prefix}_main_feature_tests_centos' - description: "Inspection, remediation, pivoting, node reuse and repivoting main feature tests on Centos." + id: main_feature_tests + name: '{job_prefix}_main_feature_tests_{image_os}' + description: "Inspection, remediation, pivoting, node reuse and repivoting main feature tests on {image_os}." project-type: pipeline defaults: global disabled: False @@ -56,7 +56,7 @@ description: 'Target branch of the PR' - string: name: IMAGE_OS - default: 'centos' + 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: CAPI_VERSION @@ -76,7 +76,7 @@ description: 'Number of libvirt VMs.' - string: name: TESTS_FOR - default: "feature_tests_centos" + default: "feature_tests_{image_os}" description: 'Tests for pivoting and remediation.' properties: diff --git a/jjb/metal3/job_main_feature_tests_ubuntu.yml b/jjb/metal3/job_main_feature_tests_ubuntu.yml deleted file mode 100644 index 7e6029e7..00000000 --- a/jjb/metal3/job_main_feature_tests_ubuntu.yml +++ /dev/null @@ -1,105 +0,0 @@ ---- -# -# ============LICENSE_START======================================================= -# Copyright (C) 2019 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) -# main feature 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: main_feature_tests_ubuntu - name: '{job_prefix}_main_feature_tests_ubuntu' - description: "Inspection, remediation, pivoting, node reuse and repivoting main feature tests on Ubuntu." - project-type: pipeline - defaults: global - disabled: False - concurrent: True - parameters: - - string: - name: PROJECT_REPO_ORG - default: '{repo[org]}' - description: 'Project github repo org name' - - string: - name: PROJECT_REPO_NAME - default: '{repo[name]}' - description: 'Project github repo name' - - string: - name: ghprbActualCommit - default: 'master' - description: 'CI Repo branch for triggering manual build' - - string: - name: ghprbAuthorRepoGitUrl - default: 'https://github.com/{repo[org]}/{repo[name]}.git' - description: 'CI Repo URL for triggering manual build' - - string: - name: ghprbTargetBranch - default: 'master' - description: 'Target branch of the PR' - - string: - name: IMAGE_OS - default: 'ubuntu' - description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos' - - string: - name: CAPI_VERSION - default: 'v1beta1' - description: 'Cluster API version.' - - string: - name: CAPM3_VERSION - default: 'v1beta1' - description: 'Cluster API provider Metal3 version.' - - string: - name: TARGET_NODE_MEMORY - default: 4096 - description: 'RAM size of the target host.' - - string: - name: NUM_NODES - default: 4 - description: 'Number of libvirt VMs.' - - string: - name: TESTS_FOR - default: "feature_tests" - description: 'Tests for pivoting and remediation.' - - properties: - - build-discarder: - days-to-keep: 30 - num-to-keep: 300 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 - - triggers: - - timed: "H 17 * * *" - - 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: "{ci_github_pipeline}" - lightweight-checkout: False diff --git a/jjb/metal3/job_metal3_dev_tools_integration_test_centos.yml b/jjb/metal3/job_metal3_dev_tools_integration_test.yml similarity index 93% rename from jjb/metal3/job_metal3_dev_tools_integration_test_centos.yml rename to jjb/metal3/job_metal3_dev_tools_integration_test.yml index 84db9cc2..9e19186d 100644 --- a/jjb/metal3/job_metal3_dev_tools_integration_test_centos.yml +++ b/jjb/metal3/job_metal3_dev_tools_integration_test.yml @@ -26,9 +26,9 @@ # pipeline job. The pipeline scripts are maintained in Nordix/metal3-dev-tools repository. - job-template: - id: metal3_dev_tools_integration_test_centos - name: 'metal3_dev_tools_integration_test_centos' - description: "CAPM3 v1beta1 metal3-dev-tools integration tests for {repo[org]}/{repo[name]} on CentOS." + id: metal3_dev_tools_integration_test + name: 'metal3_dev_tools_integration_test_{image_os}' + description: "CAPM3 v1beta1 metal3-dev-tools integration tests for {repo[org]}/{repo[name]} on {image_os}." project-type: pipeline defaults: global disabled: False @@ -56,7 +56,7 @@ description: 'Target branch of the PR' - string: name: IMAGE_OS - default: 'centos' + 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: CAPI_VERSION @@ -91,7 +91,7 @@ org-list: "{ci_github_whitelist_org}" cron: 'H/5 * * * *' auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/test-integration-metal3-dev-tools-centos(\s(.|\n)*)?' + trigger-phrase: '((.|\n)*\s)?/test-integration-metal3-dev-tools-{image_os}(\s(.|\n)*)?' skip-build-phrase: '/skip-test' only-trigger-phrase: True github-hooks: True @@ -101,7 +101,7 @@ white-list-target-branches: - 'master' - 'main' - status-context: "test-integration-metal3-dev-tools-centos" + status-context: "test-integration-metal3-dev-tools-{image_os}" success-status: "Passed" failure-status: "Failed" error-status: "Error" diff --git a/jjb/metal3/job_metal3_dev_tools_integration_test_ubuntu.yml b/jjb/metal3/job_metal3_dev_tools_integration_test_ubuntu.yml deleted file mode 100644 index f3c31c71..00000000 --- a/jjb/metal3/job_metal3_dev_tools_integration_test_ubuntu.yml +++ /dev/null @@ -1,121 +0,0 @@ ---- -# -# ============LICENSE_START======================================================= -# Copyright (C) 2019 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) -# dev tools 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 Nordix/metal3-dev-tools repository. - -- job-template: - id: metal3_dev_tools_integration_test_ubuntu - name: 'metal3_dev_tools_integration_test_ubuntu' - description: "CAPM3 v1beta1 metal3-dev-tools integration tests for {repo[org]}/{repo[name]} on Ubuntu." - project-type: pipeline - defaults: global - disabled: False - concurrent: True - parameters: - - string: - name: PROJECT_REPO_ORG - default: '{repo[org]}' - description: 'Project github repo org name' - - string: - name: PROJECT_REPO_NAME - default: '{repo[name]}' - description: 'Project github repo name' - - string: - name: ghprbActualCommit - default: 'master' - description: 'CI Repo branch for triggering manual build' - - string: - name: ghprbAuthorRepoGitUrl - default: 'https://github.com/{repo[org]}/{repo[name]}.git' - description: 'CI Repo URL for triggering manual build' - - string: - name: ghprbTargetBranch - default: 'master' - description: 'Target branch of the PR' - - string: - name: IMAGE_OS - default: 'ubuntu' - description: 'Distribution to use for the target host as well as source and target cluster. Can be ubuntu or centos' - - string: - name: CAPI_VERSION - default: 'v1beta1' - description: 'Cluster API version. Can be v1alpha4.' - - string: - name: CAPM3_VERSION - default: 'v1beta1' - description: 'Cluster API provider Metal3 version. Can be v1alpha5 or v1alpha4.' - - string: - name: TARGET_NODE_MEMORY - default: 4096 - description: 'RAM size of the target host.' - - string: - name: KUBERNETES_VERSION - default: "v1.23.3" - description: 'Kubernetes version' - - properties: - - build-discarder: - days-to-keep: 30 - num-to-keep: 300 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 - - github: - url: https://github.com/{repo[org]}/{repo[name]} - - triggers: - - github-pull-request: - admin-list: - - '{ci_github_admin_user}' - org-list: "{ci_github_whitelist_org}" - cron: 'H/5 * * * *' - auth-id: "{ci_ghprb_auth_id}" - trigger-phrase: '((.|\n)*\s)?/test-integration-metal3-dev-tools-ubuntu(\s(.|\n)*)?' - skip-build-phrase: '/skip-test' - only-trigger-phrase: True - github-hooks: True - permit-all: False - auto-close-on-fail: False - allow-whitelist-orgs-as-admins: True - white-list-target-branches: - - 'master' - status-context: "test-integration-metal3-dev-tools-ubuntu" - success-status: "Passed" - failure-status: "Failed" - error-status: "Error" - cancel-builds-on-update: True - pipeline-scm: - scm: - - git: - url: "{ci_github_repo}" - credentials-id: "{ci_github_jenkins_credentials_id}" - branches: - - '{branch|master}' - name: 'origin' - refspec: '+refs/heads/*:refs/remotes/origin/*' - wipe-workspace: True - honor-refspec: True - shallow-clone: False - script-path: 'ci/jobs/metal3_dev_tools_integration_tests.pipeline' - lightweight-checkout: False diff --git a/jjb/metal3/projects.yml b/jjb/metal3/projects.yml index 070c3996..db6a6912 100644 --- a/jjb/metal3/projects.yml +++ b/jjb/metal3/projects.yml @@ -39,8 +39,10 @@ - openstack_node_image_building - main_openstack_ipa_and_ironic_image_building - metal3_ipa_and_ironic_image_building_test - - metal3_dev_tools_integration_test_centos - - metal3_dev_tools_integration_test_ubuntu + - metal3_dev_tools_integration_test: + image_os: + - ubuntu + - centos - artifactory_cleanup repo: org: "Nordix" @@ -61,18 +63,28 @@ image_os: - ubuntu - centos - - capm3_v1a5_integration_tests_centos - - capm3_v1a5_integration_tests_ubuntu - - capm3_v1b1_integration_tests_centos - - capm3_v1b1_integration_tests_ubuntu - - feature_tests_ubuntu - - feature_tests_centos + - capm3_v1a5_integration_tests: + image_os: + - ubuntu + - centos + - capm3_v1b1_integration_tests: + image_os: + - ubuntu + - centos + - feature_tests: + image_os: + - ubuntu + - centos - feature_tests_upgrade_ubuntu - bml_integration_tests_centos - - keep_v1b1_test_ubuntu_alive - - keep_v1b1_test_centos_alive - - keep_v1a5_test_ubuntu_alive - - keep_v1a5_test_centos_alive + - keep_v1b1_test_alive: + image_os: + - ubuntu + - centos + - keep_v1a5_test_alive: + image_os: + - ubuntu + - centos - project: name: 'project_infra_cleanup' @@ -93,15 +105,24 @@ image_os: - ubuntu - centos - - capm3_v1a5_integration_tests_centos - - capm3_v1a5_integration_tests_ubuntu - - capm3_v1b1_integration_tests_centos - - capm3_v1b1_integration_tests_ubuntu - - keep_v1b1_test_ubuntu_alive - - keep_v1b1_test_centos_alive - - keep_v1a5_test_ubuntu_alive - - keep_v1a5_test_centos_alive - - feature_tests_ubuntu + - capm3_v1a5_integration_tests: + image_os: + - ubuntu + - centos + - capm3_v1b1_integration_tests: + image_os: + - ubuntu + - centos + - keep_v1b1_test_alive: + image_os: + - ubuntu + - centos + - keep_v1a5_test_alive: + image_os: + - ubuntu + - centos + - feature_tests: + image_os: ubuntu - project: name: "ipam" @@ -113,48 +134,73 @@ image_os: - ubuntu - centos - - capm3_v1a5_integration_tests_centos - - capm3_v1a5_integration_tests_ubuntu - - capm3_v1b1_integration_tests_centos - - capm3_v1b1_integration_tests_ubuntu - - keep_v1b1_test_ubuntu_alive - - keep_v1b1_test_centos_alive - - keep_v1a5_test_ubuntu_alive - - keep_v1a5_test_centos_alive + - capm3_v1a5_integration_tests: + image_os: + - ubuntu + - centos + - capm3_v1b1_integration_tests: + image_os: + - ubuntu + - centos + - keep_v1b1_test_alive: + image_os: + - ubuntu + - centos + - keep_v1a5_test_alive: + image_os: + - ubuntu + - centos - project: name: "metal3_dev_env" + repo: + org: "metal3-io" + name: "metal3-dev-env" jobs: - capm3_v1a4_integration_tests: image_os: - ubuntu - centos - - capm3_v1a4_main_integration_tests_centos - - capm3_v1a4_main_integration_tests_ubuntu - - capm3_v1a5_integration_tests_centos - - capm3_v1a5_integration_tests_ubuntu - - capm3_v1a5_main_integration_tests_centos - - capm3_v1a5_main_integration_tests_ubuntu - - capm3_v1b1_integration_tests_centos - - capm3_v1b1_integration_tests_ubuntu - - capm3_v1b1_main_integration_tests_centos - - capm3_v1b1_main_integration_tests_ubuntu - - feature_tests_ubuntu - - feature_tests_centos + - capm3_v1a4_main_integration_tests: + image_os: + - ubuntu + - centos + - capm3_v1a5_integration_tests: + image_os: + - ubuntu + - centos + - capm3_v1a5_main_integration_tests: + image_os: + - ubuntu + - centos + - capm3_v1b1_integration_tests: + image_os: + - ubuntu + - centos + - capm3_v1b1_main_integration_tests: + image_os: + - ubuntu + - centos + - feature_tests: + image_os: + - ubuntu + - centos - feature_tests_upgrade_ubuntu - - main_feature_tests_ubuntu - - main_feature_tests_centos + - main_feature_tests: + image_os: + - ubuntu + - centos - main_feature_tests_upgrade_ubuntu - bml_integration_tests_centos - bml_main_integration_tests_centos - - keep_v1b1_test_ubuntu_alive - - keep_v1b1_test_centos_alive - - keep_v1a5_test_ubuntu_alive - - keep_v1a5_test_centos_alive - - repo: - org: "metal3-io" - name: "metal3-dev-env" + - keep_v1b1_test_alive: + image_os: + - ubuntu + - centos + - keep_v1a5_test_alive: + image_os: + - ubuntu + - centos - project: name: "capm3" @@ -166,23 +212,39 @@ image_os: - ubuntu - centos - - capm3_v1a5_integration_tests_centos - - capm3_v1a5_integration_tests_ubuntu - - capm3_v1a5_e2e_tests_ubuntu - - capm3_v1a5_e2e_tests_centos - - capm3_v1a5_main_e2e_tests_ubuntu - - capm3_v1a5_main_e2e_tests_centos - - capm3_v1b1_integration_tests_centos - - capm3_v1b1_integration_tests_ubuntu - - capm3_v1b1_e2e_tests_centos - - capm3_v1b1_e2e_tests_ubuntu + - capm3_v1a5_integration_tests: + image_os: + - ubuntu + - centos + - capm3_v1a5_e2e_tests: + image_os: + - ubuntu + - centos + - capm3_v1a5_main_e2e_tests: + image_os: + - ubuntu + - centos + - capm3_v1b1_integration_tests: + image_os: + - ubuntu + - centos + - capm3_v1b1_e2e_tests: + image_os: + - ubuntu + - centos - capm3_v1b1_e2e_upgrade_tests_ubuntu - - capm3_v1b1_main_e2e_tests_centos - - capm3_v1b1_main_e2e_tests_ubuntu - - keep_v1b1_test_ubuntu_alive - - keep_v1b1_test_centos_alive - - keep_v1a5_test_ubuntu_alive - - keep_v1a5_test_centos_alive + - capm3_v1b1_main_e2e_tests: + image_os: + - ubuntu + - centos + - keep_v1b1_test_alive: + image_os: + - ubuntu + - centos + - keep_v1a5_test_alive: + image_os: + - ubuntu + - centos - project: @@ -195,14 +257,22 @@ image_os: - ubuntu - centos - - capm3_v1a5_integration_tests_centos - - capm3_v1a5_integration_tests_ubuntu - - capm3_v1b1_integration_tests_centos - - capm3_v1b1_integration_tests_ubuntu - - keep_v1b1_test_ubuntu_alive - - keep_v1b1_test_centos_alive - - keep_v1a5_test_ubuntu_alive - - keep_v1a5_test_centos_alive + - capm3_v1a5_integration_tests: + image_os: + - ubuntu + - centos + - capm3_v1b1_integration_tests: + image_os: + - ubuntu + - centos + - keep_v1b1_test_alive: + image_os: + - ubuntu + - centos + - keep_v1a5_test_alive: + image_os: + - ubuntu + - centos - project: name: "ironic_ipa_downloader" @@ -212,6 +282,9 @@ jobs: - capm3_v1a4_integration_tests: image_os: ubuntu - - capm3_v1a5_integration_tests_ubuntu - - capm3_v1b1_integration_tests_centos - - capm3_v1b1_integration_tests_ubuntu + - capm3_v1a5_integration_tests: + image_os: ubuntu + - capm3_v1b1_integration_tests: + image_os: + - ubuntu + - centos -- 2.25.1