Beispiel #1
0
    def Run(self, args):
        """Run 'runtime-configs list'.

    Args:
      args: argparse.Namespace, The arguments that this command was invoked
          with.

    Yields:
      The list of runtime-config resources.

    Raises:
      HttpException: An http error response was received while executing api
          request.
    """
        config_client = util.ConfigClient()
        messages = util.Messages()
        project = util.Project()

        request = messages.RuntimeconfigProjectsConfigsListRequest(
            parent=util.ProjectPath(project), )

        page_size = args.page_size or self.DEFAULT_PAGE_SIZE

        results = list_pager.YieldFromList(
            config_client,
            request,
            field='configs',
            batch_size_attribute='pageSize',
            limit=args.limit,
            batch_size=page_size,
        )

        for result in results:
            yield util.FormatConfig(result)
Beispiel #2
0
    def Run(self, args):
        """Run 'runtime-configs create'.

    Args:
      args: argparse.Namespace, The arguments that this command was invoked
          with.

    Returns:
      The new runtime-config resource.

    Raises:
      HttpException: An http error response was received while executing api
          request.
    """
        config_client = util.ConfigClient()
        messages = util.Messages()

        config_resource = util.ParseConfigName(args.name)
        project = config_resource.projectsId

        result = config_client.Create(
            messages.RuntimeconfigProjectsConfigsCreateRequest(
                parent=util.ProjectPath(project),
                runtimeConfig=messages.RuntimeConfig(
                    name=config_resource.RelativeName(),
                    description=args.description,
                )))

        log.CreatedResource(config_resource)
        return util.FormatConfig(result)
Beispiel #3
0
def ListRegions():
    """Get the list of all available regions from control plane.

  Returns:
    A list of str, which are regions.
  """
    client = apis.GetClientInstance(SERVERLESS_API_NAME,
                                    SERVERLESS_API_VERSION)
    project_resource_relname = util.ProjectPath(
        properties.VALUES.core.project.Get(required=True))
    response = client.projects_locations.List(
        client.MESSAGES_MODULE.RunProjectsLocationsListRequest(
            name=project_resource_relname, pageSize=100))
    return [l.locationId for l in response.locations]
Beispiel #4
0
def ListLocations(client):
    """Get the list of all available regions from control plane.

  Args:
    client: (base_api.BaseApiClient), instance of a client to use for the list
      request.

  Returns:
    A list of location resources.
  """
    project_resource_relname = util.ProjectPath(
        properties.VALUES.core.project.Get(required=True))
    return client.projects_locations.List(
        client.MESSAGES_MODULE.RunProjectsLocationsListRequest(
            name=project_resource_relname, pageSize=100)).locations
Beispiel #5
0
def ListVerifiedDomains(client):
    """Get all verified domains.

  Args:
    client: (base_api.BaseApiClient), instance of a client to use for the list
      request.

  Returns:
    List of client.MESSAGES_MODULE.AuthorizedDomain objects
  """
    project_resource_relname = util.ProjectPath(
        properties.VALUES.core.project.Get(required=True))
    request = client.MESSAGES_MODULE.RunProjectsAuthorizeddomainsListRequest(
        parent=project_resource_relname)
    response = client.projects_authorizeddomains.List(request)
    return response.domains
Beispiel #6
0
    def List(self, limit, page_size):
        """List locations in the Eventarc API.

    Args:
      limit: int or None, the total number of results to return.
      page_size: int, the number of entries in each batch (affects requests
        made, but not the yielded results).

    Returns:
      Generator of locations.
    """
        project_resource_relname = util.ProjectPath(
            properties.VALUES.core.project.Get(required=True))
        list_req = self.messages.EventarcProjectsLocationsListRequest(
            name=project_resource_relname)
        return list_pager.YieldFromList(self._service,
                                        list_req,
                                        field='locations',
                                        batch_size=page_size,
                                        limit=limit,
                                        batch_size_attribute='pageSize')
Beispiel #7
0
 def testProjectPath(self):
     self.assertEqual('projects/my-project', util.ProjectPath('my-project'))