예제 #1
0
  def get_cloud_params(self, keyname):
    """ Searches through the locations.json file with key
    'infrastructure_info' to build a dict containing the
    parameters necessary to interact with Google Compute Engine.

    Args:
      keyname: A str that uniquely identifies this AppScale deployment.
    Returns:
      A dict containing all of the credentials necessary to interact with
        Google Compute Engine.
    """
    params = {
      self.PARAM_GROUP : LocalState.get_group(keyname),
      self.PARAM_KEYNAME : keyname,
      self.PARAM_PROJECT : LocalState.get_project(keyname),
      self.PARAM_VERBOSE : False,  # TODO(cgb): Don't put False in here.
      self.PARAM_ZONE : LocalState.get_zone(keyname)
    }

    if os.path.exists(LocalState.get_client_secrets_location(keyname)):
      params[self.PARAM_SECRETS] = \
        LocalState.get_client_secrets_location(keyname)
    else:
      params[self.PARAM_STORAGE] = \
        LocalState.get_oauth2_storage_location(keyname)

    return params
예제 #2
0
    def get_cloud_params(self, keyname):
        """Searches through the locations.json file with key
    'infrastructure_info' to build a dict containing the
    parameters necessary to interact with Amazon EC2.

    Args:
      keyname: The name of the SSH keypair that uniquely identifies this
        AppScale deployment.
    """
        params = {
            self.PARAM_CREDENTIALS: {},
            self.PARAM_GROUP: LocalState.get_group(keyname),
            self.PARAM_KEYNAME: keyname
        }

        zone = LocalState.get_zone(keyname)
        if zone:
            params[self.PARAM_REGION] = zone[:-1]
        else:
            params[self.PARAM_REGION] = self.DEFAULT_REGION

        for credential in self.REQUIRED_CREDENTIALS:
            cred = LocalState.get_infrastructure_option(tag=credential,
                                                        keyname=keyname)
            if not cred:
                raise AgentConfigurationException("no " + credential)

            params[self.PARAM_CREDENTIALS][credential] = cred

        return params
예제 #3
0
  def get_cloud_params(self, keyname):
    """Searches through the locations.json file with key
    'infrastructure_info' to build a dict containing the
    parameters necessary to interact with Amazon EC2.

    Args:
      keyname: The name of the SSH keypair that uniquely identifies this
        AppScale deployment.
    """
    params = {
      self.PARAM_CREDENTIALS : {},
      self.PARAM_GROUP : LocalState.get_group(keyname),
      self.PARAM_KEYNAME : keyname
    }

    zone = LocalState.get_zone(keyname)
    if zone:
      params[self.PARAM_REGION] = zone[:-1]
    else:
      params[self.PARAM_REGION] = self.DEFAULT_REGION


    for credential in self.REQUIRED_CREDENTIALS:
      if os.environ.get(credential):
        params[self.PARAM_CREDENTIALS][credential] = os.environ[credential]
      else:
        raise AgentConfigurationException("no " + credential)

    return params
예제 #4
0
 def get_cloud_params(self, keyname):
   """ Searches through the locations.json file with key
   'infrastructure_info' to build a dict containing the
   parameters necessary to interact with Microsoft Azure.
   Args:
     keyname: A str that uniquely identifies this AppScale deployment.
   Returns:
     A dict containing all of the credentials necessary to interact with
       Microsoft Azure.
   """
   params = {
     self.PARAM_GROUP: LocalState.get_group(keyname),
     self.PARAM_KEYNAME: keyname,
     self.PARAM_VERBOSE: True,
     self.PARAM_ZONE: LocalState.get_zone(keyname),
     self.PARAM_SUBSCRIBER_ID: LocalState.get_subscription_id(keyname),
     self.PARAM_APP_ID: LocalState.get_app_id(keyname),
     self.PARAM_APP_SECRET: LocalState.get_app_secret_key(keyname),
     self.PARAM_TENANT_ID: LocalState.get_tenant_id(keyname),
     self.PARAM_RESOURCE_GROUP: LocalState.get_resource_group(keyname),
     self.PARAM_STORAGE_ACCOUNT: LocalState.get_storage_account(keyname),
   }
   return params
예제 #5
0
 def get_cloud_params(self, keyname):
     """ Searches through the locations.json file with key
 'infrastructure_info' to build a dict containing the
 parameters necessary to interact with Microsoft Azure.
 Args:
   keyname: A str that uniquely identifies this AppScale deployment.
 Returns:
   A dict containing all of the credentials necessary to interact with
     Microsoft Azure.
 """
     params = {
         self.PARAM_GROUP: LocalState.get_group(keyname),
         self.PARAM_KEYNAME: keyname,
         self.PARAM_VERBOSE: True,
         self.PARAM_ZONE: LocalState.get_zone(keyname),
         self.PARAM_SUBSCRIBER_ID: LocalState.get_subscription_id(keyname),
         self.PARAM_APP_ID: LocalState.get_app_id(keyname),
         self.PARAM_APP_SECRET: LocalState.get_app_secret_key(keyname),
         self.PARAM_TENANT_ID: LocalState.get_tenant_id(keyname),
         self.PARAM_RESOURCE_GROUP: LocalState.get_resource_group(keyname),
         self.PARAM_STORAGE_ACCOUNT:
         LocalState.get_storage_account(keyname),
     }
     return params