def admin_init(cls, id_credentials, prov_credentials): """ To be used instead of settings_init, Expects the following keys for each credentials dict: id_credentials: * Username * Password * (Tenant/Project) Name Prov_credentials: * region_name * auth_url """ try: username = id_credentials.pop('username') password = id_credentials.pop('password') tenant_name = id_credentials.pop('tenant_name') except: raise ServiceException( 'Settings init not available for this class:' 'Expected settings.OPENSTACK_ARGS with' 'username/password/tenant_name fields') OSProvider.set_meta() provider = OSProvider() identity = OSIdentity(provider, username, password, ex_tenant_name=tenant_name, **prov_credentials) driver = cls(provider, identity) return driver
def __init__(self, username=None, password=None, tenant_name=None, auth_url=None, region_name=None): provider = OSProvider() OSProvider.set_meta() hashed_password = sha1(username).hexdigest() identity = OSIdentity(provider, key=username, secret=password, user=username, auth_url=auth_url, password=hashed_password, region_name=region_name, ex_tenant_name=tenant_name) self.driver = OSDriver(provider, identity, ex_force_auth_url=auth_url)
def _build_admin_driver(self, **kwargs): #Set Meta OSProvider.set_meta() #TODO: Set location from kwargs provider = OSProvider(identifier=kwargs.get('location')) admin_creds = self._admin_identity_creds(**kwargs) #logger.info("ADMINID Creds:%s" % admin_creds) identity = OSIdentity(provider, **admin_creds) driver_creds = self._admin_driver_creds(**kwargs) #logger.info("ADMINDriver Creds:%s" % driver_creds) admin_driver = OSDriver(provider, identity, **driver_creds) return admin_driver
def settings_init(cls): """ DEPRECATED: """ os_args = copy.deepcopy(settings.OPENSTACK_ARGS) try: username = os_args.pop('username') password = os_args.pop('password') tenant_name = os_args.pop('tenant_name') except: raise ServiceException( 'Settings init not available for this class:' 'Expected settings.OPENSTACK_ARGS with' 'username/password/tenant_name fields') OSProvider.set_meta() provider = OSProvider() identity = OSIdentity(provider, username, password, ex_tenant_name=tenant_name, **settings.OPENSTACK_ARGS) driver = cls(provider, identity) return driver
""" Atmosphere service compute. """ from threepio import logger from rtwo import settings from rtwo.provider import AWSProvider, EucaProvider, OSProvider from rtwo.driver import EucaDriver, AWSDriver from libcloud.common.types import InvalidCredsError EucaProvider.set_meta() AWSProvider.set_meta() OSProvider.set_meta()
AWSDriver, key=settings.AWS_KEY, secret=settings.AWS_SECRET, user="******") def _initialize_euca(): if hasattr(settings, 'EUCA_ADMIN_KEY') \ and hasattr(settings, 'EUCA_ADMIN_SECRET'): _initialize_provider(EucaProvider(), EucaDriver, key=settings.EUCA_ADMIN_KEY, secret=settings.EUCA_ADMIN_SECRET, user="******") def initialize(): """ Initialize machines and sizes using an admin identity. NOTE: This is required to ensure Eucalyptus and AWS have valid information for sizes and machines. """ _initialize_euca() _initialize_aws() EucaProvider.set_meta() AWSProvider.set_meta() OSProvider.set_meta() initialize()
def __init__(self): # TODO: Figure out why this is needed OSProvider.set_meta() EucaProvider.set_meta()