mirror of
https://github.com/saltstack/salt.git
synced 2025-04-17 10:10:20 +00:00
Merge pull request #24802 from basepi/merge-forward-2015.5
[2015.5] Merge forward from 2014.7 to 2015.5
This commit is contained in:
commit
ae05e70e94
4 changed files with 21 additions and 6 deletions
|
@ -37,6 +37,8 @@ def _srvmgr(func):
|
|||
def _parse_powershell_list(lst):
|
||||
'''
|
||||
Parse command output when piped to format-list
|
||||
Need to look at splitting with ':' so you can get the full value
|
||||
Need to check for error codes and return false if it's trying to parse
|
||||
'''
|
||||
ret = {}
|
||||
for line in lst.splitlines():
|
||||
|
@ -47,6 +49,7 @@ def _parse_powershell_list(lst):
|
|||
# baz}
|
||||
if len(splt) > 2:
|
||||
ret[splt[0]] = splt[2]
|
||||
ret['message'] = lst
|
||||
return ret
|
||||
|
||||
|
||||
|
|
|
@ -63,9 +63,17 @@ def installed(name, recurse=False, force=False):
|
|||
|
||||
# Install the features
|
||||
ret['changes'] = {'feature': __salt__['win_servermanager.install'](name, recurse)}
|
||||
ret['result'] = ret['changes']['feature']['Success'] == 'True'
|
||||
if not ret['result']:
|
||||
ret['comment'] = 'failed to install the feature: {0}'.format(ret['changes']['feature']['ExitCode'])
|
||||
|
||||
if 'Success' in ret['changes']['feature']:
|
||||
ret['result'] = ret['changes']['feature']['Success'] == 'True'
|
||||
if not ret['result']:
|
||||
ret['comment'] = 'Failed to install {0}: {1}'.format(name, ret['changes']['feature']['ExitCode'])
|
||||
else:
|
||||
ret['comment'] = 'Installed {0}'.format(name)
|
||||
else:
|
||||
ret['result'] = False
|
||||
ret['comment'] = 'Failed to install {0}.\nError Message:\n{1}'.format(name, ret['changes']['feature']['message'])
|
||||
ret['changes'] = {}
|
||||
|
||||
return ret
|
||||
|
||||
|
|
|
@ -63,7 +63,9 @@ class WinServermanagerTestCase(TestCase):
|
|||
Test if it install a feature.
|
||||
'''
|
||||
with patch.dict(win_servermanager.__salt__, {'cmd.run': self._m_run()}):
|
||||
self.assertDictEqual(win_servermanager.install('Telnet-Client'), {})
|
||||
self.assertDictEqual(win_servermanager.install('Telnet-Client'), {
|
||||
'message': ''
|
||||
})
|
||||
|
||||
# 'remove' function tests: 1
|
||||
|
||||
|
@ -72,7 +74,9 @@ class WinServermanagerTestCase(TestCase):
|
|||
Test if it remove an installed feature.
|
||||
'''
|
||||
with patch.dict(win_servermanager.__salt__, {'cmd.run': self._m_run()}):
|
||||
self.assertDictEqual(win_servermanager.remove('Telnet-Client'), {})
|
||||
self.assertDictEqual(win_servermanager.remove('Telnet-Client'), {
|
||||
'message': ''
|
||||
})
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
|
|
@ -56,7 +56,7 @@ class WinServermanagerTestCase(TestCase):
|
|||
|
||||
with patch.dict(win_servermanager.__opts__, {"test": False}):
|
||||
ret.update({'changes': {'feature': {'Success': 'True'}},
|
||||
'result': True})
|
||||
'result': True, 'comment': 'Installed salt'})
|
||||
self.assertDictEqual(win_servermanager.installed('salt'),
|
||||
ret)
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue