[DOCS] Added dynamic content to Upgrade guide from conf.py

Modified conf.py that replaces certain variables with the strings
as per the release name. Thus it makes easier to update the document
whenever release changes.

Closes-Bug: 1620275

Change-Id: I3b9457fc9e193e6a4b417d935b8588b4d0a7e450
This commit is contained in:
Nish Patwa 2016-09-16 12:07:53 -05:00 committed by Nish Patwa(nishpatwa_)
parent 5e65a9e2f1
commit 39280be7dd
11 changed files with 87 additions and 56 deletions

View File

@ -301,5 +301,28 @@ pdf_documents = [
]
pipe = Popen('git describe --abbrev=0 --tags', stdout=PIPE, shell=True)
previous_release_branch_name='mitaka'
current_release_branch_name='newton'
version = pipe.stdout.read()
rst_epilog = '.. |my_conf_val| replace:: %s' % version
previous_release_capital_name=previous_release_branch_name.upper()
previous_release_formal_name=previous_release_branch_name.capitalize()
current_release_formal_name=current_release_branch_name.capitalize()
current_release_capital_name=current_release_branch_name.upper()
current_release_deploy_dir="``/etc/openstack_deploy."+current_release_capital_name+"``"
upgrade_deploy_vars_file="``/etc/openstack_deploy."+current_release_capital_name+"/VARS_MIGRATED_file``"
upgrade_deploy_vars_user="``/etc/openstack_deploy."+current_release_capital_name+"/VARS_MIGRATED_user_variables``"
rst_epilog = """
.. |current_release_branch_name| replace:: %s
.. |previous_release_branch_name| replace:: %s
.. |previous_release_capital_name| replace:: %s
.. |current_release_capital_name| replace:: %s
.. |previous_release_formal_name| replace:: %s
.. |current_release_formal_name| replace:: %s
.. |current_release_deploy_dir| replace:: %s
.. |upgrade_deploy_vars_file| replace:: %s
.. |upgrade_deploy_vars_user| replace:: %s
.. |latest_tag| replace:: %s
""" % (current_release_branch_name,previous_release_branch_name,previous_release_capital_name,current_release_capital_name,previous_release_formal_name,current_release_formal_name,current_release_deploy_dir,upgrade_deploy_vars_file,upgrade_deploy_vars_user,version)

View File

@ -41,7 +41,7 @@ not specified, the default is ``/etc/openstack_deploy/``.
In addition to this argument, the base environment skeleton is provided in the
``playbooks/inventory/env.d`` directory of the OpenStack-Ansible codebase.
.. note:: In all versions prior to Mitaka, this argument was ``--file``.
.. note:: In all versions prior to |previous_release_formal_name|, this argument was ``--file``.
The following file must be present in the configuration directory:

View File

@ -69,20 +69,20 @@ deploying from the head of a branch may result in an unstable build due to
changes in flight and upstream OpenStack changes. For a test (ie not a
development) build it is usually best to checkout the latest tagged version.
.. code-block:: shell-session
.. parsed-literal::
# # List all existing tags.
# git tag -l
# # Checkout the stable branch and find just the latest tag
# git checkout stable/mitaka
# git checkout stable/|previous_release_branch_name|
# git describe --abbrev=0 --tags
# # Checkout the latest tag from either method of retrieving the tag.
# git checkout |my_conf_val|
# git checkout |latest_tag|
.. note::
The Mitaka release is only compatible with Ubuntu 14.04 (Trusy Tahr).
The |previous_release_formal_name| release is only compatible with Ubuntu 14.04 (Trusy Tahr).
By default the scripts deploy all OpenStack services with sensible defaults
for the purpose of a gate check, development or testing system.
@ -270,7 +270,7 @@ soon as the instance starts. Save this file as ``user_data.yml``:
- export ANSIBLE_FORCE_COLOR=true
- export PYTHONUNBUFFERED=1
- export REPO=https://github.com/openstack/openstack-ansible
- export BRANCH=stable/mitaka
- export BRANCH=stable/|previous_release_branch_name|
- git clone -b ${BRANCH} ${REPO} /opt/openstack-ansible
- cd /opt/openstack-ansible && scripts/bootstrap-ansible.sh
- cd /opt/openstack-ansible && scripts/bootstrap-aio.sh

View File

@ -35,8 +35,8 @@ for Ansible. Start by getting those files into the correct places:
.. note::
As of Newton, the ``env.d`` directory has been moved from this source
directory to ``playbooks/inventory/``.
As of |current_release_formal_name|, the ``env.d`` directory has been
moved from this source directory to ``playbooks/inventory/``.
#. Change to the ``/etc/openstack_deploy`` directory.

View File

@ -2,8 +2,9 @@
Upgrade Guide
=============
In this section you can find information on the Mitaka to
Newton upgrade process for OpenStack-Ansible.
In this section you can find information on the
|previous_release_formal_name| to |current_release_formal_name|
upgrade process for OpenStack-Ansible.
.. toctree::
:maxdepth: 2

View File

@ -12,15 +12,15 @@ orchestration for upgrade automation beyond what OpenStack-Ansible provides.
The steps detailed here match those performed by the ``run-upgrade.sh``
script. Any of these steps can safely be run multiple times.
Check out the Newton release
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Check out the |current_release_formal_name| release
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ensure your OpenStack-Ansible code is on the latest Newton release tag
(|my_conf_val|).
Ensure your OpenStack-Ansible code is on the latest
|current_release_formal_name| release tag (|latest_tag|).
.. code-block:: console
.. parsed-literal::
# git checkout stable/newton
# git checkout stable/|current_release_branch_name|
# LATEST_TAG=$(git describe --abbrev=0 --tags)
# git checkout ${LATEST_TAG}
@ -43,12 +43,12 @@ From the ``openstack-ansible`` root directory, run the following commands:
These variables reduce typing when running the remaining upgrade
tasks.
Re-bootstrap Ansible for Newton
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Re-bootstrap Ansible for |current_release_formal_name|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Bootstrapping Ansible again ensures that all OpenStack-Ansible role
dependencies are in place before running playbooks from the Newton
release.
dependencies are in place before running playbooks from the
|current_release_formal_name| release.
.. code-block:: console
@ -100,7 +100,7 @@ Update configuration and environment files
The user configuration files in ``/etc/openstack_deploy/`` and the environment
layout in ``/etc/openstack_deploy/env.d`` have new name
values added in Newton.
values added in |current_release_formal_name|.
See :ref:`config-change-playbook` for more details.
@ -111,8 +111,8 @@ See :ref:`config-change-playbook` for more details.
Update user secrets file
~~~~~~~~~~~~~~~~~~~~~~~~
Newton introduces new user secrets to the stack. These are populated
automatically with the following playbook.
|current_release_formal_name| introduces new user secrets to the stack.
These are populated automatically with the following playbook.
See :ref:`user-secrets-playbook` for more details.
@ -160,8 +160,8 @@ Cleanup ``pip.conf`` file
~~~~~~~~~~~~~~~~~~~~~~~~~
The presence of ``pip.conf`` file can cause build failures when upgrading to
Newton. This play removes the ``pip.conf`` file on all the physical servers
and on the repo containers.
|current_release_formal_name|. This play removes the ``pip.conf`` file
on all the physical servers and on the repo containers.
See :ref:`pip-conf-removal` for more details.
@ -183,11 +183,13 @@ See :ref:`old-hostname-compatibility` for details.
Upgrade infrastructure
~~~~~~~~~~~~~~~~~~~~~~
Running the standard OpenStack-Ansible infrastructure playbook applies the
relevant Newton settings and packages. This upgrade is required for the Newton
release of OpenStack-Ansible.
Running the standard OpenStack-Ansible infrastructure playbook
applies the relevant |current_release_formal_name| settings
and packages.This upgrade is required for the
|current_release_formal_name| release of OpenStack-Ansible.
For certain versions of Mitaka, you must upgrade the RabbitMQ service.
For certain versions of |previous_release_formal_name|, you must upgrade
the RabbitMQ service.
See :ref:`setup-infra-playbook` for details.
@ -217,8 +219,8 @@ See :ref:`aodh-api-init-delete` for details.
Upgrade OpenStack
~~~~~~~~~~~~~~~~~
Upgrade the OpenStack components with the same installation playbook,
without any additional options.
Upgrade the OpenStack components with the same installation
playbook, without any additional options.
.. code-block:: console

View File

@ -17,12 +17,12 @@ A minor upgrade typically requires the following steps:
# cd /opt/openstack-ansible
#. Ensure your OpenStack-Ansible code is on the latest Newton release tag
(|my_conf_val|):
#. Ensure your OpenStack-Ansible code is on the latest
|current_release_formal_name| release tag (|latest_tag|):
.. code-block:: console
.. parsed-literal::
# git checkout stable/newton
# git checkout stable/|current_release_branch_name|
# LATEST_TAG=$(git describe --abbrev=0 --tags)
# git checkout ${LATEST_TAG}

View File

@ -19,7 +19,7 @@ major upgrade process performs the following actions:
- Modifies files residing in ``/etc/openstack_deploy`` in
order to reflect new configuration values.
- Some flag files are created by the migration scripts in order to achieve
idempotency. These files are placed in the ``/etc/openstack_deploy.NEWTON``
idempotency. These files are placed in the |current_release_deploy_dir|
directory.
- Upgrade the RabbitMQ server during an OpenStack-Ansible upgrade process.
See :ref:`setup-infra-playbook` for details.

View File

@ -22,23 +22,23 @@ It provides the following environment variables:
The upgrade script also bootstraps OpenStack-Ansible (using
``bootstrap-ansible.sh``) in order to provide the new role dependencies
introduced in the Mitaka series.
introduced in the |previous_release_formal_name| series.
.. _migrate-os-vars:
``migrate_openstack_vars.py``
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Upstream decisions influenced the change of some variable names in Newton.
This script replaces any instances of these strings in the
variable override files matching the pattern
Upstream decisions influenced the change of some variable names in
|current_release_formal_name|. This script replaces any instances of these
strings in the variable override files matching the pattern
``/etc/openstack_deploy/user_*.yml``.
Variable names within comments are updated.
This script creates files of the form
``/etc/openstack_deploy.NEWTON/VARS_MIGRATED_file``. For example, once the
|upgrade_deploy_vars_file|. For example, once the
script has processed the file ``/etc/openstack_deploy/user_variables.yml``, it
creates ``/etc/openstack_deploy.NEWTON/VARS_MIGRATED_user_variables``. This
creates |upgrade_deploy_vars_user|. This
indicates to OpenStack-Ansible to skip this step on successive runs. The script
itself does not check for this file.

View File

@ -16,11 +16,12 @@ 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.
Because LBaaS v1 isn't supported in |current_release_formal_name|
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 bedone by the deployer
for the cleanup.
.. _fact-cleanup-playbook:
@ -38,7 +39,8 @@ deploy-config-changes.yml
This playbook backs up the ``/etc/openstack_deploy`` directory before
changing the configuration.
``/etc/openstack_deploy`` copies once to ``/etc/openstack_deploy.NEWTON``.
``/etc/openstack_deploy`` copies once to
|current_release_deploy_dir|.
.. _user-secrets-playbook:
@ -97,7 +99,7 @@ upgrade RabbitMQ.
regardless of the value of ``rabbitmq_upgrade``. This variable only
controls upgrading the major or minor versions.
Upgrading RabbitMQ in the Newton release is optional. The
Upgrading RabbitMQ in the |current_release_formal_name| release is optional. The
``run-upgrade.sh`` script does not automatically upgrade it. To upgrade
RabbitMQ, insert the ``rabbitmq_upgrade: true``
line into a file, such as: ``/etc/openstack_deploy/user_variables.yml``.

View File

@ -4,8 +4,9 @@
Upgrading using a script
========================
The Newton release series of OpenStack-Ansible contains the code for
migrating from Mitaka to Newton.
The |current_release_formal_name| release series of OpenStack-Ansible contains
the code for migrating from |previous_release_formal_name| to
|current_release_formal_name|.
.. warning::
@ -15,12 +16,14 @@ migrating from Mitaka to Newton.
Running the upgrade script
~~~~~~~~~~~~~~~~~~~~~~~~~~
To upgrade from Mitaka to Newton using the upgrade script, perform the
following steps in the ``openstack-ansible`` directory:
To upgrade from |previous_release_formal_name| to
|current_release_formal_name| using the upgrade script,
perform the following steps in the ``openstack-ansible``
directoy:
.. code-block:: console
.. parsed-literal::
# git checkout stable/newton
# git checkout stable/|current_release_branch_name|
# LATEST_TAG=$(git describe --abbrev=0 --tags)
# git checkout ${LATEST_TAG}
# ./scripts/run-upgrade.sh