diff options
author | Giulio Fidente <gfidente@redhat.com> | 2017-08-17 00:43:22 +0200 |
---|---|---|
committer | Giulio Fidente <gfidente@redhat.com> | 2017-08-17 10:39:08 +0200 |
commit | 06aa229b01e8b431802311cb363c019335710455 (patch) | |
tree | 1a79d3f7a2539d6660f30c56ed97039b762f910e /docker | |
parent | 81425853a2858a7ebfb51e195fea3184c4b45f1b (diff) |
Swith to the appropriate ceph-ansible playbook on upgrade
When performing an overcloud upgrade, we need to run a different
ceph-ansible playbook from what we run for fresh deployments.
This change adds the logic to parse StackUpdateType and set the
playbook path accordingly.
Change-Id: I2882f62a80954e6e7324bb86e5ac91c059698a60
Diffstat (limited to 'docker')
-rw-r--r-- | docker/services/ceph-ansible/ceph-base.yaml | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/docker/services/ceph-ansible/ceph-base.yaml b/docker/services/ceph-ansible/ceph-base.yaml index 52c4a65c..564b9019 100644 --- a/docker/services/ceph-ansible/ceph-base.yaml +++ b/docker/services/ceph-ansible/ceph-base.yaml @@ -30,6 +30,14 @@ parameters: description: Mapping of service endpoint -> protocol. Typically set via parameter_defaults in the resource registry. type: json + StackUpdateType: + type: string + description: > + Type of update, to differentiate between UPGRADE and UPDATE cases + when StackAction is UPDATE (both are the same stack action). + constraints: + - allowed_values: ['', 'UPGRADE'] + default: '' CephAnsibleWorkflowName: type: string description: Name of the Mistral workflow to execute @@ -38,6 +46,10 @@ parameters: type: string description: Path to the ceph-ansible playbook to execute default: /usr/share/ceph-ansible/site-docker.yml.sample + CephAnsibleUpgradePlaybook: + type: string + description: Path to the ceph-ansible playbook to execute on upgrade + default: /usr/share/ceph-ansible/infrastructure-playbooks/take-over-existing-cluster.yml CephAnsibleExtraConfig: type: json description: Extra vars for the ceph-ansible playbook @@ -101,6 +113,8 @@ conditions: yaql: data: {get_param: DockerCephDaemonImage} expression: $.data.split('/')[0].matches('(\.|:)') + perform_upgrade: + equals: [{get_param: StackUpdateType}, 'UPGRADE'] resources: DockerImageUrlParts: @@ -147,7 +161,11 @@ outputs: workflow: { get_param: CephAnsibleWorkflowName } input: ceph_ansible_extra_vars: {get_param: CephAnsibleExtraConfig} - ceph_ansible_playbook: {get_param: CephAnsiblePlaybook} + ceph_ansible_playbook: + if: + - perform_upgrade + - {get_param: CephAnsibleUpgradePlaybook} + - {get_param: CephAnsiblePlaybook} config_settings: ceph_common_ansible_vars: fsid: { get_param: CephClusterFSID } |