diff options
author | Steven Hardy <shardy@redhat.com> | 2016-06-08 13:02:40 +0100 |
---|---|---|
committer | Steven Hardy <shardy@redhat.com> | 2016-07-21 22:58:36 +0100 |
commit | 3ae1c3e7159b5a9f02f81638efc87afa137c7a31 (patch) | |
tree | b25a0229bc15664e9bce6e04d9e1239dbcffbc5f /heatclient/osc | |
parent | 1c85ce9f5ae8da5eee987f99872c0d1aa9fb0f3c (diff) | |
download | python-heatclient-3ae1c3e7159b5a9f02f81638efc87afa137c7a31.tar.gz |
Add support for stack file list
This shows the files map for a given stack
Depends-On: I3198b6a7dc06648af24c198d39470f3b0d5d6f11
Change-Id: Ib7d033a660fe294bf3f7b42e4aa7020149ce24c1
blueprint: files-show
Diffstat (limited to 'heatclient/osc')
-rw-r--r-- | heatclient/osc/v1/stack.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/heatclient/osc/v1/stack.py b/heatclient/osc/v1/stack.py index 79203ce..5ecf843 100644 --- a/heatclient/osc/v1/stack.py +++ b/heatclient/osc/v1/stack.py @@ -543,6 +543,34 @@ class EnvironmentShowStack(format_utils.YamlFormat): return columns, data +class ListFileStack(format_utils.YamlFormat): + """Show a stack's files map.""" + + log = logging.getLogger(__name__) + + def get_parser(self, prog_name): + parser = super(ListFileStack, self).get_parser(prog_name) + parser.add_argument( + 'stack', + metavar='<NAME or ID>', + help=_('Name or ID of stack to query') + ) + return parser + + def take_action(self, parsed_args): + self.log.debug('take_action(%s)', parsed_args) + + client = self.app.client_manager.orchestration + + try: + files = client.stacks.files(stack_id=parsed_args.stack) + except heat_exc.HTTPNotFound: + msg = _('Stack not found: %s') % parsed_args.stack + raise exc.CommandError(msg) + + return ['files'], [files] + + def _list(client, args=None): kwargs = {} columns = [ |