made enabled/disabled checks of apache2_module workable
This commit is contained in:
parent
71a870a6be
commit
67a8ee24e1
1 changed files with 14 additions and 23 deletions
|
@ -1,7 +1,7 @@
|
||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
#coding: utf-8 -*-
|
#coding: utf-8 -*-
|
||||||
|
|
||||||
# (c) 2013, Christian Berendt <berendt@b1-systems.de>
|
# (c) 2013-2014, Christian Berendt <berendt@b1-systems.de>
|
||||||
#
|
#
|
||||||
# This module is free software: you can redistribute it and/or modify
|
# This module is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU General Public License as published by
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
@ -44,39 +44,31 @@ EXAMPLES = '''
|
||||||
- apache2_module: state=absent name=wsgi
|
- apache2_module: state=absent name=wsgi
|
||||||
'''
|
'''
|
||||||
|
|
||||||
def _module_is_enabled(module):
|
import re
|
||||||
name = module.params['name']
|
|
||||||
a2enmod_binary = module.get_bin_path("a2enmod")
|
|
||||||
result, stdout, stderr = module.run_command("%s -q %s" % (a2enmod_binary, name))
|
|
||||||
return result == 0
|
|
||||||
|
|
||||||
def _module_is_disabled(module):
|
|
||||||
return _module_is_enabled(module) == False
|
|
||||||
|
|
||||||
def _disable_module(module):
|
def _disable_module(module):
|
||||||
name = module.params['name']
|
name = module.params['name']
|
||||||
|
a2dismod_binary = module.get_bin_path("a2dismod")
|
||||||
|
result, stdout, stderr = module.run_command("%s %s" % (a2dismod_binary, name))
|
||||||
|
|
||||||
if _module_is_disabled(module):
|
if re.match(r'.*already disabled.*', stdout):
|
||||||
module.exit_json(changed = False, result = "Success")
|
module.exit_json(changed = False, result = "Success")
|
||||||
|
elif result != 0:
|
||||||
result, stdout, stderr = module.run_command("a2dismod %s" % name)
|
|
||||||
if result != 0:
|
|
||||||
module.fail_json(msg="Failed to disable module %s: %s" % (name, stdout))
|
module.fail_json(msg="Failed to disable module %s: %s" % (name, stdout))
|
||||||
|
else:
|
||||||
module.exit_json(changed = True, result = "Disabled")
|
module.exit_json(changed = True, result = "Disabled")
|
||||||
|
|
||||||
def _enable_module(module):
|
def _enable_module(module):
|
||||||
name = module.params['name']
|
name = module.params['name']
|
||||||
|
|
||||||
if _module_is_enabled(module):
|
|
||||||
module.exit_json(changed = False, result = "Success")
|
|
||||||
|
|
||||||
a2enmod_binary = module.get_bin_path("a2enmod")
|
a2enmod_binary = module.get_bin_path("a2enmod")
|
||||||
result, stdout, stderr = module.run_command("%s %s" % (a2enmod_binary, name))
|
result, stdout, stderr = module.run_command("%s %s" % (a2enmod_binary, name))
|
||||||
if result != 0:
|
|
||||||
module.fail_json(msg="Failed to enable module %s: %s" % (name, stdout))
|
|
||||||
|
|
||||||
module.exit_json(changed = True, result = "Enabled")
|
if re.match(r'.*already enabled.*', stdout):
|
||||||
|
module.exit_json(changed = False, result = "Success")
|
||||||
|
elif result != 0:
|
||||||
|
module.fail_json(msg="Failed to enable module %s: %s" % (name, stdout))
|
||||||
|
else:
|
||||||
|
module.exit_json(changed = True, result = "Enabled")
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
module = AnsibleModule(
|
module = AnsibleModule(
|
||||||
|
@ -95,4 +87,3 @@ def main():
|
||||||
# import module snippets
|
# import module snippets
|
||||||
from ansible.module_utils.basic import *
|
from ansible.module_utils.basic import *
|
||||||
main()
|
main()
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue