yum: using install to update specified packages (#26266)

* yum: using install for update packages

* yum: fix return changed when latest version installed

* yum: fix changed when nothing to do
pull/28224/head
René Moser 7 years ago committed by Martin Krizek
parent a12e9807ba
commit d1fa210bed

@ -1093,15 +1093,19 @@ def latest(module, items, repoq, yum_basecmd, conf_file, en_repos, dis_repos, in
if len(pkgs['install']) > 0: # install missing if len(pkgs['install']) > 0: # install missing
cmd = yum_basecmd + ['install'] + pkgs['install'] cmd = yum_basecmd + ['install'] + pkgs['install']
rc, out, err = module.run_command(cmd) rc, out, err = module.run_command(cmd)
if not out.strip().lower().endswith("no packages marked for update"): out_lower = out.strip().lower()
if not out_lower.endswith("no packages marked for update") and \
not out_lower.endswith("nothing to do"):
res['changed'] = True res['changed'] = True
else: else:
rc, out, err = [0, '', ''] rc, out, err = [0, '', '']
if len(will_update) > 0: # update present if len(will_update) > 0: # update present
cmd = yum_basecmd + ['update'] + pkgs['update'] cmd = yum_basecmd + ['install'] + pkgs['update']
rc2, out2, err2 = module.run_command(cmd) rc2, out2, err2 = module.run_command(cmd)
if not out2.strip().lower().endswith("no packages marked for update"): out2_lower = out2.strip().lower()
if not out2_lower.endswith("no packages marked for update") and \
not out2_lower.endswith("nothing to do"):
res['changed'] = True res['changed'] = True
else: else:
rc2, out2, err2 = [0, '', ''] rc2, out2, err2 = [0, '', '']

Loading…
Cancel
Save