X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=installers%2Fcharm%2Fosm-nbi%2Fsrc%2Fcharm.py;fp=installers%2Fcharm%2Fosm-nbi%2Fsrc%2Fcharm.py;h=77c8a182a0392d68c90602718b1ac582c1652f2b;hb=a86e06186fc2688599647603068cecbee712c800;hp=23ab0542c87dad20b4cd467623cbd74b36df7835;hpb=c3b743fef37b15333203d81f464a474199d18e1e;p=osm%2Fdevops.git diff --git a/installers/charm/osm-nbi/src/charm.py b/installers/charm/osm-nbi/src/charm.py index 23ab0542..77c8a182 100755 --- a/installers/charm/osm-nbi/src/charm.py +++ b/installers/charm/osm-nbi/src/charm.py @@ -41,6 +41,7 @@ from charms.osm_libs.v0.utils import ( check_service_active, ) from charms.osm_nbi.v0.nbi import NbiProvides +from charms.osm_temporal.v0.temporal import TemporalRequires from lightkube.models.core_v1 import ServicePort from ops.charm import ActionEvent, CharmBase, RelationJoinedEvent from ops.framework import StoredState @@ -82,6 +83,7 @@ class OsmNbiCharm(CharmBase): ) self.kafka = KafkaRequires(self) self.nbi = NbiProvides(self) + self.temporal = TemporalRequires(self) self.mongodb_client = MongoClient(self, "mongodb") self.prometheus_client = PrometheusClient(self, "prometheus") self.keystone_client = KeystoneClient(self, "keystone") @@ -182,6 +184,8 @@ class OsmNbiCharm(CharmBase): # Action events self.on.get_debug_mode_information_action: self._on_get_debug_mode_information_action, self.on.nbi_relation_joined: self._update_nbi_relation, + self.on["temporal"].relation_changed: self._on_config_changed, + self.on["temporal"].relation_broken: self._on_required_relation_broken, } for relation in [self.on[rel_name] for rel_name in ["mongodb", "prometheus", "keystone"]]: event_handler_mapping[relation.relation_changed] = self._on_config_changed @@ -215,6 +219,8 @@ class OsmNbiCharm(CharmBase): missing_relations.append("prometheus") if self.keystone_client.is_missing_data_in_app(): missing_relations.append("keystone") + if not self.temporal.host or not self.temporal.port: + missing_relations.append("temporal") if missing_relations: relations_str = ", ".join(missing_relations) @@ -289,6 +295,9 @@ class OsmNbiCharm(CharmBase): "OSMNBI_SERVER_SSL_CERTIFICATE": "", "OSMNBI_SERVER_SSL_PRIVATE_KEY": "", "OSMNBI_SERVER_SSL_PASS_PHRASE": "", + # Temporal configuration + "OSMNBI_TEMPORAL_HOST": self.temporal.host, + "OSMNBI_TEMPORAL_PORT": self.temporal.port, }, } },