summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbhijeet Kasurde <akasurde@redhat.com>2017-05-08 21:49:36 +0530
committerToshio Kuratomi <a.badger@gmail.com>2017-09-11 15:46:12 -0700
commit46f75e0f3d361271e3ad0eb3f55f411a3f281739 (patch)
treef7e31b7418aa9b7e753f3d93c0852a880e5eb2b1
parent670b09224ffdd76859314aa0a004f1986928aeb2 (diff)
downloadansible-46f75e0f3d361271e3ad0eb3f55f411a3f281739.tar.gz
Refactor easy_install module
* PEP8 fix * Rectified string check in package install command stdout * Add abadger's code review changes Fixes #22245 Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com> (cherry picked from commit b5eca624d0029bc492a99525ac1ef0c2e469533e)
-rw-r--r--lib/ansible/modules/packaging/language/easy_install.py23
-rw-r--r--test/sanity/pep8/legacy-files.txt1
2 files changed, 14 insertions, 10 deletions
diff --git a/lib/ansible/modules/packaging/language/easy_install.py b/lib/ansible/modules/packaging/language/easy_install.py
index 699343f77a..a1b487f7c4 100644
--- a/lib/ansible/modules/packaging/language/easy_install.py
+++ b/lib/ansible/modules/packaging/language/easy_install.py
@@ -94,17 +94,23 @@ EXAMPLES = '''
import os
import os.path
import tempfile
-
from ansible.module_utils.basic import AnsibleModule
-def _is_package_installed(module, name, easy_install, executable_arguments):
- executable_arguments = executable_arguments + ['--dry-run']
+def install_package(module, name, easy_install, executable_arguments):
cmd = '%s %s %s' % (easy_install, ' '.join(executable_arguments), name)
- rc, status_stdout, status_stderr = module.run_command(cmd)
+ rc, out, err = module.run_command(cmd)
+ return rc, out, err
+
+
+def _is_package_installed(module, name, easy_install, executable_arguments):
+ # Copy and add to the arguments
+ executable_arguments = executable_arguments[:]
+ executable_arguments.append('--dry-run')
+ rc, out, err = install_package(module, name, easy_install, executable_arguments)
if rc:
- module.fail_json(msg=status_stderr)
- return not ('Reading' in status_stdout or 'Downloading' in status_stdout)
+ module.fail_json(msg=err)
+ return 'Downloading' not in out
def _get_easy_install(module, env=None, executable=None):
@@ -138,7 +144,7 @@ def main():
name=dict(required=True),
state=dict(required=False,
default='present',
- choices=['present','latest'],
+ choices=['present', 'latest'],
type='str'),
virtualenv=dict(default=None, required=False),
virtualenv_site_packages=dict(default='no', type='bool'),
@@ -186,8 +192,7 @@ def main():
if not installed:
if module.check_mode:
module.exit_json(changed=True)
- cmd = '%s %s %s' % (easy_install, ' '.join(executable_arguments), name)
- rc_easy_inst, out_easy_inst, err_easy_inst = module.run_command(cmd)
+ rc_easy_inst, out_easy_inst, err_easy_inst = install_package(module, name, easy_install, executable_arguments)
rc += rc_easy_inst
out += out_easy_inst
diff --git a/test/sanity/pep8/legacy-files.txt b/test/sanity/pep8/legacy-files.txt
index c59902b547..3f3eb44375 100644
--- a/test/sanity/pep8/legacy-files.txt
+++ b/test/sanity/pep8/legacy-files.txt
@@ -364,7 +364,6 @@ lib/ansible/modules/notification/slack.py
lib/ansible/modules/notification/twilio.py
lib/ansible/modules/packaging/language/bundler.py
lib/ansible/modules/packaging/language/cpanm.py
-lib/ansible/modules/packaging/language/easy_install.py
lib/ansible/modules/packaging/language/gem.py
lib/ansible/modules/packaging/language/maven_artifact.py
lib/ansible/modules/packaging/language/pear.py