Updating unit tests for NBI charm
[osm/devops.git] / installers / charm / nbi / src / charm.py
index 7ef9d59..3970a33 100755 (executable)
@@ -32,7 +32,7 @@ from oci_image import OCIImageResource, OCIImageResourceError
 
 from pod_spec import make_pod_spec
 
-LOGGER = logging.getLogger(__name__)
+logger = logging.getLogger(__name__)
 
 NBI_PORT = 9999
 
@@ -130,8 +130,10 @@ class NbiCharm(CharmBase):
         Args:
             event (EventBase): Kafka relation event.
         """
-        message_host = event.relation.data[event.unit].get("host")
-        message_port = event.relation.data[event.unit].get("port")
+        data_loc = event.unit if event.unit else event.app
+
+        message_host = event.relation.data[data_loc].get("host")
+        message_port = event.relation.data[data_loc].get("port")
 
         if (
             message_host
@@ -161,7 +163,9 @@ class NbiCharm(CharmBase):
         Args:
             event (EventBase): DB relation event.
         """
-        database_uri = event.relation.data[event.unit].get("connection_string")
+        data_loc = event.unit if event.unit else event.app
+
+        database_uri = event.relation.data[data_loc].get("connection_string")
 
         if database_uri and self.state.database_uri != database_uri:
             self.state.database_uri = database_uri
@@ -182,17 +186,19 @@ class NbiCharm(CharmBase):
         Args:
             event (EventBase): Keystone relation event.
         """
-        keystone_host = event.relation.data[event.unit].get("host")
-        keystone_port = event.relation.data[event.unit].get("port")
-        keystone_user_domain_name = event.relation.data[event.unit].get(
+        data_loc = event.unit if event.unit else event.app
+
+        keystone_host = event.relation.data[data_loc].get("host")
+        keystone_port = event.relation.data[data_loc].get("port")
+        keystone_user_domain_name = event.relation.data[data_loc].get(
             "user_domain_name"
         )
-        keystone_project_domain_name = event.relation.data[event.unit].get(
+        keystone_project_domain_name = event.relation.data[data_loc].get(
             "project_domain_name"
         )
-        keystone_username = event.relation.data[event.unit].get("username")
-        keystone_password = event.relation.data[event.unit].get("password")
-        keystone_service = event.relation.data[event.unit].get("service")
+        keystone_username = event.relation.data[data_loc].get("username")
+        keystone_password = event.relation.data[data_loc].get("password")
+        keystone_service = event.relation.data[data_loc].get("service")
 
         if (
             keystone_host
@@ -243,8 +249,10 @@ class NbiCharm(CharmBase):
         Args:
             event (EventBase): Prometheus relation event.
         """
-        prometheus_host = event.relation.data[event.unit].get("hostname")
-        prometheus_port = event.relation.data[event.unit].get("port")
+        data_loc = event.unit if event.unit else event.app
+
+        prometheus_host = event.relation.data[data_loc].get("hostname")
+        prometheus_port = event.relation.data[data_loc].get("port")
 
         if (
             prometheus_host
@@ -367,7 +375,7 @@ class NbiCharm(CharmBase):
                 self.port,
             )
         except ValidationError as exc:
-            LOGGER.exception("Config/Relation data validation error")
+            logger.exception("Config/Relation data validation error")
             self.unit.status = BlockedStatus(str(exc))
             return