From: Lennart Jern Date: Mon, 14 Feb 2022 10:24:16 +0000 (+0200) Subject: metal3: parameterize image_os X-Git-Url: https://gerrit.nordix.org/gitweb?a=commitdiff_plain;h=2e1382e68c55bbb656a92c3f642e63c709c98e7b;p=infra%2Fcicd.git 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 --- 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 256526659..2d59a733f 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 32b1452bc..000000000 --- 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 f9908ee4b..57ad7502b 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 01611afc0..000000000 --- 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 4ae113ffd..7c64d113f 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 0ba8ea8ab..000000000 --- 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 b2189baa7..afa4dd3a5 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 30d5763f3..000000000 --- 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 dddd83125..05c65ed0d 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 a22546a8f..000000000 --- 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 46e4cf6c9..76fad92e2 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 9df2d449c..000000000 --- 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 3369f68a4..26ef8aef0 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 b6f85687f..000000000 --- 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 f053093a2..d0b44a80a 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 1b311b198..000000000 --- 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 4e825f0b9..e63a1698c 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 acdaa5387..000000000 --- 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 d7d8989af..a51f5f51e 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 23a558723..000000000 --- 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 2c4914d02..2405de73b 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 ff578fc3f..000000000 --- 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 a2ad7ec73..791dbfc40 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 14eeff05e..000000000 --- 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 f4a5b61b2..bedd50940 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 7e6029e70..000000000 --- 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 84db9cc2c..9e19186de 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 f3c31c711..000000000 --- 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 070c39969..db6a69123 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