Merge "Fail Fast when trying to upgrade with LBaaS v1 enabled"

This commit is contained in:
Jenkins
2016-07-08 01:45:37 +00:00
committed by Gerrit Code Review
4 changed files with 58 additions and 0 deletions

@@ -63,6 +63,25 @@ inventory is found automatically.
# cd playbooks
Pre-flight checks
~~~~~~~~~~~~~~~~~
Before starting with the new version, you should do pre-flight checks
to ensure everything is fine. If any of those check fail, the upgrade
should stop to let the deployer chose what to do.
Making sure LBaaS v1 isn't in the way
`````````````````````````````````````
Because LBaaS was deprecated, this playbook checks if it was previously
deployed, and fails if this is the case.
See :ref:`lbaas-version-check` for more details.
.. code-block:: console
# openstack-ansible "${UPGRADE_PLAYBOOKS}/lbaas-version-check.yml"
Cleanup old facts
~~~~~~~~~~~~~~~~~

@@ -9,6 +9,19 @@ Within the main :file:`scripts` directory there is an :file:`upgrade-utilities`
directory, which contains an additional playbooks directory. These playbooks
facilitate the upgrade process.
.. _lbaas-version-check:
lbaas-version-check.yml
-----------------------
This playbook is part of the general pre-flight checks.
Because LBaaS v1 isn't supported in Newton and above, and there is no
migration path, the deployer will have to manually disable LBaaS v1 before
upgrading. For openstack-ansible, we are checking if ``neutron_lbaas`` is
set to ``False``, but additional operations are to be done by the deployer for
the cleanup.
.. _fact-cleanup-playbook:
``ansible_fact_cleanup.yml``

@@ -140,6 +140,7 @@ function main {
"${SCRIPTS_PATH}/bootstrap-ansible.sh"
pushd ${MAIN_PATH}/playbooks
RUN_TASKS+=("${UPGRADE_PLAYBOOKS}/lbaas-version-check.yml")
RUN_TASKS+=("${UPGRADE_PLAYBOOKS}/ansible_fact_cleanup.yml")
RUN_TASKS+=("${UPGRADE_PLAYBOOKS}/deploy-config-changes.yml")
RUN_TASKS+=("${UPGRADE_PLAYBOOKS}/user-secrets-adjustment.yml")

@@ -0,0 +1,25 @@
---
# 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: Fail fast if LBaaS v1 is configured
hosts: localhost
connection: local
tasks:
- name: Checking if neutron_lbaas variable exists
fail:
msg: |
LBaaS v1 isn't supported in Newton. Please read:
http://docs.openstack.org/developer/openstack-ansible/install-guide/configure-network-services.html#load-balancing-service-optional
when: neutron_lbaas | bool