Ejemplo n.º 1
0
    def Run(self, args):
        """Run 'runtime-configs waiters list'.

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

    Yields:
      The list of waiters.

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

        config_resource = util.ParseConfigName(util.ConfigName(args))

        request = messages.RuntimeconfigProjectsConfigsWaitersListRequest(
            parent=config_resource.RelativeName(), )

        page_size = args.page_size or self.DEFAULT_PAGE_SIZE

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

        for result in results:
            yield util.FormatWaiter(result)
Ejemplo n.º 2
0
    def Run(self, args):
        """Run 'runtime-configs update'.

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

    Returns:
      The updated 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)

        result = config_client.Update(
            messages.RuntimeConfig(
                name=config_resource.RelativeName(),
                description=args.description,
            ))

        log.UpdatedResource(config_resource)
        return util.FormatConfig(result)
Ejemplo n.º 3
0
  def Run(self, args):
    """Run 'runtime-configs variables list'.

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

    Yields:
      The list of variables.

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

    config_resource = util.ParseConfigName(util.ConfigName(args))

    self._display_values = args.values

    request = messages.RuntimeconfigProjectsConfigsVariablesListRequest(
        parent=config_resource.RelativeName(),
        returnValues=self._display_values)

    page_size = args.page_size or self.DEFAULT_PAGE_SIZE

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

    for result in results:
      yield util.FormatVariable(result, self._display_values)
Ejemplo n.º 4
0
 def testParseConfigNameHttp(self):
     url = (
         'https://runtimeconfig.googleapis.com/v1beta1/projects/other-proj'
         '/configs/other-config')
     resource = util.ParseConfigName(url)
     self.assertEqual(resource.projectsId, 'other-proj')
     self.assertEqual(resource.configsId, 'other-config')
     self.assertEqual(resource.Name(), 'other-config')
Ejemplo n.º 5
0
    def Run(self, args):
        """Run 'runtime-configs delete'.

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

    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)

        config_client.Delete(
            messages.RuntimeconfigProjectsConfigsDeleteRequest(
                name=config_resource.RelativeName(), ))

        log.DeletedResource(config_resource)
Ejemplo n.º 6
0
 def testParseConfigName(self):
     resource = util.ParseConfigName('foobar')
     self.assertEqual(resource.projectsId, 'test-project')
     self.assertEqual(resource.configsId, 'foobar')
     self.assertEqual(resource.Name(), 'foobar')