diff --git a/charms/openstack-hypervisor/requirements.txt b/charms/openstack-hypervisor/requirements.txt index 03517262..012f7eb9 100644 --- a/charms/openstack-hypervisor/requirements.txt +++ b/charms/openstack-hypervisor/requirements.txt @@ -4,8 +4,7 @@ pyroute2 netifaces jsonschema jinja2 -#git+https://opendev.org/openstack/charm-ops-sunbeam#egg=ops_sunbeam -git+https://github.com/gnuoy/charm-ops-sunbeam@allin#egg=ops_sunbeam +git+https://opendev.org/openstack/charm-ops-sunbeam#egg=ops_sunbeam # This charm does not use lightkube* but ops_sunbeam requires it atm lightkube diff --git a/charms/openstack-hypervisor/src/charm.py b/charms/openstack-hypervisor/src/charm.py index 9c34bfbe..082a816d 100755 --- a/charms/openstack-hypervisor/src/charm.py +++ b/charms/openstack-hypervisor/src/charm.py @@ -125,6 +125,9 @@ class HypervisorOperatorCharm(sunbeam_charm.OSBaseOperatorCharm): local_ip = _get_local_ip_by_default_route() try: contexts = self.contexts() + sb_connection_strs = list(contexts.ovsdb_cms.db_ingress_sb_connection_strs) + if not sb_connection_strs: + raise AttributeError(name='ovsdb southbound ingress string') snap_data = { "compute.cpu-mode": "host-model", "compute.spice-proxy-address": config("ip-address") or local_ip, @@ -153,9 +156,7 @@ class HypervisorOperatorCharm(sunbeam_charm.OSBaseOperatorCharm): "network.ovn-cacert": base64.b64encode( contexts.certificates.ca_cert.encode() ).decode(), - "network.ovn-sb-connection": list( - contexts.ovsdb_cms.db_ingress_sb_connection_strs - )[0], + "network.ovn-sb-connection": sb_connection_strs[0], "network.physnet-name": config("physnet-name"), "node.fqdn": config("fqdn") or socket.getfqdn(), "node.ip-address": config("ip-address") or local_ip,