summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSeth Vidal <skvidal@fedoraproject.org>2013-02-01 12:39:02 -0500
committerSeth Vidal <skvidal@fedoraproject.org>2013-02-01 12:39:02 -0500
commit1c067845f21a31c46609a6fd973c8cf3b0cbfec1 (patch)
tree298126a89a9090a5052b5e4cf7102a02bbf930e6
parent5c26805ee78cd856bec94aa036848647c783b913 (diff)
downloadansible-1c067845f21a31c46609a6fd973c8cf3b0cbfec1.tar.gz
don't apply enablerepo's to is_installed() to work around yum-utils/repoquery drift from all things
good and proper
-rw-r--r--library/yum29
1 files changed, 23 insertions, 6 deletions
diff --git a/library/yum b/library/yum
index d992844de1..2d96136b8d 100644
--- a/library/yum
+++ b/library/yum
@@ -168,6 +168,13 @@ def is_available(module, repoq, pkgspec, conf_file, qf=def_qf, en_repos=[], dis_
return [ po_to_nevra(p) for p in pkgs ]
else:
+ for repoid in en_repos:
+ r_cmd = ['--enablerepo', repoid]
+ repoq.extend(r_cmd)
+
+ for repoid in dis_repos:
+ r_cmd = ['--disablerepo', repoid]
+ repoq.extend(r_cmd)
cmd = repoq + ["--qf", qf, pkgspec]
rc,out,err = module.run_command(cmd)
@@ -209,6 +216,14 @@ def is_update(module, repoq, pkgspec, conf_file, qf=def_qf, en_repos=[], dis_rep
return set([ po_to_nevra(p) for p in retpkgs ])
else:
+ for repoid in en_repos:
+ r_cmd = ['--enablerepo', repoid]
+ repoq.extend(r_cmd)
+
+ for repoid in dis_repos:
+ r_cmd = ['--disablerepo', repoid]
+ repoq.extend(r_cmd)
+
cmd = repoq + ["--pkgnarrow=updates", "--qf", qf, pkgspec]
rc,out,err = module.run_command(cmd)
@@ -247,6 +262,14 @@ def what_provides(module, repoq, req_spec, conf_file, qf=def_qf, en_repos=[], d
else:
+ for repoid in en_repos:
+ r_cmd = ['--enablerepo', repoid]
+ repoq.extend(r_cmd)
+
+ for repoid in dis_repos:
+ r_cmd = ['--disablerepo', repoid]
+ repoq.extend(r_cmd)
+
cmd = repoq + ["--qf", qf, "--whatprovides", req_spec]
rc,out,err = module.run_command(cmd)
cmd = repoq + ["--qf", qf, req_spec]
@@ -539,16 +562,10 @@ def ensure(module, state, pkgspec, conf_file, enablerepo, disablerepo):
r_cmd = ['--enablerepo', repoid]
yum_basecmd.extend(r_cmd)
- if repoq:
- repoq.extend(r_cmd)
-
for repoid in dis_repos:
r_cmd = ['--disablerepo', repoid]
yum_basecmd.extend(r_cmd)
- if repoq:
- repoq.extend(r_cmd)
-
if state in ['installed', 'present', 'latest']:
my = yum_base(conf_file)
try: