
In the current implementation, the charm instance i.e., DesignateCharm<*> passes a release name based on python-keystonemiddleware package. However the internal logic ignores the package and installs openstack-release package and determines the release and creates singleton class for that release. The singelton class determines the list of packages etc. However at this point of time, the cloud-archive source is not yet updated. In case of jammy-caracal deployment, the openstack-release package is installed from jammy since the cloud archive source is not updated and hence openstack release is considered as yoga. This means packages listed in DesignateCharmYoga will be installed that includes designate-agent. After running some handlers, configure_designate_full crosschecks the packages with openstack-origin configuration and starts upgrading the packages to caracal. There are no purge_packages listed in CharmDesignateCaracal and so designate-agent is not removed during this upgrade. Do not pass any release so that charms.openstack library figures out the release name after updating the cloud-archive sources. This should fix issues for a greenfield deployment. For the case of upgrades from earlier releases where designate-agent is already installed, update purge packages in CharmDesignateCaracal. To remove/purge nrpe service check, add logic to trigger remove_deperecated_packages. There is a case where designate-agent gets purged and reinstalled due to the way hooks are triggered and singleton class is maintained. To overcome this, always remove_obselete_packages in configure_designate_full handler. Closes-Bug: #2111227 Change-Id: I9f8ce93b9751a65e8e181cf9aa7411a4047318bb
Overview
This is a "source" charm, which is intended to be strictly the top layer of a built charm. This structure declares that any included layer assets are not intended to be consumed as a layer from a functional or design standpoint.
Test and Build
Building, pushing and publishing to the charm store is automated by CI to ensure consistent flow. Manually building is useful for development and testing, however.
tox -e pep8
tox -e py34 # or py27 or py35
tox -e build
Contact Information
OFTC IRC: #openstack-charms
Description
Languages
Python
99.6%
Shell
0.4%