ceph jenkins pipelines
Change-Id: I4ab21a019d03233ff377af0a7c32bb6f55adae1d
diff --git a/jenkins/client/job/ceph/add-node.yml b/jenkins/client/job/ceph/add-node.yml
index 6ae22ad..9fee51e 100644
--- a/jenkins/client/job/ceph/add-node.yml
+++ b/jenkins/client/job/ceph/add-node.yml
@@ -2,7 +2,7 @@
jenkins:
client:
job:
- ceph-remove-osd:
+ ceph-add-node:
type: workflow-scm
concurrent: true
display_name: "Ceph - add node"
diff --git a/jenkins/client/job/ceph/backend-migration.yml b/jenkins/client/job/ceph/backend-migration.yml
new file mode 100644
index 0000000..e0dc091
--- /dev/null
+++ b/jenkins/client/job/ceph/backend-migration.yml
@@ -0,0 +1,49 @@
+parameters:
+ jenkins:
+ client:
+ job:
+ ceph-backend-migration:
+ type: workflow-scm
+ concurrent: true
+ display_name: "Ceph - backend migration"
+ discard:
+ build:
+ keep_num: 50
+ scm:
+ type: git
+ url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+ credentials: "gerrit"
+ script: ceph-backend-migration.groovy
+ param:
+ # general parameters
+ SALT_MASTER_URL:
+ type: string
+ description: URL of Salt master
+ default: "http://${_param:salt_master_host}:6969"
+ SALT_MASTER_CREDENTIALS:
+ type: string
+ description: Credentials for login to Salt API
+ default: salt
+ TARGET:
+ type: string
+ description: OSD hosts (minion ids) to be targeted
+ default: 'osd*'
+ OSD:
+ type: string
+ description: OSD ids to be migrated (comma-separated list - 1,2,3)
+ default: '*'
+ ADMIN_HOST:
+ type: string
+ description: Host with admin keyring and access to cluster management
+ default: 'cmn01*'
+ CLUSTER_FLAGS:
+ type: string
+ description: Flags to be aplied before pipeline and after pipeline (comma-separated list)
+ WAIT_FOR_HEALTHY:
+ type: boolean
+ default: 'true'
+ description: Wait for healthy during pipeline
+ ORIGIN_BACKEND:
+ type: string
+ description: Ceph backend before migration
+ default: 'filestore'
diff --git a/jenkins/client/job/ceph/init.yml b/jenkins/client/job/ceph/init.yml
index 4cfc6db..19bafca 100644
--- a/jenkins/client/job/ceph/init.yml
+++ b/jenkins/client/job/ceph/init.yml
@@ -3,4 +3,5 @@
- system.jenkins.client.job.ceph.replace-failed-osd
- system.jenkins.client.job.ceph.add-node
- system.jenkins.client.job.ceph.remove-node
-
+- system.jenkins.client.job.ceph.upgrade
+- system.jenkins.client.job.ceph.backend-migration
diff --git a/jenkins/client/job/ceph/remove-node.yml b/jenkins/client/job/ceph/remove-node.yml
index 9ba449c..4a5efe3 100644
--- a/jenkins/client/job/ceph/remove-node.yml
+++ b/jenkins/client/job/ceph/remove-node.yml
@@ -2,7 +2,7 @@
jenkins:
client:
job:
- ceph-remove-osd:
+ ceph-remove-node:
type: workflow-scm
concurrent: true
display_name: "Ceph - remove node"
diff --git a/jenkins/client/job/ceph/replace-failed-osd.yml b/jenkins/client/job/ceph/replace-failed-osd.yml
index 50e644b..57081ec 100644
--- a/jenkins/client/job/ceph/replace-failed-osd.yml
+++ b/jenkins/client/job/ceph/replace-failed-osd.yml
@@ -2,7 +2,7 @@
jenkins:
client:
job:
- ceph-remove-osd:
+ ceph-replace-failed-osd:
type: workflow-scm
concurrent: true
display_name: "Ceph - replace failed OSD"
@@ -40,14 +40,6 @@
type: string
description: Host with admin keyring and correct crushmap file in /etc/ceph/crushmap
default: 'cmn01*'
- ENFORCE_CRUSHMAP:
- type: boolean
- default: 'false'
- description: Set to true if the prepared crush map should be enforced
- WAIT_FOR_PG_REBALANCE:
- type: boolean
- default: 'true'
- description: Wait for PGs to rebalance after osd is removed from crush map
WAIT_FOR_HEALTHY:
type: boolean
default: 'false'
diff --git a/jenkins/client/job/ceph/upgrade.yml b/jenkins/client/job/ceph/upgrade.yml
new file mode 100644
index 0000000..bf8e9e4
--- /dev/null
+++ b/jenkins/client/job/ceph/upgrade.yml
@@ -0,0 +1,66 @@
+parameters:
+ jenkins:
+ client:
+ job:
+ ceph-upgrade:
+ type: workflow-scm
+ concurrent: true
+ display_name: "Ceph - upgrade"
+ discard:
+ build:
+ keep_num: 50
+ scm:
+ type: git
+ url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+ credentials: "gerrit"
+ script: ceph-upgrade.groovy
+ param:
+ # general parameters
+ SALT_MASTER_URL:
+ type: string
+ description: URL of Salt master
+ default: "http://${_param:salt_master_host}:6969"
+ SALT_MASTER_CREDENTIALS:
+ type: string
+ description: Credentials for login to Salt API
+ default: salt
+ ADMIN_HOST:
+ type: string
+ description: Host with admin keyring and correct crushmap file in /etc/ceph/crushmap
+ default: 'cmn01*'
+ WAIT_FOR_HEALTHY:
+ type: boolean
+ default: 'true'
+ description: Wait for healthy during pipeline
+ CLUSTER_FLAGS:
+ type: string
+ default: 'sortbitwise,noout'
+ description: Flags to be aplied before pipeline and after pipeline (comma-separated list)
+ ORIGIN_RELEASE:
+ type: string
+ description: Ceph release version before upgrade
+ default: 'jewel'
+ TARGET_RELEASE:
+ type: string
+ description: Ceph release version after upgrade
+ default: 'luminous'
+ STAGE_UPGRADE_MON:
+ type: boolean
+ default: 'true'
+ description: Set to True if Ceph mon nodes upgrade is desired
+ STAGE_UPGRADE_MGR:
+ type: boolean
+ default: 'true'
+ description: Set to True if Ceph mgr nodes upgrade or new deploy is desired
+ STAGE_UPGRADE_OSD:
+ type: boolean
+ default: 'true'
+ description: Set to True if Ceph osd nodes upgrade is desired
+ STAGE_UPGRADE_RGW:
+ type: boolean
+ default: 'true'
+ description: Set to True if Ceph rgw nodes upgrade is desired
+ STAGE_UPGRADE_CLIENT:
+ type: boolean
+ default: 'true'
+ description: Set to True if Ceph client nodes upgrade is desired (includes for example ctl/cmp nodes)