1 from plstackapi.openstack.client import OpenStackClient
2 from plstackapi.openstack.driver import OpenStackDriver
3 from plstackapi.planetstack.api.auth import auth_check
4 from plstackapi.planetstack.models import Site
7 def add_site(auth, fields):
8 driver = OpenStackDriver(client = auth_check(auth))
10 nova_fields = {'tenant_name': site.login_base,
11 'description': site.name,
12 'enabled': site.enabled}
13 tenant = driver.create_tenant(**nova_fields)
14 site.tenant_id=tenant.id
18 def update_site(auth, login_base, **fields):
19 driver = OpenStackDriver(client = auth_check(auth))
20 sites = Site.objects.filter(login_base=login_base)
26 if 'description' in fields:
27 nova_fields['description'] = fields['name']
28 if 'enabled' in fields:
29 nova_fields['enabled'] = fields['enabled']
30 driver.update_tenant(site.tenant_id, **nova_fields)
34 def delete_site(auth, filter={}):
35 driver = OpenStackDriver(client = auth_check(auth))
36 sites = Site.objects.filter(**filter)
38 driver.delete_tenant({'id': site.tenant_id})
42 def get_sites(auth, filter={}):
43 client = auth_check(auth)
44 sites = Site.objects.filter(**filter)