From 720977cc63b9a3feef5b45e28ed8c4d818501269 Mon Sep 17 00:00:00 2001 From: Rudrajit Tapadar Date: Thu, 16 Jun 2016 17:08:44 -0700 Subject: [PATCH] Adds configurable nova endpoint type in svc monitor The current code of svc mon uses internalURL of the nova endpoint. In practice, the internalURL is not a mandatory endpoint type. Hence the code fails whenever internalURL is not configured. This change makes it configurable. Closes Bug: #1546356 Change-Id: I1a529f3b3ad416784559ec6a04d4775c0c43bcf9 --- src/config/svc-monitor/contrail-svc-monitor.conf | 1 + src/config/svc-monitor/svc_monitor/nova_client.py | 2 +- src/config/svc-monitor/svc_monitor/svc_monitor.py | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/config/svc-monitor/contrail-svc-monitor.conf b/src/config/svc-monitor/contrail-svc-monitor.conf index 44d662627f0..955b3f9de71 100644 --- a/src/config/svc-monitor/contrail-svc-monitor.conf +++ b/src/config/svc-monitor/contrail-svc-monitor.conf @@ -13,6 +13,7 @@ log_level=SYS_NOTICE #disc_server_port=5998 #region_name=None cassandra_server_list=127.0.0.1:9160 +#nova_endpoint_type=publicURL [SECURITY] #use_certs=False diff --git a/src/config/svc-monitor/svc_monitor/nova_client.py b/src/config/svc-monitor/svc_monitor/nova_client.py index 02c19afc9b9..eaf17451319 100644 --- a/src/config/svc-monitor/svc_monitor/nova_client.py +++ b/src/config/svc-monitor/svc_monitor/nova_client.py @@ -23,7 +23,7 @@ def _novaclient_get(self, proj_name, reauthenticate=False): api_key=self._args.admin_password, region_name=self._args.region_name, service_type='compute', auth_url=auth_url, insecure=self._args.auth_insecure, cacert=self._kscert, - endpoint_type='internalURL') + endpoint_type=self._args.nova_endpoint_type) return self._nova[proj_name] def _novaclient_exec(self, resource, oper, proj_name, diff --git a/src/config/svc-monitor/svc_monitor/svc_monitor.py b/src/config/svc-monitor/svc_monitor/svc_monitor.py index cbef3bddbca..49089964120 100644 --- a/src/config/svc-monitor/svc_monitor/svc_monitor.py +++ b/src/config/svc-monitor/svc_monitor/svc_monitor.py @@ -1051,7 +1051,8 @@ def parse_args(args_str): 'logging_conf': '', 'logger_class': None, 'sandesh_send_rate_limit' : SandeshSystem.get_sandesh_send_rate_limit(), - } + 'nova_endpoint_type': 'internalURL', + } secopts = { 'use_certs': False, 'keyfile': '',