X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=installers%2Fcharm%2Fosm-mon%2Fsrc%2Fcharm.py;h=176f896e415aeea861bd69dfcb3dc30ed654ca37;hb=569faee188f6cae10d0dc5c77b84b1e72f5b4456;hp=d926776bc122c68153482ae125326a884b7bd578;hpb=7292e6e1d24e1d20c3c92d6dd506e9d98b4e54e2;p=osm%2Fdevops.git diff --git a/installers/charm/osm-mon/src/charm.py b/installers/charm/osm-mon/src/charm.py index d926776b..176f896e 100755 --- a/installers/charm/osm-mon/src/charm.py +++ b/installers/charm/osm-mon/src/charm.py @@ -151,10 +151,15 @@ class OsmMonCharm(CharmBase): def _on_get_debug_mode_information_action(self, event: ActionEvent) -> None: """Handler for the get-debug-mode-information action event.""" if not self.debug_mode.started: - event.fail("debug-mode has not started. Hint: juju config mon debug-mode=true") + event.fail( + "debug-mode has not started. Hint: juju config mon debug-mode=true" + ) return - debug_info = {"command": self.debug_mode.command, "password": self.debug_mode.password} + debug_info = { + "command": self.debug_mode.command, + "password": self.debug_mode.password, + } event.set_results(debug_info) # --------------------------------------------------------------------------- @@ -174,9 +179,13 @@ class OsmMonCharm(CharmBase): # Action events self.on.get_debug_mode_information_action: self._on_get_debug_mode_information_action, } - for relation in [self.on[rel_name] for rel_name in ["mongodb", "prometheus", "keystone"]]: + for relation in [ + self.on[rel_name] for rel_name in ["mongodb", "prometheus", "keystone"] + ]: event_handler_mapping[relation.relation_changed] = self._on_config_changed - event_handler_mapping[relation.relation_broken] = self._on_required_relation_broken + event_handler_mapping[ + relation.relation_broken + ] = self._on_required_relation_broken for event, handler in event_handler_mapping.items(): self.framework.observe(event, handler) @@ -210,7 +219,9 @@ class OsmMonCharm(CharmBase): if missing_relations: relations_str = ", ".join(missing_relations) one_relation_missing = len(missing_relations) == 1 - error_msg = f'need {relations_str} relation{"" if one_relation_missing else "s"}' + error_msg = ( + f'need {relations_str} relation{"" if one_relation_missing else "s"}' + ) logger.warning(error_msg) raise CharmError(error_msg) @@ -225,10 +236,13 @@ class OsmMonCharm(CharmBase): environment = { # General configuration "OSMMON_GLOBAL_LOGLEVEL": self.config["log-level"], - "OSMMON_OPENSTACK_DEFAULT_GRANULARITY": self.config["openstack-default-granularity"], + "OSMMON_OPENSTACK_DEFAULT_GRANULARITY": self.config[ + "openstack-default-granularity" + ], "OSMMON_GLOBAL_REQUEST_TIMEOUT": self.config["global-request-timeout"], "OSMMON_COLLECTOR_INTERVAL": self.config["collector-interval"], "OSMMON_EVALUATOR_INTERVAL": self.config["evaluator-interval"], + "OSMMON_COLLECTOR_VM_INFRA_METRICS": self.config["vm-infra-metrics"], # Kafka configuration "OSMMON_MESSAGE_DRIVER": "kafka", "OSMMON_MESSAGE_HOST": self.kafka.host, @@ -239,15 +253,25 @@ class OsmMonCharm(CharmBase): "OSMMON_DATABASE_COMMONKEY": self.config["database-commonkey"], # Prometheus/grafana configuration "OSMMON_PROMETHEUS_URL": f"http://{self.prometheus_client.hostname}:{self.prometheus_client.port}", + "OSMMON_PROMETHEUS_USER": self.prometheus_client.user, + "OSMMON_PROMETHEUS_PASSWORD": self.prometheus_client.password, "OSMMON_GRAFANA_URL": self.config["grafana-url"], "OSMMON_GRAFANA_USER": self.config["grafana-user"], "OSMMON_GRAFANA_PASSWORD": self.config["grafana-password"], + "OSMMON_KEYSTONE_ENABLED": self.config["keystone-enabled"], + "OSMMON_KEYSTONE_URL": self.keystone_client.host, + "OSMMON_KEYSTONE_DOMAIN_NAME": self.keystone_client.user_domain_name, + "OSMMON_KEYSTONE_SERVICE_PROJECT": self.keystone_client.service, + "OSMMON_KEYSTONE_SERVICE_USER": self.keystone_client.username, + "OSMMON_KEYSTONE_SERVICE_PASSWORD": self.keystone_client.password, + "OSMMON_KEYSTONE_SERVICE_PROJECT_DOMAIN_NAME": self.keystone_client.project_domain_name, } + logger.info(f"{environment}") if self.vca.data: environment["OSMMON_VCA_HOST"] = self.vca.data.endpoints - environment["OSMMON_VCA_SECRET"] = self.vca.secret - environment["OSMMON_VCA_USER"] = self.vca.user - environment["OSMMON_VCA_CACERT"] = self.vca.cacert + environment["OSMMON_VCA_SECRET"] = self.vca.data.secret + environment["OSMMON_VCA_USER"] = self.vca.data.user + environment["OSMMON_VCA_CACERT"] = self.vca.data.cacert return { "summary": "mon layer", "description": "pebble config layer for mon",