Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes #6205 Add install_repoquery parameter to the yum module #6208

Merged
merged 7 commits into from Feb 27, 2014
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
17 changes: 17 additions & 0 deletions library/packaging/yum
Expand Up @@ -94,6 +94,7 @@ options:
default: "no"
choices: ["yes", "no"]
aliases: []

notes: []
# informational: requirements for nodes
requirements: [ yum, rpm ]
Expand Down Expand Up @@ -154,6 +155,17 @@ def yum_base(conf_file=None, cachedir=False):

return my

def install_yum_utils(module):

if not module.check_mode:
yum_path = module.get_bin_path('yum')
if yum_path:
rc, so, se = module.run_command('%s -y install yum-utils' % yum_path)
if rc == 0:
this_path = module.get_bin_path('repoquery')
global repoquery
repoquery = this_path

def po_to_nevra(po):

if hasattr(po, 'ui_nevra'):
Expand Down Expand Up @@ -789,13 +801,18 @@ def main():
list=dict(),
conf_file=dict(default=None),
disable_gpg_check=dict(required=False, default="no", type='bool'),
# this should not be needed, but exists as a failsafe
install_repoquery=dict(required=False, default="yes", type='bool'),
),
required_one_of = [['name','list']],
mutually_exclusive = [['name','list']],
supports_check_mode = True
)

# this should not be needed, but exists as a failsafe
params = module.params
if params['install_repoquery'] and not repoquery and not module.check_mode:
install_yum_utils(module)

if params['list']:
if not repoquery:
Expand Down