From f116ae29819e185a6818ef601b593d6bacabf1ba Mon Sep 17 00:00:00 2001 From: Tony Mack Date: Fri, 5 Dec 2014 16:50:45 -0500 Subject: [PATCH] renaming --- .../steps/sync_controller_site_deployments.py | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 planetstack/openstack_observer/steps/sync_controller_site_deployments.py diff --git a/planetstack/openstack_observer/steps/sync_controller_site_deployments.py b/planetstack/openstack_observer/steps/sync_controller_site_deployments.py new file mode 100644 index 0000000..89bea2c --- /dev/null +++ b/planetstack/openstack_observer/steps/sync_controller_site_deployments.py @@ -0,0 +1,37 @@ +import os +import base64 +from django.db.models import F, Q +from planetstack.config import Config +from observer.openstacksyncstep import OpenStackSyncStep +from core.models.site import * +from observer.ansible import * + +class SyncControllerSites(OpenStackSyncStep): + requested_interval=0 + provides=[ControllerSiteDeployments, SiteDeployments] + + def sync_record(self, controller_site_deployment): + + template = os_template_env.get_template('sync_controller_site_deployments.yaml') + tenant_fields = {'endpoint':controller_site_deployment.controller.auth_url, + 'admin_user': controller_site_deployment.controller.admin_user, + 'admin_password': controller_site_deployment.controller.admin_password, + 'admin_tenant': 'admin', + 'tenant': controller_site_deployment.site_deployment.site.login_base, + 'tenant_description': controller_site_deployment.site_deployment.site.name} + + rendered = template.render(tenant_fields) + res = run_template('sync_controller_site_deployments.yaml', tenant_fields) + + if (len(res)==1): + controller_site_deployment.tenant_id = res[0]['id'] + controller_site_deployment.save() + elif (len(res)): + raise Exception('Could not assign roles for user %s'%tenant_fields['tenant']) + else: + raise Exception('Could not create or update user %s'%tenant_fields['tenant']) + + def delete_record(self, controller_site_deployment): + if controller_site_deployment.tenant_id: + driver = self.driver.admin_driver(controller=controller_site_deployment.controller) + driver.delete_tenant(controller_site_deployment.tenant_id) -- 2.43.0