+ admin_driver = self.admin_driver(tenant=tenant, controller=controller)
+ client = OpenStackClient(tenant=tenant, controller=admin_driver.controller)
+
+ driver = OpenStackDriver(client=client)
+ #driver.admin_user = admin_driver.admin_user
+ #driver.controller = admin_driver.controller
+ return driver
+
+ def admin_driver(self, tenant=None, controller=None):
+ if isinstance(controller, int):
+ controller = Controller.objects.get(id=controller.id)
+ client = OpenStackClient(tenant=tenant, controller=controller, cacert=self.config.nova_ca_ssl_cert)
+ driver = OpenStackDriver(client=client)
+ driver.admin_user = client.keystone.users.find(name=controller.admin_user)
+ driver.controller = controller
+ return driver