diff options
author | 2018-04-12 17:14:43 -0400 | |
---|---|---|
committer | 2018-04-12 17:14:43 -0400 | |
commit | 5a412c36b76f375aba863e3668ce6cb4f457e0d7 (patch) | |
tree | 60064e6e2d05bbab383161e17ef4c54d660d772f /dcae-policy/dcaepolicyplugin | |
parent | af26b8bb3e0145a093f84be270755cc2d475317e (diff) |
2.3.0 dcaepolicyplugin and data types
- discovering consul at consul:8500 instead of localhost:8500
- added and refactored unit tests for discovery -- coverage 78%
Change-Id: I3712fe36df47d6117206d61ca4916c4dbc42d035
Signed-off-by: Alex Shatov <alexs@att.com>
Issue-ID: DCAEGEN2-438
Diffstat (limited to 'dcae-policy/dcaepolicyplugin')
-rw-r--r-- | dcae-policy/dcaepolicyplugin/discovery.py | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/dcae-policy/dcaepolicyplugin/discovery.py b/dcae-policy/dcaepolicyplugin/discovery.py index 1faee08..0517377 100644 --- a/dcae-policy/dcaepolicyplugin/discovery.py +++ b/dcae-policy/dcaepolicyplugin/discovery.py @@ -23,10 +23,15 @@ import json import requests from cloudify import ctx +from cloudify.exceptions import NonRecoverableError -# it is safe to assume that consul agent is at localhost:8500 along with cloudify manager -CONSUL_SERVICE_URL = "http://localhost:8500/v1/catalog/service/{0}" -CONSUL_KV_MASK = "http://localhost:8500/v1/kv/{0}" +# it is safe to assume that consul agent is at consul:8500 +# define consul alis in /etc/hosts on cloudify manager vm +# $ cat /etc/hosts +# 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 consul + +CONSUL_SERVICE_URL = "http://consul:8500/v1/catalog/service/{0}" +CONSUL_KV_MASK = "http://consul:8500/v1/kv/{0}" def discover_service_url(service_name): @@ -34,7 +39,11 @@ def discover_service_url(service_name): service_url = CONSUL_SERVICE_URL.format(service_name) ctx.logger.info("getting service_url at {0}".format(service_url)) - response = requests.get(service_url) + try: + response = requests.get(service_url) + except requests.ConnectionError as ex: + raise NonRecoverableError( + "ConnectionError - failed to get {0}: {1}".format(service_url, str(ex))) ctx.logger.info("got {0} for service_url at {1} response: {2}" .format(response.status_code, service_url, response.text)) @@ -53,7 +62,11 @@ def discover_value(key): kv_url = CONSUL_KV_MASK.format(key) ctx.logger.info("getting kv at {0}".format(kv_url)) - response = requests.get(kv_url) + try: + response = requests.get(kv_url) + except requests.ConnectionError as ex: + raise NonRecoverableError( + "ConnectionError - failed to get {0}: {1}".format(kv_url, str(ex))) ctx.logger.info("got {0} for kv at {1} response: {2}" .format(response.status_code, kv_url, response.text)) |