From 55ae7796d9b52290a983dc1e528bd2e3333dad7d Mon Sep 17 00:00:00 2001 From: Ekaterina Fedorova Date: Tue, 10 Dec 2013 10:18:53 +0400 Subject: [PATCH] Add default endpoint in case it's not found in service catalog Change-Id: Ia4a06e32eeb1738afc75b4ad6ddec9432313910a --- muranoconductor/metadata.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/muranoconductor/metadata.py b/muranoconductor/metadata.py index 6685ce2..a86aa79 100644 --- a/muranoconductor/metadata.py +++ b/muranoconductor/metadata.py @@ -23,6 +23,8 @@ from muranoconductor import config from metadataclient.v1.client import Client import os from keystoneclient.v2_0 import client as ksclient +from keystoneclient.exceptions import EndpointNotFound + from openstack.common import log as logging CHUNK_SIZE = 1 << 20 # 1MB @@ -66,8 +68,15 @@ def get_endpoint(token_id, tenant_id): tenant_id=tenant_id, token=token_id) - endpoint = client.service_catalog.url_for( - service_type='murano-metadata') + try: + endpoint = client.service_catalog.url_for( + service_type='murano-metadata') + except EndpointNotFound: + endpoint = 'http://localhost:8084/v1' + log.warning( + 'Murano Metadata API location could not be found in the ' + 'Keystone Service Catalog, using default: {0}'.format( + endpoint)) return endpoint