Merge pull request #28473 from alprs/feature-cmd_check_output

Show check_cmd output on failure
This commit is contained in:
Mike Place 2015-11-02 07:15:30 -07:00
commit 5818b28c85
2 changed files with 16 additions and 7 deletions

View file

@ -4569,10 +4569,18 @@ def mod_run_check_cmd(cmd, filename, **check_cmd_opts):
log.debug('running our check_cmd')
_cmd = '{0} {1}'.format(cmd, filename)
if __salt__['cmd.retcode'](_cmd, **check_cmd_opts) != 0:
return {'comment': 'check_cmd execution failed',
'skip_watch': True,
'result': False}
cret = __salt__['cmd.run_all'](_cmd, **check_cmd_opts)
if cret['retcode'] != 0:
ret = {'comment': 'check_cmd execution failed',
'skip_watch': True,
'result': False}
if cret.get('stdout'):
ret['comment'] += '\n' + cret['stdout']
if cret.get('stderr'):
ret['comment'] += '\n' + cret['stderr']
return ret
# No reason to stop, return True
return True

View file

@ -416,6 +416,7 @@ class FileTestCase(TestCase):
mock_t = MagicMock(return_value=True)
mock_f = MagicMock(return_value=False)
mock_cmd_fail = MagicMock(return_value={'retcode': 1})
mock_uid = MagicMock(side_effect=['', 'U12', 'U12', 'U12', 'U12', 'U12',
'U12', 'U12', 'U12', 'U12', 'U12',
'U12', 'U12', 'U12', 'U12', 'U12'])
@ -447,7 +448,7 @@ class FileTestCase(TestCase):
'file.source_list': mock_file,
'file.copy': mock_cp,
'file.manage_file': mock_ex,
'cmd.retcode': mock_t}):
'cmd.run_all': mock_cmd_fail}):
comt = ('Must provide name to file.exists')
ret.update({'comment': comt, 'name': ''})
self.assertDictEqual(filestate.managed(''), ret)
@ -1580,8 +1581,8 @@ class FileTestCase(TestCase):
ret = {'comment': 'check_cmd execution failed',
'result': False, 'skip_watch': True}
mock = MagicMock(side_effect=[1, 0])
with patch.dict(filestate.__salt__, {'cmd.retcode': mock}):
mock = MagicMock(side_effect=[{'retcode': 1}, {'retcode': 0}])
with patch.dict(filestate.__salt__, {'cmd.run_all': mock}):
self.assertDictEqual(filestate.mod_run_check_cmd(cmd, filename),
ret)