Merge pull request #4912 from zehome/openbsd_pkg_flavourfix

OpenBSD packages can be installed using 'flavour'
reviewable/pr18780/r1
jctanner 11 years ago
commit 09f004675a

@ -52,6 +52,9 @@ EXAMPLES = '''
# Make sure nmap is not installed # Make sure nmap is not installed
- openbsd_pkg: name=nmap state=absent - openbsd_pkg: name=nmap state=absent
# Make sure vim is installed using no_x11 flavour
- openbsd_pkg name=vim--no_x11 state=present
''' '''
# Function used for executing commands. # Function used for executing commands.
@ -81,13 +84,23 @@ def get_current_name(name, specific_version, module):
return current_name return current_name
# Function used to find out if a package is currently installed. # Function used to find out if a package is currently installed.
# OpenBSD packages can contain "flavours"
# For example vim is distributed as a "gtk2":
# - vim--gtk2
# and "no_x11" flavour:
# - vim--no_x11
def get_package_state(name, specific_version, module): def get_package_state(name, specific_version, module):
info_cmd = 'pkg_info -e' info_cmd = 'pkg_info -e'
if specific_version: if specific_version:
syntax = "%s %s" syntax = "%s %s"
else: else:
if "--" in name:
(name, flavour) = name.split("--", 1)
syntax = "%s %s-*" syntax = "%s %s-*"
if flavour:
syntax += "-%s" % (flavour, )
syntax = "%s-"
rc, stdout, stderr = execute_command(syntax % (info_cmd, name), module) rc, stdout, stderr = execute_command(syntax % (info_cmd, name), module)

Loading…
Cancel
Save