summaryrefslogtreecommitdiff
path: root/lib/ansible/modules/packaging
diff options
context:
space:
mode:
Diffstat (limited to 'lib/ansible/modules/packaging')
-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
-rw-r--r--lib/ansible/modules/packaging/os/apk.py10
-rw-r--r--lib/ansible/modules/packaging/os/dpkg_selections.py1
-rw-r--r--lib/ansible/modules/packaging/os/homebrew.py6
-rw-r--r--lib/ansible/modules/packaging/os/homebrew_cask.py8
-rw-r--r--lib/ansible/modules/packaging/os/layman.py16
-rw-r--r--lib/ansible/modules/packaging/os/macports.py9
-rw-r--r--lib/ansible/modules/packaging/os/opkg.py1
-rw-r--r--lib/ansible/modules/packaging/os/pkgin.py39
-rw-r--r--lib/ansible/modules/packaging/os/pkgng.py53
-rw-r--r--lib/ansible/modules/packaging/os/pkgutil.py37
-rw-r--r--lib/ansible/modules/packaging/os/portage.py4
-rw-r--r--lib/ansible/modules/packaging/os/portinstall.py14
-rw-r--r--lib/ansible/modules/packaging/os/slackpkg.py6
-rw-r--r--lib/ansible/modules/packaging/os/sorcery.py20
-rw-r--r--lib/ansible/modules/packaging/os/svr4pkg.py38
-rw-r--r--lib/ansible/modules/packaging/os/swdepot.py24
-rw-r--r--lib/ansible/modules/packaging/os/zypper.py26
-rw-r--r--lib/ansible/modules/packaging/os/zypper_repository.py18
23 files changed, 257 insertions, 206 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
diff --git a/lib/ansible/modules/packaging/os/apk.py b/lib/ansible/modules/packaging/os/apk.py
index 0d1e1f73f2..8015abe642 100644
--- a/lib/ansible/modules/packaging/os/apk.py
+++ b/lib/ansible/modules/packaging/os/apk.py
@@ -147,6 +147,7 @@ import re
# Import module snippets.
from ansible.module_utils.basic import AnsibleModule
+
def parse_for_packages(stdout):
packages = []
data = stdout.split('\n')
@@ -157,6 +158,7 @@ def parse_for_packages(stdout):
packages.append(p.group(1))
return packages
+
def update_package_db(module, exit):
cmd = "%s update" % (APK_PATH)
rc, stdout, stderr = module.run_command(cmd, check_rc=False)
@@ -167,6 +169,7 @@ def update_package_db(module, exit):
else:
return True
+
def query_package(module, name):
cmd = "%s -v info --installed %s" % (APK_PATH, name)
rc, stdout, stderr = module.run_command(cmd, check_rc=False)
@@ -175,6 +178,7 @@ def query_package(module, name):
else:
return False
+
def query_latest(module, name):
cmd = "%s version %s" % (APK_PATH, name)
rc, stdout, stderr = module.run_command(cmd, check_rc=False)
@@ -184,6 +188,7 @@ def query_latest(module, name):
return False
return True
+
def query_virtual(module, name):
cmd = "%s -v info --description %s" % (APK_PATH, name)
rc, stdout, stderr = module.run_command(cmd, check_rc=False)
@@ -192,6 +197,7 @@ def query_virtual(module, name):
return True
return False
+
def get_dependencies(module, name):
cmd = "%s -v info --depends %s" % (APK_PATH, name)
rc, stdout, stderr = module.run_command(cmd, check_rc=False)
@@ -201,6 +207,7 @@ def get_dependencies(module, name):
else:
return []
+
def upgrade_packages(module, available):
if module.check_mode:
cmd = "%s upgrade --simulate" % (APK_PATH)
@@ -216,6 +223,7 @@ def upgrade_packages(module, available):
module.exit_json(changed=False, msg="packages already upgraded", stdout=stdout, stderr=stderr, packages=packagelist)
module.exit_json(changed=True, msg="upgraded packages", stdout=stdout, stderr=stderr, packages=packagelist)
+
def install_packages(module, names, state):
upgrade = False
to_install = []
@@ -254,6 +262,7 @@ def install_packages(module, names, state):
module.fail_json(msg="failed to install %s" % (packages), stdout=stdout, stderr=stderr, packages=packagelist)
module.exit_json(changed=True, msg="installed %s package(s)" % (packages), stdout=stdout, stderr=stderr, packages=packagelist)
+
def remove_packages(module, names):
installed = []
for name in names:
@@ -275,6 +284,7 @@ def remove_packages(module, names):
# ==========================================
# Main control flow.
+
def main():
module = AnsibleModule(
argument_spec=dict(
diff --git a/lib/ansible/modules/packaging/os/dpkg_selections.py b/lib/ansible/modules/packaging/os/dpkg_selections.py
index 5a264672b8..b4f1f4f893 100644
--- a/lib/ansible/modules/packaging/os/dpkg_selections.py
+++ b/lib/ansible/modules/packaging/os/dpkg_selections.py
@@ -41,6 +41,7 @@ EXAMPLES = '''
selection: hold
'''
+
def main():
module = AnsibleModule(
argument_spec=dict(
diff --git a/lib/ansible/modules/packaging/os/homebrew.py b/lib/ansible/modules/packaging/os/homebrew.py
index 5861eaed96..ba7a039ccd 100644
--- a/lib/ansible/modules/packaging/os/homebrew.py
+++ b/lib/ansible/modules/packaging/os/homebrew.py
@@ -181,9 +181,9 @@ class Homebrew(object):
@ # at-sign
'''
- INVALID_PATH_REGEX = _create_regex_group(VALID_PATH_CHARS)
- INVALID_BREW_PATH_REGEX = _create_regex_group(VALID_BREW_PATH_CHARS)
- INVALID_PACKAGE_REGEX = _create_regex_group(VALID_PACKAGE_CHARS)
+ INVALID_PATH_REGEX = _create_regex_group(VALID_PATH_CHARS)
+ INVALID_BREW_PATH_REGEX = _create_regex_group(VALID_BREW_PATH_CHARS)
+ INVALID_PACKAGE_REGEX = _create_regex_group(VALID_PACKAGE_CHARS)
# /class regexes ----------------------------------------------- }}}
# class validations -------------------------------------------- {{{
diff --git a/lib/ansible/modules/packaging/os/homebrew_cask.py b/lib/ansible/modules/packaging/os/homebrew_cask.py
index 7e43be37b0..0d3ebd590b 100644
--- a/lib/ansible/modules/packaging/os/homebrew_cask.py
+++ b/lib/ansible/modules/packaging/os/homebrew_cask.py
@@ -137,9 +137,9 @@ class HomebrewCask(object):
- # dashes
'''
- INVALID_PATH_REGEX = _create_regex_group(VALID_PATH_CHARS)
- INVALID_BREW_PATH_REGEX = _create_regex_group(VALID_BREW_PATH_CHARS)
- INVALID_CASK_REGEX = _create_regex_group(VALID_CASK_CHARS)
+ INVALID_PATH_REGEX = _create_regex_group(VALID_PATH_CHARS)
+ INVALID_BREW_PATH_REGEX = _create_regex_group(VALID_BREW_PATH_CHARS)
+ INVALID_CASK_REGEX = _create_regex_group(VALID_CASK_CHARS)
# /class regexes ----------------------------------------------- }}}
# class validations -------------------------------------------- {{{
@@ -589,7 +589,7 @@ def main():
for install_option in p['install_options']]
brew_cask = HomebrewCask(module=module, path=path, casks=casks,
- state=state, update_homebrew=update_homebrew,
+ state=state, update_homebrew=update_homebrew,
install_options=install_options)
(failed, changed, message) = brew_cask.run()
if failed:
diff --git a/lib/ansible/modules/packaging/os/layman.py b/lib/ansible/modules/packaging/os/layman.py
index ef84797be9..7cdf1833e7 100644
--- a/lib/ansible/modules/packaging/os/layman.py
+++ b/lib/ansible/modules/packaging/os/layman.py
@@ -158,8 +158,8 @@ def install_overlay(module, name, list_url=None):
if not layman.is_repo(name):
if not list_url:
- raise ModuleError("Overlay '%s' is not on the list of known " \
- "overlays and URL of the remote list was not provided." % name)
+ raise ModuleError("Overlay '%s' is not on the list of known "
+ "overlays and URL of the remote list was not provided." % name)
overlay_defs = layman_conf.get_option('overlay_defs')
dest = path.join(overlay_defs, name + '.xml')
@@ -209,7 +209,7 @@ def sync_overlay(name):
layman = init_layman()
if not layman.sync(name):
- messages = [ str(item[1]) for item in layman.sync_results[2] ]
+ messages = [str(item[1]) for item in layman.sync_results[2]]
raise ModuleError(messages)
@@ -227,11 +227,11 @@ def sync_overlays():
def main():
# define module
module = AnsibleModule(
- argument_spec = dict(
- name = dict(required=True),
- list_url = dict(aliases=['url']),
- state = dict(default="present", choices=['present', 'absent', 'updated']),
- validate_certs = dict(required=False, default=True, type='bool'),
+ argument_spec=dict(
+ name=dict(required=True),
+ list_url=dict(aliases=['url']),
+ state=dict(default="present", choices=['present', 'absent', 'updated']),
+ validate_certs=dict(required=False, default=True, type='bool'),
),
supports_check_mode=True
)
diff --git a/lib/ansible/modules/packaging/os/macports.py b/lib/ansible/modules/packaging/os/macports.py
index 34a5683124..fc21ac5ff9 100644
--- a/lib/ansible/modules/packaging/os/macports.py
+++ b/lib/ansible/modules/packaging/os/macports.py
@@ -68,6 +68,7 @@ EXAMPLES = '''
import pipes
+
def update_package_db(module, port_path):
""" Updates packages list. """
@@ -196,10 +197,10 @@ def deactivate_packages(module, port_path, packages):
def main():
module = AnsibleModule(
- argument_spec = dict(
- name = dict(aliases=["pkg"], required=True),
- state = dict(default="present", choices=["present", "installed", "absent", "removed", "active", "inactive"]),
- update_cache = dict(default="no", aliases=["update-cache"], type='bool')
+ argument_spec=dict(
+ name=dict(aliases=["pkg"], required=True),
+ state=dict(default="present", choices=["present", "installed", "absent", "removed", "active", "inactive"]),
+ update_cache=dict(default="no", aliases=["update-cache"], type='bool')
)
)
diff --git a/lib/ansible/modules/packaging/os/opkg.py b/lib/ansible/modules/packaging/os/opkg.py
index 9933cc807c..7fbe78702c 100644
--- a/lib/ansible/modules/packaging/os/opkg.py
+++ b/lib/ansible/modules/packaging/os/opkg.py
@@ -89,6 +89,7 @@ EXAMPLES = '''
import pipes
+
def update_package_db(module, opkg_path):
""" Updates packages list. """
diff --git a/lib/ansible/modules/packaging/os/pkgin.py b/lib/ansible/modules/packaging/os/pkgin.py
index d9eb723c64..3bccaeb677 100644
--- a/lib/ansible/modules/packaging/os/pkgin.py
+++ b/lib/ansible/modules/packaging/os/pkgin.py
@@ -132,6 +132,7 @@ EXAMPLES = '''
import re
+
def query_package(module, name):
"""Search for the package by name.
@@ -201,8 +202,8 @@ def query_package(module, name):
def format_action_message(module, action, count):
- vars = { "actioned": action,
- "count": count }
+ vars = {"actioned": action,
+ "count": count}
if module.check_mode:
message = "would have %(actioned)s %(count)d package" % vars
@@ -227,10 +228,10 @@ def format_pkgin_command(module, command, package=None):
else:
force = ""
- vars = { "pkgin": PKGIN_PATH,
- "command": command,
- "package": package,
- "force": force}
+ vars = {"pkgin": PKGIN_PATH,
+ "command": command,
+ "package": package,
+ "force": force}
if module.check_mode:
return "%(pkgin)s -n %(command)s %(package)s" % vars
@@ -283,6 +284,7 @@ def install_packages(module, packages):
module.exit_json(changed=False, msg="package(s) already present")
+
def update_package_db(module):
rc, out, err = module.run_command(
format_pkgin_command(module, "update"))
@@ -295,6 +297,7 @@ def update_package_db(module):
else:
module.fail_json(msg="could not update package db")
+
def do_upgrade_packages(module, full=False):
if full:
cmd = "full-upgrade"
@@ -310,12 +313,15 @@ def do_upgrade_packages(module, full=False):
else:
module.fail_json(msg="could not %s packages" % cmd)
+
def upgrade_packages(module):
do_upgrade_packages(module)
+
def full_upgrade_packages(module):
do_upgrade_packages(module, True)
+
def clean_cache(module):
rc, out, err = module.run_command(
format_pkgin_command(module, "clean"))
@@ -327,18 +333,19 @@ def clean_cache(module):
else:
module.fail_json(msg="could not clean package cache")
+
def main():
module = AnsibleModule(
- argument_spec = dict(
- state = dict(default="present", choices=["present","absent"]),
- name = dict(aliases=["pkg"], type='list'),
- update_cache = dict(default='no', type='bool'),
- upgrade = dict(default='no', type='bool'),
- full_upgrade = dict(default='no', type='bool'),
- clean = dict(default='no', type='bool'),
- force = dict(default='no', type='bool')),
- required_one_of = [['name', 'update_cache', 'upgrade', 'full_upgrade', 'clean']],
- supports_check_mode = True)
+ argument_spec=dict(
+ state=dict(default="present", choices=["present", "absent"]),
+ name=dict(aliases=["pkg"], type='list'),
+ update_cache=dict(default='no', type='bool'),
+ upgrade=dict(default='no', type='bool'),
+ full_upgrade=dict(default='no', type='bool'),
+ clean=dict(default='no', type='bool'),
+ force=dict(default='no', type='bool')),
+ required_one_of=[['name', 'update_cache', 'upgrade', 'full_upgrade', 'clean']],
+ supports_check_mode=True)
global PKGIN_PATH
PKGIN_PATH = module.get_bin_path('pkgin', True, ['/opt/local/bin'])
diff --git a/lib/ansible/modules/packaging/os/pkgng.py b/lib/ansible/modules/packaging/os/pkgng.py
index 2f2f7ec8c1..a6e80ca9d0 100644
--- a/lib/ansible/modules/packaging/os/pkgng.py
+++ b/lib/ansible/modules/packaging/os/pkgng.py
@@ -111,6 +111,7 @@ EXAMPLES = '''
import re
from ansible.module_utils.basic import AnsibleModule
+
def query_package(module, pkgng_path, name, dir_arg):
rc, out, err = module.run_command("%s %s info -g -e %s" % (pkgng_path, dir_arg, name))
@@ -120,6 +121,7 @@ def query_package(module, pkgng_path, name, dir_arg):
return False
+
def pkgng_older_than(module, pkgng_path, compare_version):
rc, out, err = module.run_command("%s -v" % pkgng_path)
@@ -206,6 +208,7 @@ def install_packages(module, pkgng_path, packages, cached, pkgsite, dir_arg):
return (False, "package(s) already present")
+
def annotation_query(module, pkgng_path, package, tag, dir_arg):
rc, out, err = module.run_command("%s %s info -g -A %s" % (pkgng_path, dir_arg, package))
match = re.search(r'^\s*(?P<tag>%s)\s*:\s*(?P<value>\w+)' % tag, out, flags=re.MULTILINE)
@@ -219,10 +222,10 @@ def annotation_add(module, pkgng_path, package, tag, value, dir_arg):
if not _value:
# Annotation does not exist, add it.
rc, out, err = module.run_command('%s %s annotate -y -A %s %s "%s"'
- % (pkgng_path, dir_arg, package, tag, value))
+ % (pkgng_path, dir_arg, package, tag, value))
if rc != 0:
module.fail_json(msg="could not annotate %s: %s"
- % (package, out), stderr=err)
+ % (package, out), stderr=err)
return True
elif _value != value:
# Annotation exists, but value differs
@@ -234,41 +237,43 @@ def annotation_add(module, pkgng_path, package, tag, value, dir_arg):
# Annotation exists, nothing to do
return False
+
def annotation_delete(module, pkgng_path, package, tag, value, dir_arg):
_value = annotation_query(module, pkgng_path, package, tag, dir_arg)
if _value:
rc, out, err = module.run_command('%s %s annotate -y -D %s %s'
- % (pkgng_path, dir_arg, package, tag))
+ % (pkgng_path, dir_arg, package, tag))
if rc != 0:
module.fail_json(msg="could not delete annotation to %s: %s"
- % (package, out), stderr=err)
+ % (package, out), stderr=err)
return True
return False
+
def annotation_modify(module, pkgng_path, package, tag, value, dir_arg):
_value = annotation_query(module, pkgng_path, package, tag, dir_arg)
if not value:
# No such tag
module.fail_json(msg="could not change annotation to %s: tag %s does not exist"
- % (package, tag))
+ % (package, tag))
elif _value == value:
# No change in value
return False
else:
- rc,out,err = module.run_command('%s %s annotate -y -M %s %s "%s"'
- % (pkgng_path, dir_arg, package, tag, value))
+ rc, out, err = module.run_command('%s %s annotate -y -M %s %s "%s"'
+ % (pkgng_path, dir_arg, package, tag, value))
if rc != 0:
module.fail_json(msg="could not change annotation annotation to %s: %s"
- % (package, out), stderr=err)
+ % (package, out), stderr=err)
return True
def annotate_packages(module, pkgng_path, packages, annotation, dir_arg):
annotate_c = 0
annotations = map(lambda _annotation:
- re.match(r'(?P<operation>[\+-:])(?P<tag>\w+)(=(?P<value>\w+))?',
- _annotation).groupdict(),
- re.split(r',', annotation))
+ re.match(r'(?P<operation>[\+-:])(?P<tag>\w+)(=(?P<value>\w+))?',
+ _annotation).groupdict(),
+ re.split(r',', annotation))
operation = {
'+': annotation_add,
@@ -285,6 +290,7 @@ def annotate_packages(module, pkgng_path, packages, annotation, dir_arg):
return (True, "added %s annotations." % annotate_c)
return (False, "changed no annotations")
+
def autoremove_packages(module, pkgng_path, dir_arg):
rc, out, err = module.run_command("%s %s autoremove -n" % (pkgng_path, dir_arg))
@@ -302,20 +308,21 @@ def autoremove_packages(module, pkgng_path, dir_arg):
return True, "autoremoved %d package(s)" % (autoremove_c)
+
def main():
module = AnsibleModule(
- argument_spec = dict(
- state = dict(default="present", choices=["present","absent"], required=False),
- name = dict(aliases=["pkg"], required=True, type='list'),
- cached = dict(default=False, type='bool'),
- annotation = dict(default="", required=False),
- pkgsite = dict(default="", required=False),
- rootdir = dict(default="", required=False, type='path'),
- chroot = dict(default="", required=False, type='path'),
- jail = dict(default="", required=False, type='str'),
- autoremove = dict(default=False, type='bool')),
- supports_check_mode = True,
- mutually_exclusive =[["rootdir", "chroot", "jail"]])
+ argument_spec=dict(
+ state=dict(default="present", choices=["present", "absent"], required=False),
+ name=dict(aliases=["pkg"], required=True, type='list'),
+ cached=dict(default=False, type='bool'),
+ annotation=dict(default="", required=False),
+ pkgsite=dict(default="", required=False),
+ rootdir=dict(default="", required=False, type='path'),
+ chroot=dict(default="", required=False, type='path'),
+ jail=dict(default="", required=False, type='str'),
+ autoremove=dict(default=False, type='bool')),
+ supports_check_mode=True,
+ mutually_exclusive=[["rootdir", "chroot", "jail"]])
pkgng_path = module.get_bin_path('pkg', True)
diff --git a/lib/ansible/modules/packaging/os/pkgutil.py b/lib/ansible/modules/packaging/os/pkgutil.py
index 0a3d054ef5..e6fbeb16a7 100644
--- a/lib/ansible/modules/packaging/os/pkgutil.py
+++ b/lib/ansible/modules/packaging/os/pkgutil.py
@@ -69,6 +69,7 @@ EXAMPLES = '''
import os
import pipes
+
def package_installed(module, name):
cmd = ['pkginfo']
cmd.append('-q')
@@ -79,11 +80,12 @@ def package_installed(module, name):
else:
return False
+
def package_latest(module, name, site):
# Only supports one package
- cmd = [ 'pkgutil', '-U', '--single', '-c' ]
+ cmd = ['pkgutil', '-U', '--single', '-c']
if site is not None:
- cmd += [ '-t', site]
+ cmd += ['-t', site]
cmd.append(name)
rc, out, err = run_command(module, cmd)
# replace | tail -1 |grep -v SAME
@@ -91,45 +93,50 @@ def package_latest(module, name, site):
# at the end of the list
return 'SAME' in out.split('\n')[-2]
+
def run_command(module, cmd, **kwargs):
progname = cmd[0]
cmd[0] = module.get_bin_path(progname, True, ['/opt/csw/bin'])
return module.run_command(cmd, **kwargs)
+
def package_install(module, state, name, site, update_catalog):
- cmd = [ 'pkgutil', '-iy' ]
+ cmd = ['pkgutil', '-iy']
if update_catalog:
- cmd += [ '-U' ]
+ cmd += ['-U']
if site is not None:
- cmd += [ '-t', site ]
+ cmd += ['-t', site]
if state == 'latest':
- cmd += [ '-f' ]
+ cmd += ['-f']
cmd.append(name)
(rc, out, err) = run_command(module, cmd)
return (rc, out, err)
+
def package_upgrade(module, name, site, update_catalog):
- cmd = [ 'pkgutil', '-ufy' ]
+ cmd = ['pkgutil', '-ufy']
if update_catalog:
- cmd += [ '-U' ]
+ cmd += ['-U']
if site is not None:
- cmd += [ '-t', site ]
+ cmd += ['-t', site]
cmd.append(name)
(rc, out, err) = run_command(module, cmd)
return (rc, out, err)
+
def package_uninstall(module, name):
- cmd = [ 'pkgutil', '-ry', name]
+ cmd = ['pkgutil', '-ry', name]
(rc, out, err) = run_command(module, cmd)
return (rc, out, err)
+
def main():
module = AnsibleModule(
- argument_spec = dict(
- name = dict(required = True),
- state = dict(required = True, choices=['present', 'absent','latest']),
- site = dict(default = None),
- update_catalog = dict(required = False, default = False, type='bool'),
+ argument_spec=dict(
+ name=dict(required=True),
+ state=dict(required=True, choices=['present', 'absent', 'latest']),
+ site=dict(default=None),
+ update_catalog=dict(required=False, default=False, type='bool'),
),
supports_check_mode=True
)
diff --git a/lib/ansible/modules/packaging/os/portage.py b/lib/ansible/modules/packaging/os/portage.py
index bc4f06bdc5..0cded3b76a 100644
--- a/lib/ansible/modules/packaging/os/portage.py
+++ b/lib/ansible/modules/packaging/os/portage.py
@@ -289,7 +289,7 @@ def sync_repositories(module, webrsync=False):
def emerge_packages(module, packages):
p = module.params
- if not (p['update'] or p['noreplace'] or p['state']=='latest'):
+ if not (p['update'] or p['noreplace'] or p['state'] == 'latest'):
for package in packages:
if not query_package(module, package, 'emerge'):
break
@@ -319,7 +319,7 @@ def emerge_packages(module, packages):
if p[flag]:
args.append(arg)
- if p['state'] and p['state']=='latest':
+ if p['state'] and p['state'] == 'latest':
args.append("--update")
if p['usepkg'] and p['usepkgonly']:
diff --git a/lib/ansible/modules/packaging/os/portinstall.py b/lib/ansible/modules/packaging/os/portinstall.py
index d937ed2b2d..fd099fe522 100644
--- a/lib/ansible/modules/packaging/os/portinstall.py
+++ b/lib/ansible/modules/packaging/os/portinstall.py
@@ -138,7 +138,7 @@ def remove_packages(module, packages):
name_without_digits = re.sub('[0-9]', '', package)
rc, out, err = module.run_command("%s `%s %s`" % (pkg_delete_path, pkg_glob_path,
shlex_quote(name_without_digits)),
- use_unsafe_shell=True)
+ use_unsafe_shell=True)
if query_package(module, package):
module.fail_json(msg="failed to remove %s: %s" % (package, out))
@@ -164,9 +164,9 @@ def install_packages(module, packages, use_packages):
portinstall_path = module.get_bin_path('portinstall', True)
if use_packages == "yes":
- portinstall_params="--use-packages"
+ portinstall_params = "--use-packages"
else:
- portinstall_params=""
+ portinstall_params = ""
for package in packages:
if query_package(module, package):
@@ -193,10 +193,10 @@ def install_packages(module, packages, use_packages):
def main():
module = AnsibleModule(
- argument_spec = dict(
- state = dict(default="present", choices=["present","absent"]),
- name = dict(aliases=["pkg"], required=True),
- use_packages = dict(type='bool', default='yes')))
+ argument_spec=dict(
+ state=dict(default="present", choices=["present", "absent"]),
+ name=dict(aliases=["pkg"], required=True),
+ use_packages=dict(type='bool', default='yes')))
p = module.params
diff --git a/lib/ansible/modules/packaging/os/slackpkg.py b/lib/ansible/modules/packaging/os/slackpkg.py
index ad65ee50d6..20a22843be 100644
--- a/lib/ansible/modules/packaging/os/slackpkg.py
+++ b/lib/ansible/modules/packaging/os/slackpkg.py
@@ -96,7 +96,7 @@ def remove_packages(module, slackpkg_path, packages):
if not module.check_mode:
rc, out, err = module.run_command("%s -default_answer=y -batch=on \
remove %s" % (slackpkg_path,
- package))
+ package))
if not module.check_mode and query_package(module, slackpkg_path,
package):
@@ -122,7 +122,7 @@ def install_packages(module, slackpkg_path, packages):
if not module.check_mode:
rc, out, err = module.run_command("%s -default_answer=y -batch=on \
install %s" % (slackpkg_path,
- package))
+ package))
if not module.check_mode and not query_package(module, slackpkg_path,
package):
@@ -145,7 +145,7 @@ def upgrade_packages(module, slackpkg_path, packages):
if not module.check_mode:
rc, out, err = module.run_command("%s -default_answer=y -batch=on \
upgrade %s" % (slackpkg_path,
- package))
+ package))
if not module.check_mode and not query_package(module, slackpkg_path,
package):
diff --git a/lib/ansible/modules/packaging/os/sorcery.py b/lib/ansible/modules/packaging/os/sorcery.py
index a148612123..26f37348b7 100644
--- a/lib/ansible/modules/packaging/os/sorcery.py
+++ b/lib/ansible/modules/packaging/os/sorcery.py
@@ -607,17 +607,17 @@ def manage_spells(module):
def main():
module = AnsibleModule(
- argument_spec = dict(
- name = dict(default=None, aliases=['spell'], type='list'),
- state = dict(default='present', choices=['present', 'latest',
- 'absent', 'cast', 'dispelled', 'rebuild']),
- depends = dict(default=None),
- update = dict(default=False, type='bool'),
- update_cache = dict(default=False, aliases=['update_codex'], type='bool'),
- cache_valid_time = dict(default=0, type='int')
+ argument_spec=dict(
+ name=dict(default=None, aliases=['spell'], type='list'),
+ state=dict(default='present', choices=['present', 'latest',
+ 'absent', 'cast', 'dispelled', 'rebuild']),
+ depends=dict(default=None),
+ update=dict(default=False, type='bool'),
+ update_cache=dict(default=False, aliases=['update_codex'], type='bool'),
+ cache_valid_time=dict(default=0, type='int')
),
- required_one_of = [['name', 'update', 'update_cache']],
- supports_check_mode = True
+ required_one_of=[['name', 'update', 'update_cache']],
+ supports_check_mode=True
)
if os.geteuid() != 0:
diff --git a/lib/ansible/modules/packaging/os/svr4pkg.py b/lib/ansible/modules/packaging/os/svr4pkg.py
index b8bcc68400..e4b7d31630 100644
--- a/lib/ansible/modules/packaging/os/svr4pkg.py
+++ b/lib/ansible/modules/packaging/os/svr4pkg.py
@@ -105,6 +105,7 @@ EXAMPLES = '''
import os
import tempfile
+
def package_installed(module, name, category):
cmd = [module.get_bin_path('pkginfo', True)]
cmd.append('-q')
@@ -117,6 +118,7 @@ def package_installed(module, name, category):
else:
return False
+
def create_admin_file():
(desc, filename) = tempfile.mkstemp(prefix='ansible_svr4pkg', text=True)
fullauto = '''
@@ -141,48 +143,52 @@ basedir=default
os.close(desc)
return filename
+
def run_command(module, cmd):
progname = cmd[0]
cmd[0] = module.get_bin_path(progname, True)
return module.run_command(cmd)
+
def package_install(module, name, src, proxy, response_file, zone, category):
adminfile = create_admin_file()
- cmd = [ 'pkgadd', '-n']
+ cmd = ['pkgadd', '-n']
if zone == 'current':
- cmd += [ '-G' ]
- cmd += [ '-a', adminfile, '-d', src ]
+ cmd += ['-G']
+ cmd += ['-a', adminfile, '-d', src]
if proxy is not None:
- cmd += [ '-x', proxy ]
+ cmd += ['-x', proxy]
if response_file is not None:
- cmd += [ '-r', response_file ]
+ cmd += ['-r', response_file]
if category:
- cmd += [ '-Y' ]
+ cmd += ['-Y']
cmd.append(name)
(rc, out, err) = run_command(module, cmd)
os.unlink(adminfile)
return (rc, out, err)
+
def package_uninstall(module, name, src, category):
adminfile = create_admin_file()
if category:
- cmd = [ 'pkgrm', '-na', adminfile, '-Y', name ]
+ cmd = ['pkgrm', '-na', adminfile, '-Y', name]
else:
- cmd = [ 'pkgrm', '-na', adminfile, name]
+ cmd = ['pkgrm', '-na', adminfile, name]
(rc, out, err) = run_command(module, cmd)
os.unlink(adminfile)
return (rc, out, err)
+
def main():
module = AnsibleModule(
- argument_spec = dict(
- name = dict(required = True),
- state = dict(required = True, choices=['present', 'absent']),
- src = dict(default = None),
- proxy = dict(default = None),
- response_file = dict(default = None),
- zone = dict(required=False, default = 'all', choices=['current','all']),
- category = dict(default=False, type='bool')
+ argument_spec=dict(
+ name=dict(required=True),
+ state=dict(required=True, choices=['present', 'absent']),
+ src=dict(default=None),
+ proxy=dict(default=None),
+ response_file=dict(default=None),
+ zone=dict(required=False, default='all', choices=['current', 'all']),
+ category=dict(default=False, type='bool')
),
supports_check_mode=True
)
diff --git a/lib/ansible/modules/packaging/os/swdepot.py b/lib/ansible/modules/packaging/os/swdepot.py
index 8b9785202a..f32e43c7e5 100644
--- a/lib/ansible/modules/packaging/os/swdepot.py
+++ b/lib/ansible/modules/packaging/os/swdepot.py
@@ -108,6 +108,7 @@ def query_package(module, name, depot=None):
return rc, version
+
def remove_package(module, name):
""" Uninstall package if installed. """
@@ -119,6 +120,7 @@ def remove_package(module, name):
else:
return rc, stderr
+
def install_package(module, depot, name):
""" Install package if not already installed """
@@ -129,12 +131,13 @@ def install_package(module, depot, name):
else:
return rc, stderr
+
def main():
module = AnsibleModule(
- argument_spec = dict(
- name = dict(aliases=['pkg'], required=True),
- state = dict(choices=['present', 'absent', 'latest'], required=True),
- depot = dict(default=None, required=False)
+ argument_spec=dict(
+ name=dict(aliases=['pkg'], required=True),
+ state=dict(choices=['present', 'absent', 'latest'], required=True),
+ depot=dict(default=None, required=False)
),
supports_check_mode=True
)
@@ -145,12 +148,11 @@ def main():
changed = False
msg = "No changed"
rc = 0
- if ( state == 'present' or state == 'latest' ) and depot is None:
+ if (state == 'present' or state == 'latest') and depot is None:
output = "depot parameter is mandatory in present or latest task"
module.fail_json(name=name, msg=output, rc=rc)
-
- #Check local version
+ # Check local version
rc, version_installed = query_package(module, name)
if not rc:
installed = True
@@ -159,7 +161,7 @@ def main():
else:
installed = False
- if ( state == 'present' or state == 'latest' ) and installed is False:
+ if (state == 'present' or state == 'latest') and installed is False:
if module.check_mode:
module.exit_json(changed=True)
rc, output = install_package(module, depot, name)
@@ -172,14 +174,14 @@ def main():
module.fail_json(name=name, msg=output, rc=rc)
elif state == 'latest' and installed is True:
- #Check depot version
+ # Check depot version
rc, version_depot = query_package(module, name, depot)
if not rc:
- if compare_package(version_installed,version_depot) == -1:
+ if compare_package(version_installed, version_depot) == -1:
if module.check_mode:
module.exit_json(changed=True)
- #Install new version
+ # Install new version
rc, output = install_package(module, depot, name)
if not rc:
diff --git a/lib/ansible/modules/packaging/os/zypper.py b/lib/ansible/modules/packaging/os/zypper.py
index 99d00a0d77..15281e0bce 100644
--- a/lib/ansible/modules/packaging/os/zypper.py
+++ b/lib/ansible/modules/packaging/os/zypper.py
@@ -204,7 +204,6 @@ class Package:
return self.prefix + self.name + self.version
-
def split_name_version(name):
"""splits of the package name and desired version
@@ -301,7 +300,7 @@ def parse_zypper_xml(m, cmd, fail_not_found=True, packages=None):
return parse_zypper_xml(m, cmd, fail_not_found=fail_not_found, packages=packages)
return packages, rc, stdout, stderr
- m.fail_json(msg='Zypper run command failed with return code %s.'%rc, rc=rc, stdout=stdout, stderr=stderr, cmd=cmd)
+ m.fail_json(msg='Zypper run command failed with return code %s.' % rc, rc=rc, stdout=stdout, stderr=stderr, cmd=cmd)
def get_cmd(m, subcommand):
@@ -455,20 +454,21 @@ def repo_refresh(m):
# ===========================================
# Main control flow
+
def main():
module = AnsibleModule(
- argument_spec = dict(
- name = dict(required=True, aliases=['pkg'], type='list'),
- state = dict(required=False, default='present', choices=['absent', 'installed', 'latest', 'present', 'removed', 'dist-upgrade']),
- type = dict(required=False, default='package', choices=['package', 'patch', 'pattern', 'product', 'srcpackage', 'application']),
- disable_gpg_check = dict(required=False, default='no', type='bool'),
- disable_recommends = dict(required=False, default='yes', type='bool'),
- force = dict(required=False, default='no', type='bool'),
- update_cache = dict(required=False, aliases=['refresh'], default='no', type='bool'),
- oldpackage = dict(required=False, default='no', type='bool'),
- extra_args = dict(required=False, default=None),
+ argument_spec=dict(
+ name=dict(required=True, aliases=['pkg'], type='list'),
+ state=dict(required=False, default='present', choices=['absent', 'installed', 'latest', 'present', 'removed', 'dist-upgrade']),
+ type=dict(required=False, default='package', choices=['package', 'patch', 'pattern', 'product', 'srcpackage', 'application']),
+ disable_gpg_check=dict(required=False, default='no', type='bool'),
+ disable_recommends=dict(required=False, default='yes', type='bool'),
+ force=dict(required=False, default='no', type='bool'),
+ update_cache=dict(required=False, aliases=['refresh'], default='no', type='bool'),
+ oldpackage=dict(required=False, default='no', type='bool'),
+ extra_args=dict(required=False, default=None),
),
- supports_check_mode = True
+ supports_check_mode=True
)
name = module.params['name']
diff --git a/lib/ansible/modules/packaging/os/zypper_repository.py b/lib/ansible/modules/packaging/os/zypper_repository.py
index 7ab1afdc61..ca1b04bc10 100644
--- a/lib/ansible/modules/packaging/os/zypper_repository.py
+++ b/lib/ansible/modules/packaging/os/zypper_repository.py
@@ -146,6 +146,7 @@ REPO_OPTS = ['alias', 'name', 'priority', 'enabled', 'autorefresh', 'gpgcheck']
from distutils.version import LooseVersion
+
def _get_cmd(*args):
"""Combines the non-interactive zypper command with arguments/subcommands"""
cmd = ['/usr/bin/zypper', '--quiet', '--non-interactive']
@@ -178,6 +179,7 @@ def _parse_repos(module):
else:
module.fail_json(msg='Failed to execute "%s"' % " ".join(cmd), rc=rc, stdout=stdout, stderr=stderr)
+
def _repo_changes(realrepo, repocmp):
"Check whether the 2 given repos have different settings."
for k in repocmp:
@@ -194,6 +196,7 @@ def _repo_changes(realrepo, repocmp):
return True
return False
+
def repo_exists(module, repodata, overwrite_multiple):
"""Check whether the repository already exists.
@@ -288,6 +291,7 @@ def get_zypper_version(module):
return LooseVersion('1.0')
return LooseVersion(stdout.split()[1])
+
def runrefreshrepo(module, auto_import_keys=False, shortname=None):
"Forces zypper to refresh repo metadata."
if auto_import_keys:
@@ -309,15 +313,15 @@ def main():
state=dict(choices=['present', 'absent'], default='present'),
runrefresh=dict(required=False, default='no', type='bool'),
description=dict(required=False),
- disable_gpg_check = dict(required=False, default=False, type='bool'),
- autorefresh = dict(required=False, default=True, type='bool', aliases=['refresh']),
- priority = dict(required=False, type='int'),
- enabled = dict(required=False, default=True, type='bool'),
- overwrite_multiple = dict(required=False, default=False, type='bool'),
- auto_import_keys = dict(required=False, default=False, type='bool'),
+ disable_gpg_check=dict(required=False, default=False, type='bool'),
+ autorefresh=dict(required=False, default=True, type='bool', aliases=['refresh']),
+ priority=dict(required=False, type='int'),
+ enabled=dict(required=False, default=True, type='bool'),
+ overwrite_multiple=dict(required=False, default=False, type='bool'),
+ auto_import_keys=dict(required=False, default=False, type='bool'),
),
supports_check_mode=False,
- required_one_of = [['state','runrefresh']],
+ required_one_of=[['state', 'runrefresh']],
)
repo = module.params['repo']