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)
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)
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)
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')
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)
def testParseConfigName(self): resource = util.ParseConfigName('foobar') self.assertEqual(resource.projectsId, 'test-project') self.assertEqual(resource.configsId, 'foobar') self.assertEqual(resource.Name(), 'foobar')