mirror of
https://github.com/saltstack/salt.git
synced 2025-04-17 10:10:20 +00:00
Merge pull request #28473 from alprs/feature-cmd_check_output
Show check_cmd output on failure
This commit is contained in:
commit
5818b28c85
2 changed files with 16 additions and 7 deletions
|
@ -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
|
||||
|
|
|
@ -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)
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue