From: Jaakko Kuuskoski Date: Wed, 2 Sep 2020 11:10:18 +0000 (+0300) Subject: CI: jenkins jobs for combined upgrade tests X-Git-Url: https://gerrit.nordix.org/gitweb?a=commitdiff_plain;h=75049983152ee45f9b50333783358e05c0db9365;p=infra%2Fcicd.git CI: jenkins jobs for combined upgrade tests 1cp_1w_bootDiskImageANDK8sControllers_clusterLevel_upgrade tests a combination of disk image, control plane controllers and ironic images. The test setup runs ironic in pods and thus minikube and centos is used. Change-Id: Ic05665c188dd2698c4e7aaed1116e26e242f5a6d --- diff --git a/jjb/airship/job_feature_tests_upgrade_centos.yml b/jjb/airship/job_feature_tests_upgrade_centos.yml new file mode 100644 index 00000000..22b1225c --- /dev/null +++ b/jjb/airship/job_feature_tests_upgrade_centos.yml @@ -0,0 +1,129 @@ +--- +# +# ============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 K8s CAPI Baremetal 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 Airship CI repository. + +- job-template: + id: feature_tests_upgrade_centos + name: '{job_prefix}_{name}_feature_tests_upgrade_centos' + description: "Combined upgrade tests 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: DISTRIBUTION + default: 'centos' + description: 'Distribution to use for the tests.' + - 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 v1alpha3 or v1alpha4.' + - string: + name: TARGET_NODE_OS + default: 'Centos' + description: 'Distribution to use for the target host.' + - 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_upgrade_centos" + description: 'Tests for combined upgrade.' + + 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-upgrade-features-centos(\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' + - 'release-0.3' + status-context: "test-upgrade-features-centos" + 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_github_pipeline}" + lightweight-checkout: False diff --git a/jjb/airship/job_master_feature_tests_upgrade_centos.yml b/jjb/airship/job_master_feature_tests_upgrade_centos.yml new file mode 100644 index 00000000..1ce98723 --- /dev/null +++ b/jjb/airship/job_master_feature_tests_upgrade_centos.yml @@ -0,0 +1,108 @@ +--- +# +# ============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 K8s CAPI Baremetal 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 Airship CI repository. + +- job-template: + id: master_feature_tests_upgrade_centos + name: '{job_prefix}_master_feature_tests_upgrade_centos' + description: "Combined upgrade tests 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: DISTRIBUTION + default: 'centos' + description: 'Distribution to use for the tests.' + - 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 v1alpha3 or v1alpha4.' + - string: + name: TARGET_NODE_OS + default: 'Centos' + description: 'Distribution to use for the target host.' + - 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_upgrade_centos" + description: 'Tests for combined upgrade.' + + properties: + - build-discarder: + days-to-keep: 30 + num-to-keep: 300 + artifact-days-to-keep: -1 + artifact-num-to-keep: -1 + + triggers: + - timed: "H H(21-23) * * *" + + 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_github_pipeline}" + lightweight-checkout: False diff --git a/jjb/airship/projects.yml b/jjb/airship/projects.yml index 218c34a7..d35fc436 100644 --- a/jjb/airship/projects.yml +++ b/jjb/airship/projects.yml @@ -51,6 +51,7 @@ jobs: - feature_tests_ubuntu - feature_tests_upgrade_ubuntu + - feature_tests_upgrade_centos repo: org: "Nordix" name: "metal3-dev-env" @@ -66,6 +67,7 @@ jobs: - feature_tests_ubuntu - feature_tests_upgrade_ubuntu + - feature_tests_upgrade_centos repo: org: "Nordix" name: "baremetal-operator" @@ -81,6 +83,7 @@ jobs: - feature_tests_ubuntu - feature_tests_upgrade_ubuntu + - feature_tests_upgrade_centos repo: org: "Nordix" name: "cluster-api-provider-metal3" @@ -104,6 +107,7 @@ - capi_bm_v1a4_integration_tests_ubuntu - feature_tests_ubuntu - feature_tests_upgrade_ubuntu + - feature_tests_upgrade_centos - project: name: 'metal3io_project_infra_cleanup' @@ -141,6 +145,7 @@ - capi_bm_v1a4_integration_tests_ubuntu - feature_tests_ubuntu - feature_tests_upgrade_ubuntu + - feature_tests_upgrade_centos - project: name: "metal3io_metal3_dev_env" @@ -155,8 +160,10 @@ - capi_bm_v1a4_master_integration_tests_ubuntu - feature_tests_ubuntu - feature_tests_upgrade_ubuntu + - feature_tests_upgrade_centos - master_feature_tests_ubuntu - master_feature_tests_upgrade_ubuntu + - master_feature_tests_upgrade_centos repo: org: "metal3-io" @@ -174,6 +181,7 @@ - capi_bm_v1a4_integration_tests_ubuntu - feature_tests_ubuntu - feature_tests_upgrade_ubuntu + - feature_tests_upgrade_centos - project: name: "metal3io_ironic_image" @@ -187,6 +195,7 @@ - capi_bm_v1a4_integration_tests_ubuntu - feature_tests_ubuntu - feature_tests_upgrade_ubuntu + - feature_tests_upgrade_centos - project: name: "metal3io_ironic_inspector" @@ -200,6 +209,7 @@ - capi_bm_v1a4_integration_tests_ubuntu - feature_tests_ubuntu - feature_tests_upgrade_ubuntu + - feature_tests_upgrade_centos - project: name: "metal3io_ironic_ipa_downloader" @@ -213,3 +223,4 @@ - capi_bm_v1a4_integration_tests_ubuntu - feature_tests_ubuntu - feature_tests_upgrade_ubuntu + - feature_tests_upgrade_centos