openstack-ansible-ops/leap-upgrades/upgrade-utilities/cinder-volume-container-lvm-check.yml
Kevin Carter 2438ad03ab Added leap upgrade tooling
This change adds upgrade tooling that will take a Juno based
OpenStack-Ansible cloud and upgrade it to Newton. The tooling
will run a deployment through all of the needed steps upgrading
the environment and skipping all of the OpenStack releases in
between.

**This tooling should be considered experimental at this time**

Change-Id: I1880794717b9e47786ae255ea1afa57d805cde8e
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-02-01 14:27:07 +00:00

44 lines
1.5 KiB
YAML

---
# Copyright 2016, Rackspace US, Inc.
#
# 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.
- name: Destroy lxc containers except galera
hosts: "cinder_volume"
gather_facts: false
user: root
tasks:
- name: Check if cinder is in a container
set_fact:
in_container: true
when: >
is_metal == true or
container_name != physical_host
- name: Check if cinder backends are LVM
set_fact:
uses_lvm: true
when: >
'lvm' in item.value['volume_driver'] | lower
with_dict: "{{ cinder_backends }}"
- name: Check for cinder volume in a container failure
fail:
msg: >-
In order to continue you must perform a manual migration of the cinder volume container
[ {{ container_name }} ] to the physical host [ {{ physical_host }} ]. The leap
upgrade can NOT continue until this task has been accomplished.
when: >
uses_lvm | default(false) == true and
in_container | default(false) == true