pre-upgrade
===========

.. _pre-upgrade_collect-flavors-and-verify-profiles:

collect-flavors-and-verify-profiles
-----------------------------------

Collect and verify role flavors.

This validation checks the flavors assigned to roles exist and have the
correct capabilities set.


- **hosts**: undercloud
- **groups**: pre-deployment, pre-upgrade
- **parameters**:
- **roles**: collect_flavors_and_verify_profiles

Role documentation

.. toctree::

   roles/role-collect_flavors_and_verify_profiles


.. _pre-upgrade_container-status:

container-status
----------------

Ensure container status.

Detect failed containers and raise an error.


- **hosts**: undercloud, allovercloud
- **groups**: pre-upgrade, post-deployment, post-upgrade
- **parameters**:
- **roles**: container_status

Role documentation

.. toctree::

   roles/role-container_status


.. _pre-upgrade_image-serve:

image-serve
-----------

Verify image-serve service is working and answering.

Ensures image-serve vhost is configured and httpd is running.


- **hosts**: undercloud
- **groups**: pre-upgrade, post-deployment, post-upgrade
- **parameters**:
- **roles**: image_serve

Role documentation

.. toctree::

   roles/role-image_serve


.. _pre-upgrade_ironic-boot-configuration:

ironic-boot-configuration
-------------------------

Check Ironic boot configuration.

Check if baremetal boot configuration is correct.


- **hosts**: undercloud
- **groups**: pre-deployment, pre-upgrade
- **parameters**:
- **roles**: ironic_boot_configuration

Role documentation

.. toctree::

   roles/role-ironic_boot_configuration


.. _pre-upgrade_node-health:

node-health
-----------

Node health check.

Check if all overcloud nodes can be connected to before starting a
scale-up or an upgrade.


- **hosts**: undercloud
- **groups**: pre-upgrade
- **parameters**:
- **roles**: node_health

Role documentation

.. toctree::

   roles/role-node_health


.. _pre-upgrade_nova-status:

nova-status
-----------

Nova Status Upgrade Check.

Performs a release-specific readiness check before restarting services with
new code. This command expects to have complete configuration and access to
databases and services within a cell. For example, this check may query the
Nova API database and one or more cell databases. It may also make requests
to other services such as the Placement REST API via the Keystone service
catalog

The nova-status upgrade check command has three standard return codes:

0 -> All upgrade readiness checks passed successfully and there is nothing to do.
1 -> At least one check encountered an issue and requires further investigation. This is considered a warning but the upgrade may be OK.
2 -> There was an upgrade status check failure that needs to be investigated. This should be considered something that stops an upgrade.


- **hosts**: nova_api
- **groups**: pre-upgrade
- **parameters**:
- **roles**: nova_status

Role documentation

.. toctree::

   roles/role-nova_status


.. _pre-upgrade_openstack-endpoints:

openstack-endpoints
-------------------

Check connectivity to various OpenStack services.

This validation gets the PublicVip address from the deployment and
tries to access Horizon and get a Keystone token.


- **hosts**: undercloud
- **groups**: post-deployment, pre-upgrade, post-upgrade
- **parameters**:
- **roles**: openstack_endpoints

Role documentation

.. toctree::

   roles/role-openstack_endpoints


.. _pre-upgrade_overcloud-service-status:

overcloud-service-status
------------------------

Verify overcloud services state after running a deployment or an update.

An Ansible role to verify the Overcloud services states after a deployment
or an update.  It checks the API /os-services and looks for deprecated
services (nova-consoleauth) or any down services.


- **hosts**: Undercloud
- **groups**: post-deployment, pre-upgrade, post-upgrade, post-overcloud-upgrade, post-overcloud-converge
- **parameters**:
- **roles**: overcloud_service_status

Role documentation

.. toctree::

   roles/role-overcloud_service_status


.. _pre-upgrade_package-version:

package-version
---------------

package-version.

Ensures we can access the wanted package version. Especially useful
when you are switching repositories, for instance during an upgrade.


- **hosts**: all
- **groups**: prep, pre-deployment, pre-upgrade, pre-system-upgrade, pre-undercloud-upgrade, pre-overcloud-prepare, pre-overcloud-upgrade, pre-overcloud-converge, pre-ceph
- **parameters**:

  - **package_version_debug**: False
- **roles**: package_version

Role documentation

.. toctree::

   roles/role-package_version


.. _pre-upgrade_repos:

repos
-----

Check correctness of current repositories.

Detect whether the repositories listed in `yum repolist`
can be connected to and that there is at least one repo
configured.

Detect if there are any unwanted repositories (such as EPEL) enabled.


- **hosts**: undercloud, allovercloud
- **groups**: pre-upgrade
- **parameters**:
- **roles**: repos

Role documentation

.. toctree::

   roles/role-repos


.. _pre-upgrade_stack-health:

stack-health
------------

Stack Health Check.

Check if all stack resources are in a 'COMPLETE' state before starting
an upgrade.


- **hosts**: undercloud
- **groups**: pre-upgrade, post-upgrade
- **parameters**:
- **roles**: stack_health

Role documentation

.. toctree::

   roles/role-stack_health


.. _pre-upgrade_system_encoding:

system_encoding
---------------

System encoding.

Ensure the local is unicode


- **hosts**: all
- **groups**: pre-deployment, pre-upgrade
- **parameters**:

  - **system_encoding_debug**: False
- **roles**: system_encoding

Role documentation

.. toctree::

   roles/role-system_encoding


.. _pre-upgrade_undercloud-disk-space-pre-upgrade:

undercloud-disk-space-pre-upgrade
---------------------------------

Verify undercloud fits the disk space requirements to perform an upgrade.

Make sure that the root partition on the undercloud node has enough
free space before starting an upgrade

http://tripleo.org/install/environments/baremetal.html#minimum-system-requirements


- **hosts**: undercloud
- **groups**: pre-upgrade
- **parameters**:

  - **volumes**: [{'mount': '/var/lib/docker', 'min_size': 10}, {'mount': '/var/lib/config-data', 'min_size': 3}, {'mount': '/var', 'min_size': 16}, {'mount': '/', 'min_size': 20}]
- **roles**: undercloud_disk_space

Role documentation

.. toctree::

   roles/role-undercloud_disk_space


.. _pre-upgrade_undercloud-heat-purge-deleted:

undercloud-heat-purge-deleted
-----------------------------

Verify heat-manage purge_deleted is enabled in crontab.

Without a purge_deleted crontab enabled, the
heat database can grow very large.  This validation checks that
the purge_deleted crontab has been set up.


- **hosts**: undercloud
- **groups**: pre-upgrade, pre-deployment
- **parameters**:

  - **cron_check**: heat-manage purge_deleted
- **roles**: undercloud_heat_purge_deleted

Role documentation

.. toctree::

   roles/role-undercloud_heat_purge_deleted


.. _pre-upgrade_undercloud-ipa-server-check:

undercloud-ipa-server-check
---------------------------

Verify that the IPA server has the right permissions and ACI.

This validation is relevant for systems where TLS Everywhere is enabled.

A new ACI is needed on the FreeIPA server to ensure that certificates with IP SANs can be
issued.  This ACI will be delivered by default from FreeIPA 4.8.5.

In addition, a new permission is needed to add DNS zones for tripleo-ipa.  This
permission is an addition to the current permissions for the Nova Host Manager role.

This validation confirms that the new permission and ACI are present.

https://docs.openstack.org/project-deploy-guide/tripleo-docs/latest/features/tls-introduction.html


- **hosts**: undercloud
- **groups**: pre-upgrade
- **parameters**:
- **roles**: tls_everywhere

Role documentation

.. toctree::

   roles/role-tls_everywhere


.. _pre-upgrade_undercloud-service-status:

undercloud-service-status
-------------------------

Verify undercloud services state before running update or upgrade.

Check undercloud status before running a stack update - especially minor update and major upgrade.


- **hosts**: undercloud
- **groups**: post-upgrade, pre-upgrade
- **parameters**:
- **roles**: undercloud_service_status

Role documentation

.. toctree::

   roles/role-undercloud_service_status

