summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZoltan Kozma <zoltan.kozma@novastonemedia.com>2015-05-20 19:46:39 +0100
committerToshio Kuratomi <toshio@fedoraproject.org>2015-05-29 13:44:30 -0700
commit7f18a6513fc056660ed75548224a80df4b974317 (patch)
tree048883ae3aab969b7eb24ec2b9a18dfca716d1ae
parentb29763a0ae26e1355e5121e2e5ea81c0c296b137 (diff)
downloadansible-modules-core-7f18a6513fc056660ed75548224a80df4b974317.tar.gz
- Fixed annoying bug that disablerepo was essentially broken if a package needed updating by state latest.
- Replaced some unsafe practice with default parameters. However looking at the code this does not seem to matter much as the calling functions always seem to supply these parameters anyway.
-rw-r--r--packaging/os/yum.py31
1 files changed, 22 insertions, 9 deletions
diff --git a/packaging/os/yum.py b/packaging/os/yum.py
index f83119ef..a92d7134 100644
--- a/packaging/os/yum.py
+++ b/packaging/os/yum.py
@@ -26,6 +26,7 @@ import traceback
import os
import yum
import rpm
+import syslog
try:
from yum.misc import find_unfinished_transactions, find_ts_remaining
@@ -147,8 +148,6 @@ if not os.path.exists(repoquery):
yumbin='/usr/bin/yum'
-import syslog
-
def log(msg):
syslog.openlog('ansible-yum', 0, syslog.LOG_USER)
syslog.syslog(syslog.LOG_NOTICE, msg)
@@ -180,8 +179,11 @@ def po_to_nevra(po):
else:
return '%s-%s-%s.%s' % (po.name, po.version, po.release, po.arch)
-def is_installed(module, repoq, pkgspec, conf_file, qf=def_qf, en_repos=[], dis_repos=[], is_pkg=False):
-
+def is_installed(module, repoq, pkgspec, conf_file, qf=def_qf, en_repos=None, dis_repos=None, is_pkg=False):
+ if en_repos is None:
+ en_repos = []
+ if dis_repos is None:
+ dis_repos = []
if not repoq:
pkgs = []
@@ -219,7 +221,11 @@ def is_installed(module, repoq, pkgspec, conf_file, qf=def_qf, en_repos=[], dis_
return []
-def is_available(module, repoq, pkgspec, conf_file, qf=def_qf, en_repos=[], dis_repos=[]):
+def is_available(module, repoq, pkgspec, conf_file, qf=def_qf, en_repos=None, dis_repos=None):
+ if en_repos is None:
+ en_repos = []
+ if dis_repos is None:
+ dis_repos = []
if not repoq:
@@ -256,10 +262,13 @@ def is_available(module, repoq, pkgspec, conf_file, qf=def_qf, en_repos=[], dis_
else:
module.fail_json(msg='Error from repoquery: %s: %s' % (cmd, err))
-
return []
-def is_update(module, repoq, pkgspec, conf_file, qf=def_qf, en_repos=[], dis_repos=[]):
+def is_update(module, repoq, pkgspec, conf_file, qf=def_qf, en_repos=None, dis_repos=None):
+ if en_repos is None:
+ en_repos = []
+ if dis_repos is None:
+ dis_repos = []
if not repoq:
@@ -306,7 +315,11 @@ def is_update(module, repoq, pkgspec, conf_file, qf=def_qf, en_repos=[], dis_rep
return []
-def what_provides(module, repoq, req_spec, conf_file, qf=def_qf, en_repos=[], dis_repos=[]):
+def what_provides(module, repoq, req_spec, conf_file, qf=def_qf, en_repos=None, dis_repos=None):
+ if en_repos is None:
+ en_repos = []
+ if dis_repos is None:
+ dis_repos = []
if not repoq:
@@ -677,7 +690,7 @@ def latest(module, items, repoq, yum_basecmd, conf_file, en_repos, dis_repos):
nothing_to_do = False
break
- if basecmd == 'update' and is_update(module, repoq, this, conf_file, en_repos=en_repos, dis_repos=en_repos):
+ if basecmd == 'update' and is_update(module, repoq, this, conf_file, en_repos=en_repos, dis_repos=dis_repos):
nothing_to_do = False
break