blob: 5d1bfaf7ce4eb3e18f8d55d917e081541f757b11 [file] [log] [blame]
from plstackapi.openstack.client import OpenStackClient
from plstackapi.openstack.driver import OpenStackDriver
from plstackapi.planetstack.models import *
def auth_check(auth):
client = OpenStackDriver(username=auth['Username'],
password=auth['AuthMethod'],
tenant=auth['LoginBase'])
client.authenticate()
return client
def add_role(auth, name):
client = auth_check(auth)
keystone_role = client.keystone.roles.create(name)
role = Role(role_type=name, role_id=keystone_role.id)
role.save()
return role
def delete_role(auth, name):
client = auth_check(auth)
role = Role.objects.filter(role_type=name)
client.keystone.roles.delete(role.role_id)
role.delete()
return 1
def get_roles(auth, filter={}):
client = auth_check(auth)
roles = Role.objects.filter(**filter)
return roles