Accomodate Charmhub channels in upgrade pages

Introduce changes across all upgrade pages to
accomodate for charm channels.

Removed the method for determining charm revision
update candidate as there is no reasonable way to
do this with the legacy charm stream.

Drive-by: Remove unused file (enable-merge)

Depends-On: Ia3ebfad4a6aa43620cad188b07ec6fc7a29b71a7
Change-Id: I7ea4eae65cc55c3a7081a505dd9bad34852dc8c3
This commit is contained in:
Peter Matulis 2022-02-22 10:10:24 -05:00
parent 2f10c10853
commit 9e0529cbeb
4 changed files with 72 additions and 27 deletions

View File

@ -1 +0,0 @@
799366ee-cd0f-49e3-bd41-bd3198ede5dc

View File

@ -195,22 +195,6 @@ column 'Rev'). For the ceph-mon charm:
App Version Status Scale Charm Store Rev OS Notes
ceph-mon 13.2.8 active 3 ceph-mon jujucharms 48 ubuntu
The latest available stable revision of a charm can be obtained by querying the
Charm Store with the :command:`charm` snap:
.. code-block:: none
sudo snap install charm --classic
charm pull ceph-mon
Sample output:
.. code-block:: console
cs:ceph-mon-48
Based on the above, the ceph-mon charm does not require an upgrade.
.. important::
As stated earlier, any kind of upgrade should first be tested in a

View File

@ -355,6 +355,36 @@ The order provided below is the order used by internal testing.
See the upstream documentation on `Rotating amphora images`_.
Update the charm channel
------------------------
.. warning::
This step is only performed for charms that follow a channel (see
:ref:`Charm types <charm_types>`).
A charm's channel needs to be updated according to the target OpenStack
release. This is done as per the following syntax:
.. code-block:: none
juju refresh --switch ch:<charm> --channel=<channel> <application>
For example, if the cloud is being upgraded to OpenStack Yoga then the keystone
charm's channel should be updated to 'yoga/stable':
.. code-block:: none
juju refresh --switch ch:keystone --channel=yoga/stable keystone
Charms whose services are not technically part of the OpenStack project will
generally use a channel naming scheme that is not based on OpenStack release
names. Here is the ovn-central charm:
.. code-block:: none
juju refresh --switch ch:ovn-central --channel=22.03/stable ovn-central
.. _perform_the_upgrade:
Perform the upgrade

View File

@ -34,13 +34,6 @@ Development notes
This section includes charm development information that will better prepare
the administrator for the task of upgrading Charmed OpenStack.
* There is a single development branch for the OpenStack charms. Unless stated
otherwise, each new revision of a charm includes all the functionality of the
previous revision. This means that a charm that works for a recent
series:openstack combination will also work on an older combination. There is
also no need to switch to a different charm (or charm channel) in order to
upgrade to a new series and/or OpenStack version.
* It is possible for a charm to gain new functionality that is only supported
starting with a specific OpenStack version (e.g. gnocchi S3 support with
Stein).
@ -55,6 +48,44 @@ the administrator for the task of upgrading Charmed OpenStack.
A charm's limitations concerning OpenStack versions and application features
are stated in its README file.
.. _charm_types:
Charm types
~~~~~~~~~~~
There are two general types of OpenStack charms: one that does use channels and
one that does not (legacy).
.. note::
For an overview of how charms are consumed by the end-user see `Charm
delivery`_.
Channels
^^^^^^^^
With the channels type, a channel is dedicated to a single OpenStack release
(release N-1 will be technically supported to assist with upgrades). This means
that a charm that works for a recent series-openstack combination will
generally not work on an older combination. Furthermore, there is a need to
switch to a different channel in order to upgrade to a new OpenStack version
- but not to a new series.
The most recent supported series-openstack combination is ``focal-yoga``.
Channels however are available for many older combinations.
Legacy
^^^^^^
For the legacy charms, unless stated otherwise, each new revision of a charm
includes all the functionality of the previous revision. This means that a
charm that works for a recent series-openstack combination will also work on an
older combination.
The development of legacy charms has stopped at the 21.10 release of OpenStack
Charms (and at the 21.06 release of Trilio Charms). The last supported
series-openstack combination is ``focal-xena``.
Software release cycles
-----------------------
@ -115,7 +146,7 @@ Upgrade order
The order in which to upgrade the different software components is critical.
The generic upgrade order is:
#. charms (to latest stable revision)
#. charms (to latest stable revision for the current charm type)
#. OpenStack (to latest stable version on the current series)
#. series
#. OpenStack (to desired stable version on the new series)
@ -145,7 +176,7 @@ target: a specific Ubuntu release
Upgrade path:
#. Upgrade charms to latest stable revision
#. Upgrade charms to latest stable revision for the current charm type
#. Upgrade OpenStack from Train to Ussuri
#. Upgrade series from bionic to focal
@ -159,7 +190,7 @@ target: a specific OpenStack version
Upgrade path:
#. Upgrade charms to latest stable revision
#. Upgrade charms to latest stable revision for the current charm type
#. Upgrade series from bionic to focal
#. Upgrade OpenStack from Ussuri to Victoria
@ -194,3 +225,4 @@ Each upgrade type is broken down into more detail on the following pages:
.. LINKS
.. _Ubuntu Cloud Archive: https://wiki.ubuntu.com/OpenStack/CloudArchive
.. _Release schedule: https://docs.openstack.org/charm-guide/latest/release-schedule.html
.. _Charm delivery: https://docs.openstack.org/charm-guide/latest/project/charm-delivery.html