Set container-infra API version to 1.9 for >=Ussuri,<=Wallaby.

Horizon needs to use container-infra 1.9 version, the openstack
client's default, to be able to resize k8s clusters, but by default
Horizon uses 1.1 until Xena (
https://opendev.org/openstack/magnum-ui/commit/1fc627fb ).

This change sets OPENSTACK_API_VERSIONS['container-infra'] to 1.9 for
U/V/W, and unsets the key for >=Xena

Closes-Bug: #1998509
Change-Id: Ie358e9c115273ae648c9bef2aedaae50e5ee179d
This commit is contained in:
Felipe Reyes 2023-01-30 17:14:20 -03:00
parent 05b6045768
commit c3527010b5
3 changed files with 14 additions and 2 deletions

View File

@ -26,6 +26,10 @@ class MagnumDashboardCharm(charms_openstack.charm.OpenStackCharm):
python_version = 3
adapters_class = charms_openstack.adapters.OpenStackRelationAdapters
required_relations = ['dashboard']
# Use API version 1.9 for magnum (LP: #1998509)
local_settings = """
OPENSTACK_API_VERSIONS['container-infra'] = 1.9
"""
def enable_ui_plugin(self):
source = '/etc/openstack-dashboard/enabled'
@ -40,3 +44,10 @@ class MagnumDashboardCharm(charms_openstack.charm.OpenStackCharm):
except FileExistsError:
# plugin file is already enabled
continue
class MagnumDashboardCharmXena(MagnumDashboardCharm):
release = 'xena'
# magnum-ui's default API version is 1.10, there is no need to override it
# (LP: #1998509)
local_settings = ""

View File

@ -34,7 +34,7 @@ def dashboard_available():
with charm.provide_charm_instance() as magnum_dashboard_charm:
dashboard_relation = reactive.endpoint_from_flag('dashboard.available')
dashboard_relation.publish_plugin_info(
"", None,
magnum_dashboard_charm.local_settings, None,
conflicting_packages=magnum_dashboard_charm.purge_packages,
install_packages=magnum_dashboard_charm.packages)
magnum_dashboard_charm.enable_ui_plugin()

View File

@ -55,9 +55,10 @@ class TestMagnumDashboardHandlers(test_utils.PatchHelper):
self.endpoint_from_flag.return_value = mock_flag
self.magnum_dashboard_charm.purge_packages = ['n1']
self.magnum_dashboard_charm.packages = ['p1', 'p2']
self.magnum_dashboard_charm.local_settings = "FOO = 1"
handlers.dashboard_available()
self.magnum_dashboard_charm.enable_ui_plugin.assert_called_once_with()
self.magnum_dashboard_charm.assess_status.assert_called_once_with()
mock_flag.publish_plugin_info.assert_called_once_with(
"", None, conflicting_packages=['n1'],
"FOO = 1", None, conflicting_packages=['n1'],
install_packages=['p1', 'p2'])