Add logic for test=True

This commit is contained in:
twangboy 2017-09-14 17:26:59 -06:00
parent c3d9e2d9b2
commit bcbf7b4e68

View file

@ -97,29 +97,49 @@ def installed(name, version=None, source=None, force=False, pre_versions=False,
ret['changes'] = {name: 'Version {0} will be installed'
''.format(version)}
else:
ret['changes'] = {name: 'Will be installed'}
ret['changes'] = {name: 'Latest version will be installed'}
# Package installed
else:
version_info = __salt__['chocolatey.version'](name, check_remote=True)
full_name = name
lower_name = name.lower()
for pkg in version_info:
if lower_name == pkg.lower():
if name.lower() == pkg.lower():
full_name = pkg
available_version = version_info[full_name]['available'][0]
version = version if version else available_version
installed_version = version_info[full_name]['installed'][0]
if force:
ret['changes'] = {name: 'Version {0} will be forcibly installed'
''.format(version)}
elif allow_multiple:
ret['changes'] = {name: 'Version {0} will be installed side by side'
''.format(version)}
if version:
if salt.utils.compare_versions(
ver1=installed_version, oper="==", ver2=version):
if force:
ret['changes'] = {name: 'Version {0} will be reinstalled'
''.format(version)}
else:
ret['comment'] = '{0} {1} is already installed' \
''.format(name, version)
return ret
else:
if allow_multiple:
ret['changes'] = {
name: 'Version {0} will be installed side by side with '
'Version {1} if supported'
''.format(version, installed_version)}
else:
ret['changes'] = {
name: 'Version {0} will be installed over Existing '
'Version {1}'.format(version, installed_version)}
force = True
else:
ret['comment'] = 'The Package {0} is already installed'.format(name)
return ret
version = installed_version
if force:
ret['changes'] = {name: 'Version {0} will be reinstalled'
''.format(version)}
else:
ret['comment'] = '{0} {1} is already installed' \
''.format(name, version)
return ret
if __opts__['test']:
ret['result'] = None