X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=plstackapi%2Fopenstack%2Fsiteagent.py;h=dab9e8ad03fed1c2eea13a5a243807afda301b7b;hb=ed163d7e298e629f18131bde592fac6ae68ebc09;hp=98fedaebef7fb04603a23c192fe364e43e8a42a3;hpb=951dab466ef578ef99acb9ff38094bcee4d1bcf8;p=plstackapi.git diff --git a/plstackapi/openstack/siteagent.py b/plstackapi/openstack/siteagent.py index 98fedae..dab9e8a 100644 --- a/plstackapi/openstack/siteagent.py +++ b/plstackapi/openstack/siteagent.py @@ -1,20 +1,21 @@ import os +import sys os.environ.setdefault("DJANGO_SETTINGS_MODULE", "plstackapi.planetstack.settings") import time from plstackapi.core.models.site import Site -from plstackapi.openstack.driver import OpenStackDriver +from plstackapi.openstack.manager import OpenStackManager class SiteAgent: def run(self): - driver = OpenStackDriver() - # fill in null tenant ids - sites = Site.objects.filter(tenant_id__in=[None, '']) - for site in sites: - # calling save() on the model should force the tenant_id to be set - site.driver = driver - site.caller = driver.admin_user - site.caller.user_id = site.caller.id - site.save() + manager = OpenStackManager() + # exit if openstack is disable or unavailable + if manager.enabled and manager.has_openstack: + # fill in null tenant ids + sites = Site.objects.filter(tenant_id__in=[None, '']) + for site in sites: + # calling save() on the model should force the tenant_id to be set + site.os_manager = manager + site.save() if __name__ == '__main__': SiteAgent().run()