summaryrefslogtreecommitdiff
path: root/lib/ansible/modules/packaging/language
diff options
context:
space:
mode:
Diffstat (limited to 'lib/ansible/modules/packaging/language')
-rw-r--r--lib/ansible/modules/packaging/language/bundler.py6
-rw-r--r--lib/ansible/modules/packaging/language/cpanm.py21
-rw-r--r--lib/ansible/modules/packaging/language/gem.py50
-rw-r--r--lib/ansible/modules/packaging/language/maven_artifact.py37
-rw-r--r--lib/ansible/modules/packaging/language/pear.py19
5 files changed, 69 insertions, 64 deletions
diff --git a/lib/ansible/modules/packaging/language/bundler.py b/lib/ansible/modules/packaging/language/bundler.py
index 88013b6ed4..a82394829e 100644
--- a/lib/ansible/modules/packaging/language/bundler.py
+++ b/lib/ansible/modules/packaging/language/bundler.py
@@ -13,7 +13,7 @@ ANSIBLE_METADATA = {'metadata_version': '1.1',
'supported_by': 'community'}
-DOCUMENTATION='''
+DOCUMENTATION = '''
---
module: bundler
short_description: Manage Ruby Gem dependencies with Bundler
@@ -104,7 +104,7 @@ options:
author: "Tim Hoiberg (@thoiberg)"
'''
-EXAMPLES='''
+EXAMPLES = '''
# Installs gems from a Gemfile in the current directory
- bundler:
state: present
@@ -159,7 +159,7 @@ def main():
extra_args=dict(default=None, required=False),
),
supports_check_mode=True
- )
+ )
state = module.params.get('state')
chdir = module.params.get('chdir')
diff --git a/lib/ansible/modules/packaging/language/cpanm.py b/lib/ansible/modules/packaging/language/cpanm.py
index 3195775561..fcd22b6812 100644
--- a/lib/ansible/modules/packaging/language/cpanm.py
+++ b/lib/ansible/modules/packaging/language/cpanm.py
@@ -141,6 +141,7 @@ def _is_package_installed(module, name, locallib, cpanm, version):
res, stdout, stderr = module.run_command(cmd, check_rc=False)
return res == 0
+
def _build_cmd_line(name, from_path, notest, locallib, mirror, mirror_only, installdeps, cpanm, use_sudo):
# this code should use "%s" like everything else and just return early but not fixing all of it now.
# don't copy stuff like this
@@ -197,23 +198,23 @@ def main():
required_one_of=[['name', 'from_path']],
)
- cpanm = _get_cpanm_path(module)
- name = module.params['name']
- from_path = module.params['from_path']
- notest = module.boolean(module.params.get('notest', False))
- locallib = module.params['locallib']
- mirror = module.params['mirror']
+ cpanm = _get_cpanm_path(module)
+ name = module.params['name']
+ from_path = module.params['from_path']
+ notest = module.boolean(module.params.get('notest', False))
+ locallib = module.params['locallib']
+ mirror = module.params['mirror']
mirror_only = module.params['mirror_only']
installdeps = module.params['installdeps']
- use_sudo = module.params['system_lib']
- version = module.params['version']
+ use_sudo = module.params['system_lib']
+ version = module.params['version']
- changed = False
+ changed = False
installed = _is_package_installed(module, name, locallib, cpanm, version)
if not installed:
- cmd = _build_cmd_line(name, from_path, notest, locallib, mirror, mirror_only, installdeps, cpanm, use_sudo)
+ cmd = _build_cmd_line(name, from_path, notest, locallib, mirror, mirror_only, installdeps, cpanm, use_sudo)
rc_cpanm, out_cpanm, err_cpanm = module.run_command(cmd, check_rc=False)
diff --git a/lib/ansible/modules/packaging/language/gem.py b/lib/ansible/modules/packaging/language/gem.py
index 900b3ac696..4e27004024 100644
--- a/lib/ansible/modules/packaging/language/gem.py
+++ b/lib/ansible/modules/packaging/language/gem.py
@@ -121,8 +121,9 @@ def get_rubygems_path(module):
result = [module.get_bin_path('gem', True)]
return result
+
def get_rubygems_version(module):
- cmd = get_rubygems_path(module) + [ '--version' ]
+ cmd = get_rubygems_path(module) + ['--version']
(rc, out, err) = module.run_command(cmd, check_rc=True)
match = re.match(r'^(\d+)\.(\d+)\.(\d+)', out)
@@ -131,6 +132,7 @@ def get_rubygems_version(module):
return tuple(int(x) for x in match.groups())
+
def get_installed_versions(module, remote=False):
cmd = get_rubygems_path(module)
@@ -138,7 +140,7 @@ def get_installed_versions(module, remote=False):
if remote:
cmd.append('--remote')
if module.params['repository']:
- cmd.extend([ '--source', module.params['repository'] ])
+ cmd.extend(['--source', module.params['repository']])
cmd.append('-n')
cmd.append('^%s$' % module.params['name'])
(rc, out, err) = module.run_command(cmd, check_rc=True)
@@ -151,6 +153,7 @@ def get_installed_versions(module, remote=False):
installed_versions.append(version.split()[0])
return installed_versions
+
def exists(module):
if module.params['state'] == 'latest':
@@ -166,6 +169,7 @@ def exists(module):
return True
return False
+
def uninstall(module):
if module.check_mode:
@@ -173,13 +177,14 @@ def uninstall(module):
cmd = get_rubygems_path(module)
cmd.append('uninstall')
if module.params['version']:
- cmd.extend([ '--version', module.params['version'] ])
+ cmd.extend(['--version', module.params['version']])
else:
cmd.append('--all')
cmd.append('--executable')
cmd.append(module.params['name'])
module.run_command(cmd, check_rc=True)
+
def install(module):
if module.check_mode:
@@ -194,9 +199,9 @@ def install(module):
cmd = get_rubygems_path(module)
cmd.append('install')
if module.params['version']:
- cmd.extend([ '--version', module.params['version'] ])
+ cmd.extend(['--version', module.params['version']])
if module.params['repository']:
- cmd.extend([ '--source', module.params['repository'] ])
+ cmd.extend(['--source', module.params['repository']])
if not module.params['include_dependencies']:
cmd.append('--ignore-dependencies')
else:
@@ -218,28 +223,29 @@ def install(module):
cmd.append('--env-shebang')
cmd.append(module.params['gem_source'])
if module.params['build_flags']:
- cmd.extend([ '--', module.params['build_flags'] ])
+ cmd.extend(['--', module.params['build_flags']])
module.run_command(cmd, check_rc=True)
+
def main():
module = AnsibleModule(
- argument_spec = dict(
- executable = dict(required=False, type='path'),
- gem_source = dict(required=False, type='path'),
- include_dependencies = dict(required=False, default=True, type='bool'),
- name = dict(required=True, type='str'),
- repository = dict(required=False, aliases=['source'], type='str'),
- state = dict(required=False, default='present', choices=['present','absent','latest'], type='str'),
- user_install = dict(required=False, default=True, type='bool'),
- pre_release = dict(required=False, default=False, type='bool'),
- include_doc = dict(required=False, default=False, type='bool'),
- env_shebang = dict(required=False, default=False, type='bool'),
- version = dict(required=False, type='str'),
- build_flags = dict(required=False, type='str'),
+ argument_spec=dict(
+ executable=dict(required=False, type='path'),
+ gem_source=dict(required=False, type='path'),
+ include_dependencies=dict(required=False, default=True, type='bool'),
+ name=dict(required=True, type='str'),
+ repository=dict(required=False, aliases=['source'], type='str'),
+ state=dict(required=False, default='present', choices=['present', 'absent', 'latest'], type='str'),
+ user_install=dict(required=False, default=True, type='bool'),
+ pre_release=dict(required=False, default=False, type='bool'),
+ include_doc=dict(required=False, default=False, type='bool'),
+ env_shebang=dict(required=False, default=False, type='bool'),
+ version=dict(required=False, type='str'),
+ build_flags=dict(required=False, type='str'),
),
- supports_check_mode = True,
- mutually_exclusive = [ ['gem_source','repository'], ['gem_source','version'] ],
+ supports_check_mode=True,
+ mutually_exclusive=[['gem_source', 'repository'], ['gem_source', 'version']],
)
if module.params['version'] and module.params['state'] == 'latest':
@@ -252,7 +258,7 @@ def main():
changed = False
- if module.params['state'] in [ 'present', 'latest']:
+ if module.params['state'] in ['present', 'latest']:
if not exists(module):
install(module)
changed = True
diff --git a/lib/ansible/modules/packaging/language/maven_artifact.py b/lib/ansible/modules/packaging/language/maven_artifact.py
index 540b63a458..2a8cd8bbc2 100644
--- a/lib/ansible/modules/packaging/language/maven_artifact.py
+++ b/lib/ansible/modules/packaging/language/maven_artifact.py
@@ -315,12 +315,12 @@ class MavenDownloader:
def _request(self, url, failmsg, f):
url_to_use = url
parsed_url = urlparse(url)
- if parsed_url.scheme=='s3':
+ if parsed_url.scheme == 's3':
parsed_url = urlparse(url)
bucket_name = parsed_url.netloc
key_name = parsed_url.path[1:]
- client = boto3.client('s3',aws_access_key_id=self.module.params.get('username', ''), aws_secret_access_key=self.module.params.get('password', ''))
- url_to_use = client.generate_presigned_url('get_object',Params={'Bucket':bucket_name,'Key':key_name},ExpiresIn=10)
+ client = boto3.client('s3', aws_access_key_id=self.module.params.get('username', ''), aws_secret_access_key=self.module.params.get('password', ''))
+ url_to_use = client.generate_presigned_url('get_object', Params={'Bucket': bucket_name, 'Key': key_name}, ExpiresIn=10)
req_timeout = self.module.params.get('timeout')
@@ -335,7 +335,6 @@ class MavenDownloader:
else:
return f(response)
-
def download(self, artifact, filename=None):
filename = artifact.get_filename(filename)
if not artifact.version or artifact.version == "latest":
@@ -402,20 +401,20 @@ class MavenDownloader:
def main():
module = AnsibleModule(
- argument_spec = dict(
- group_id = dict(default=None),
- artifact_id = dict(default=None),
- version = dict(default="latest"),
- classifier = dict(default=''),
- extension = dict(default='jar'),
- repository_url = dict(default=None),
- username = dict(default=None,aliases=['aws_secret_key']),
- password = dict(default=None, no_log=True,aliases=['aws_secret_access_key']),
- state = dict(default="present", choices=["present","absent"]), # TODO - Implement a "latest" state
- timeout = dict(default=10, type='int'),
- dest = dict(type="path", default=None),
- validate_certs = dict(required=False, default=True, type='bool'),
- keep_name = dict(required=False, default=False, type='bool'),
+ argument_spec=dict(
+ group_id=dict(default=None),
+ artifact_id=dict(default=None),
+ version=dict(default="latest"),
+ classifier=dict(default=''),
+ extension=dict(default='jar'),
+ repository_url=dict(default=None),
+ username=dict(default=None, aliases=['aws_secret_key']),
+ password=dict(default=None, no_log=True, aliases=['aws_secret_access_key']),
+ state=dict(default="present", choices=["present", "absent"]), # TODO - Implement a "latest" state
+ timeout=dict(default=10, type='int'),
+ dest=dict(type="path", default=None),
+ validate_certs=dict(required=False, default=True, type='bool'),
+ keep_name=dict(required=False, default=False, type='bool'),
),
add_file_common_args=True
)
@@ -429,7 +428,7 @@ def main():
except AttributeError as e:
module.fail_json(msg='url parsing went wrong %s' % e)
- if parsed_url.scheme=='s3' and not HAS_BOTO:
+ if parsed_url.scheme == 's3' and not HAS_BOTO:
module.fail_json(msg='boto3 required for this module, when using s3:// repository URLs')
group_id = module.params["group_id"]
diff --git a/lib/ansible/modules/packaging/language/pear.py b/lib/ansible/modules/packaging/language/pear.py
index a4b738d170..0d0f19a8db 100644
--- a/lib/ansible/modules/packaging/language/pear.py
+++ b/lib/ansible/modules/packaging/language/pear.py
@@ -83,6 +83,7 @@ def get_local_version(pear_output):
return installed
return None
+
def _get_pear_path(module):
if module.params['executable'] and os.path.isfile(module.params['executable']):
result = module.params['executable']
@@ -90,6 +91,7 @@ def _get_pear_path(module):
result = module.get_bin_path('pear', True, [module.params['executable']])
return result
+
def get_repository_version(pear_output):
"""Take pear remote-info output and get the latest version"""
lines = pear_output.split('\n')
@@ -98,6 +100,7 @@ def get_repository_version(pear_output):
return line.rsplit(None, 1)[-1].strip()
return None
+
def query_package(module, name, state="present"):
"""Query the package status in both the local system and the repository.
Returns a boolean to indicate if the package is installed,
@@ -198,18 +201,14 @@ def check_packages(module, packages, state):
module.exit_json(change=False, msg="package(s) already %s" % state)
-
-
def main():
module = AnsibleModule(
- argument_spec = dict(
- name = dict(aliases=['pkg']),
- state = dict(default='present', choices=['present', 'installed', "latest", 'absent', 'removed']),
- executable = dict(default=None, required=False, type='path')),
- required_one_of = [['name']],
- supports_check_mode = True)
-
-
+ argument_spec=dict(
+ name=dict(aliases=['pkg']),
+ state=dict(default='present', choices=['present', 'installed', "latest", 'absent', 'removed']),
+ executable=dict(default=None, required=False, type='path')),
+ required_one_of=[['name']],
+ supports_check_mode=True)
p = module.params