diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_plugin.erl | 38 |
1 files changed, 19 insertions, 19 deletions
diff --git a/src/rabbit_plugin.erl b/src/rabbit_plugin.erl index 94d041d3be..96715d9eda 100644 --- a/src/rabbit_plugin.erl +++ b/src/rabbit_plugin.erl @@ -106,24 +106,7 @@ action(enable, ToEnable0, _Opts, PluginsDir, PluginsDistDir) -> ok, lookup_plugins(EnableOrder1, AllPlugins)) end, update_enabled_plugins(PluginsDir, plugin_names(NewEnabledPlugins)), - action(prune, [], {}, PluginsDir, PluginsDistDir); - -action(prune, [], _Opts, PluginsDir, PluginsDistDir) -> - ExplicitlyEnabledPlugins = read_enabled_plugins(PluginsDir), - AllPlugins = find_plugins(PluginsDistDir), - Required = calculate_required_plugins(ExplicitlyEnabledPlugins, AllPlugins), - AllEnabledPlugins = find_plugins(PluginsDir), - ToDisablePlugins = - AllEnabledPlugins -- lookup_plugins(Required, AllEnabledPlugins), - case ToDisablePlugins of - [] -> - io:format("No unnecessary plugins found.~n"); - _ -> - io:format("Disabling unnecessary plugins: ~p~n", - [plugin_names(ToDisablePlugins)]), - ok = lists:foldl(fun (Plugin, ok) -> disable_one_plugin(Plugin) end, - ok, ToDisablePlugins) - end; + prune(PluginsDir, PluginsDistDir); action(disable, ToDisable0, _Opts, PluginsDir, PluginsDistDir) -> ToDisable = [list_to_atom(Name) || Name <- ToDisable0], @@ -143,10 +126,27 @@ action(disable, ToDisable0, _Opts, PluginsDir, PluginsDistDir) -> sets:from_list(ExplicitlyEnabled))), io:format("Will disable: ~p~n", [ExplicitlyDisabled]), update_enabled_plugins(PluginsDir, ExplicitlyEnabled -- DisableOrder), - action(prune, [], {}, PluginsDir, PluginsDistDir). + prune(PluginsDir, PluginsDistDir). %%---------------------------------------------------------------------------- +prune(PluginsDir, PluginsDistDir) -> + ExplicitlyEnabledPlugins = read_enabled_plugins(PluginsDir), + AllPlugins = find_plugins(PluginsDistDir), + Required = calculate_required_plugins(ExplicitlyEnabledPlugins, AllPlugins), + AllEnabledPlugins = find_plugins(PluginsDir), + ToDisablePlugins = + AllEnabledPlugins -- lookup_plugins(Required, AllEnabledPlugins), + case ToDisablePlugins of + [] -> + io:format("No unnecessary plugins found.~n"); + _ -> + io:format("Disabling unnecessary plugins: ~p~n", + [plugin_names(ToDisablePlugins)]), + ok = lists:foldl(fun (Plugin, ok) -> disable_one_plugin(Plugin) end, + ok, ToDisablePlugins) + end. + %% Get the #plugin{}s from the .ezs in the given directory. find_plugins(PluginsDistDir) -> EZs = filelib:wildcard("*.ez", PluginsDistDir), |
