mirror of
https://github.com/valitydev/salt.git
synced 2024-11-08 01:18:58 +00:00
commit
37b17cc965
@ -7,7 +7,6 @@ data.
|
||||
|
||||
# Import salt libs
|
||||
import salt.utils
|
||||
from salt.utils import decorators
|
||||
|
||||
# Import python libs
|
||||
import logging
|
||||
@ -38,6 +37,23 @@ def _format_response(response, msg):
|
||||
}
|
||||
|
||||
|
||||
def _get_rabbitmq_plugin():
|
||||
"""Returns the rabbitmq-plugin command path if we're running an OS that
|
||||
doesn't put it in the standard /usr/bin or /usr/local/bin
|
||||
This works by taking the rabbitmq-server version and looking for where it
|
||||
seems to be hidden in /usr/lib.
|
||||
"""
|
||||
rabbitmq = salt.utils.which('rabbitmq-plugins')
|
||||
|
||||
if rabbitmq is None:
|
||||
version = __salt__['pkg.version']('rabbitmq-server').split('-')[0]
|
||||
|
||||
path = '/usr/lib/rabbitmq/lib/rabbitmq_server-{0}/sbin/rabbitmq-plugins'
|
||||
rabbitmq = path.format(version)
|
||||
|
||||
return rabbitmq
|
||||
|
||||
|
||||
def list_users(runas=None):
|
||||
'''
|
||||
Return a list of users based off of rabbitmqctl user_list.
|
||||
@ -548,7 +564,6 @@ def policy_exists(vhost, name, runas=None):
|
||||
return bool(vhost in policies and name in policies[vhost])
|
||||
|
||||
|
||||
@decorators.which('rabbitmq-plugins')
|
||||
def plugin_is_enabled(name, runas=None):
|
||||
'''
|
||||
Return whether the plugin is enabled.
|
||||
@ -559,11 +574,12 @@ def plugin_is_enabled(name, runas=None):
|
||||
|
||||
salt '*' rabbitmq.plugin_is_enabled foo
|
||||
'''
|
||||
ret = __salt__['cmd.run']('rabbitmq-plugins list -m -e', runas=runas)
|
||||
rabbitmq = _get_rabbitmq_plugin()
|
||||
cmd = '{0} list -m -e'.format(rabbitmq)
|
||||
ret = __salt__['cmd.run'](cmd, runas=runas)
|
||||
return bool(name in ret)
|
||||
|
||||
|
||||
@decorators.which('rabbitmq-plugins')
|
||||
def enable_plugin(name, runas=None):
|
||||
'''
|
||||
Enable a RabbitMQ plugin via the rabbitmq-plugins command.
|
||||
@ -574,13 +590,14 @@ def enable_plugin(name, runas=None):
|
||||
|
||||
salt '*' rabbitmq.enable_plugin foo
|
||||
'''
|
||||
ret = __salt__['cmd.run_all'](
|
||||
'rabbitmq-plugins enable {0}'.format(name),
|
||||
runas=runas)
|
||||
rabbitmq = _get_rabbitmq_plugin()
|
||||
cmd = '{0} enable {1}'.format(rabbitmq, name)
|
||||
|
||||
ret = __salt__['cmd.run_all'](cmd, runas=runas)
|
||||
|
||||
return _format_response(ret, 'Enabled')
|
||||
|
||||
|
||||
@decorators.which('rabbitmq-plugins')
|
||||
def disable_plugin(name, runas=None):
|
||||
'''
|
||||
Disable a RabbitMQ plugin via the rabbitmq-plugins command.
|
||||
@ -592,7 +609,9 @@ def disable_plugin(name, runas=None):
|
||||
salt '*' rabbitmq.disable_plugin foo
|
||||
'''
|
||||
|
||||
ret = __salt__['cmd.run_all'](
|
||||
'rabbitmq-plugins disable {0}'.format(name),
|
||||
runas=runas)
|
||||
rabbitmq = _get_rabbitmq_plugin()
|
||||
cmd = '{0} disable {1}'.format(rabbitmq, name)
|
||||
|
||||
ret = __salt__['cmd.run_all'](cmd, runas=runas)
|
||||
|
||||
return _format_response(ret, 'Disabled')
|
||||
|
Loading…
Reference in New Issue
Block a user