From 55d037b0ddf538b6a893d7c7488d9cef364caba1 Mon Sep 17 00:00:00 2001
From: Tim Kuhlman <tim.kuhlman@hp.com>
Date: Mon, 18 May 2015 16:29:32 -0600
Subject: [PATCH] Make the region configurable

---
 defaults/main.yml                      | 1 +
 templates/create_monasca_service.py.j2 | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/defaults/main.yml b/defaults/main.yml
index 0f85b0e..e09beb8 100644
--- a/defaults/main.yml
+++ b/defaults/main.yml
@@ -1,4 +1,5 @@
 keystone_url: http://127.0.0.1:35357/v2.0
+keystone_region: RegionOne
 keystone_cacert_location: /var/tmp
 keystone_users:
   - username: monasca-agent
diff --git a/templates/create_monasca_service.py.j2 b/templates/create_monasca_service.py.j2
index a9589fd..3121335 100644
--- a/templates/create_monasca_service.py.j2
+++ b/templates/create_monasca_service.py.j2
@@ -98,7 +98,7 @@ def add_user_roles(key, users):
     key.roles.add_user_role(keystone_user, role, tenant)
   return True
 
-def add_service_endpoint(key, name, description, type, url):
+def add_service_endpoint(key, name, description, type, url, region):
   """Add the Monasca service to the catalog with the specified endpoint, if it doesn't yet exist."""
   service_names = { service.name: service.id for service in key.services.list() }
   if name in service_names.keys():
@@ -114,7 +114,7 @@ def add_service_endpoint(key, name, description, type, url):
       else:
         key.endpoints.delete(endpoint.id)
 
-  key.endpoints.create(region="RegionOne", service_id=service_id, publicurl=url, adminurl=url, internalurl=url)
+  key.endpoints.create(region=region, service_id=service_id, publicurl=url, adminurl=url, internalurl=url)
   return True
 
 
@@ -174,7 +174,7 @@ def main():
   if not add_user_roles(key, users):
     return 1
 
-  if add_service_endpoint(key, 'monasca', 'Monasca monitoring service', 'monitoring', '{{ monasca_api_url }}'):
+  if add_service_endpoint(key, 'monasca', 'Monasca monitoring service', 'monitoring', '{{ monasca_api_url }}', '{{ keystone_region }}'):
     return 0
   else:
     return 1