Provide workflow input
* Works in workflow commands Closes-bug: #1379677 Change-Id: I206cbe79dea93ae2a3cb9ee65c15a388ed0fda5e
This commit is contained in:
@@ -26,13 +26,6 @@ from mistralclient.commands.v2 import base
|
||||
LOG = logging.getLogger(__name__)
|
||||
|
||||
|
||||
def _cut(string, length=25):
|
||||
if string and len(string) > length:
|
||||
return "%s..." % string[:length]
|
||||
else:
|
||||
return string
|
||||
|
||||
|
||||
def format_list(action=None):
|
||||
return format(action, lister=True)
|
||||
|
||||
@@ -50,8 +43,9 @@ def format(action=None, lister=False):
|
||||
|
||||
if action:
|
||||
tags = getattr(action, 'tags', None) or []
|
||||
input = action.input if not lister else _cut(action.input)
|
||||
desc = action.description if not lister else _cut(action.description)
|
||||
input = action.input if not lister else base.cut(action.input)
|
||||
desc = (action.description if not lister
|
||||
else base.cut(action.description))
|
||||
|
||||
data = (
|
||||
action.name,
|
||||
|
@@ -46,3 +46,10 @@ class MistralLister(lister.Lister):
|
||||
return f()[0], data
|
||||
else:
|
||||
return f()
|
||||
|
||||
|
||||
def cut(string, length=25):
|
||||
if string and len(string) > length:
|
||||
return "%s..." % string[:length]
|
||||
else:
|
||||
return string
|
||||
|
@@ -26,10 +26,15 @@ from mistralclient.commands.v2 import base
|
||||
LOG = logging.getLogger(__name__)
|
||||
|
||||
|
||||
def format(workflow=None):
|
||||
def format_list(workflow=None):
|
||||
return format(workflow, lister=True)
|
||||
|
||||
|
||||
def format(workflow=None, lister=False):
|
||||
columns = (
|
||||
'Name',
|
||||
'Tags',
|
||||
'Input',
|
||||
'Created at',
|
||||
'Updated at'
|
||||
)
|
||||
@@ -40,6 +45,7 @@ def format(workflow=None):
|
||||
data = (
|
||||
workflow.name,
|
||||
', '.join(tags) or '<none>',
|
||||
workflow.input if not lister else base.cut(workflow.input),
|
||||
workflow.created_at
|
||||
)
|
||||
|
||||
@@ -57,7 +63,7 @@ class List(base.MistralLister):
|
||||
"""List all workflows."""
|
||||
|
||||
def _get_format_function(self):
|
||||
return format
|
||||
return format_list
|
||||
|
||||
def _get_resources(self, parsed_args):
|
||||
return workflows.WorkflowManager(self.app.client).list()
|
||||
|
@@ -25,6 +25,7 @@ from mistralclient.api.v2 import workflows
|
||||
WORKFLOW_DICT = {
|
||||
'name': 'a',
|
||||
'tags': ['a', 'b'],
|
||||
'input': 'param',
|
||||
'created_at': '1',
|
||||
'updated_at': '1'
|
||||
}
|
||||
@@ -52,7 +53,7 @@ class TestCLIWorkflowsV2(base.BaseCommandTest):
|
||||
|
||||
result = self.call(workflow_cmd.Create, app_args=['1.txt'])
|
||||
|
||||
self.assertEqual([('a', 'a, b', '1', '1')], result[1])
|
||||
self.assertEqual([('a', 'a, b', 'param', '1', '1')], result[1])
|
||||
|
||||
@mock.patch('argparse.open', create=True)
|
||||
@mock.patch('mistralclient.api.v2.workflows.WorkflowManager.update')
|
||||
@@ -61,7 +62,7 @@ class TestCLIWorkflowsV2(base.BaseCommandTest):
|
||||
|
||||
result = self.call(workflow_cmd.Update, app_args=['1.txt'])
|
||||
|
||||
self.assertEqual([('a', 'a, b', '1', '1')], result[1])
|
||||
self.assertEqual([('a', 'a, b', 'param', '1', '1')], result[1])
|
||||
|
||||
@mock.patch('mistralclient.api.v2.workflows.WorkflowManager.list')
|
||||
def test_list(self, mock):
|
||||
@@ -69,7 +70,7 @@ class TestCLIWorkflowsV2(base.BaseCommandTest):
|
||||
|
||||
result = self.call(workflow_cmd.List)
|
||||
|
||||
self.assertEqual([('a', 'a, b', '1', '1')], result[1])
|
||||
self.assertEqual([('a', 'a, b', 'param', '1', '1')], result[1])
|
||||
|
||||
@mock.patch('mistralclient.api.v2.workflows.WorkflowManager.get')
|
||||
def test_get(self, mock):
|
||||
@@ -77,7 +78,7 @@ class TestCLIWorkflowsV2(base.BaseCommandTest):
|
||||
|
||||
result = self.call(workflow_cmd.Get, app_args=['name'])
|
||||
|
||||
self.assertEqual(('a', 'a, b', '1', '1'), result[1])
|
||||
self.assertEqual(('a', 'a, b', 'param', '1', '1'), result[1])
|
||||
|
||||
@mock.patch('mistralclient.api.v2.workflows.WorkflowManager.delete')
|
||||
def test_delete(self, mock):
|
||||
|
Reference in New Issue
Block a user