def setup_maas(): try: maascreds = juju.get_credentials()['maas'][app.current_controller] except KeyError: raise Exception("Could not get credentials for " "maas controller {}".format(app.current_controller)) bc = juju.get_bootstrap_config(app.current_controller) endpoint = bc.get('endpoint', None) if endpoint is None: raise Exception("Couldn't find endpoint for controller".format( app.current_controller)) api_key = maascreds['maas-oauth'] try: consumer_key, token_key, token_secret = api_key.split(':') except: raise Exception("Could not parse MAAS API Key '{}'".format(api_key)) app.maas.endpoint = endpoint app.maas.api_key = api_key app.maas.client = MaasClient(server_address=endpoint, consumer_key=consumer_key, token_key=token_key, token_secret=token_secret)
def __init__(self): creds = juju.get_credentials().get(app.current_cloud, {}) creds.pop('default-region', None) self.default_credential = creds.pop('default-credential', None) self.credentials = sorted(creds.keys()) if len(self.credentials) == 1: self.default_credential = self.credentials[0] self.was_picker = False
def load_credentials(self): creds = juju.get_credentials().get(app.provider.cloud, {}) creds.pop('default-region', None) default_credential = creds.pop('default-credential', None) self.credentials = sorted(creds.keys()) if len(self.credentials) == 1: default_credential = self.credentials[0] if not app.provider.credential: app.provider.credential = default_credential self.was_picker = False
def default_region(self): if app.provider.cloud not in self._default_regions: app.provider.region = None if len(app.provider.regions) == 1: app.provider.region = list(app.provider.regions)[0] if not app.provider.region: creds = juju.get_credentials().get(app.provider.cloud, {}) app.provider.region = creds.get('default-region', None) if not app.provider.region: try: schema = load_schema(app.provider.cloud) app.provider.region = schema.default_region except Exception: # if we can't find a schema for this cloud, # just assume no default pass self._default_regions[app.provider.cloud] = app.provider.region return self._default_regions[app.provider.cloud]
def setup_maas(): try: maascreds = juju.get_credentials()['maas'][app.current_controller] except KeyError: raise Exception("Could not get credentials for " "maas controller {}".format(app.current_controller)) bc = juju.get_bootstrap_config(app.current_controller) endpoint = bc.get('endpoint', None) if endpoint is None: raise Exception("Couldn't find endpoint for controller".format( app.current_controller)) api_key = maascreds['maas-oauth'] try: consumer_key, token_key, token_secret = api_key.split(':') except: raise Exception("Could not parse MAAS API Key '{}'".format(api_key)) app.maas.client = MaasClient(server_address=endpoint, consumer_key=consumer_key, token_key=token_key, token_secret=token_secret)