Skip to content

Commit 232b064

Browse files
ikavgomergify[bot]
authored andcommitted
Add CQ and QQ Observer CLI plugins from boot steps
Do not hard code them, also preserve user-provided plugins list Type fix by @kura (cherry picked from commit 2d02964) # Conflicts: # deps/rabbit/src/rabbit_observer_cli.erl
1 parent 4553f8a commit 232b064

File tree

3 files changed

+36
-2
lines changed

3 files changed

+36
-2
lines changed

deps/rabbit/src/rabbit_observer_cli.erl

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,23 @@
1010
-export([init/0]).
1111

1212
init() ->
13+
<<<<<<< HEAD
1314
application:set_env(observer_cli, plugins, [
1415
rabbit_observer_cli_classic_queues:plugin_info(),
1516
rabbit_observer_cli_quorum_queues:plugin_info()
1617
]).
18+
=======
19+
%% prepare observer_cli.plugins for add_plugin/1
20+
application:set_env(observer_cli, plugins, application:get_env(observer_cli, plugins, [])).
21+
22+
%% must be executed after observer_cli boot_step
23+
add_plugin(PluginInfo) ->
24+
case application:get_env(observer_cli, plugins, undefined) of
25+
undefined -> %% shouldn't be there, die
26+
exit({rabbit_observer_cli_step_not_there, "Can't add observer_cli plugin, required boot_step wasn't executed"});
27+
Plugins when is_list(Plugins) ->
28+
application:set_env(observer_cli, plugins, Plugins ++ [PluginInfo]);
29+
_ ->
30+
exit({rabbit_observer_cli_plugins_error, "Can't add observer_cli plugin, existing entry is not a list"})
31+
end.
32+
>>>>>>> 2d029649a (Add CQ and QQ Observer CLI plugins from boot steps)

deps/rabbit/src/rabbit_observer_cli_classic_queues.erl

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,20 @@
77

88
-module(rabbit_observer_cli_classic_queues).
99

10-
-export([plugin_info/0]).
10+
-export([add_plugin/0, plugin_info/0]).
1111
-export([attributes/1, sheet_header/0, sheet_body/1]).
1212

1313
-include_lib("rabbit_common/include/rabbit.hrl").
1414

15+
-rabbit_boot_step({?MODULE,
16+
[{description, "Classic queues observer_cli plugin"},
17+
{mfa, {?MODULE, add_plugin, []}},
18+
{requires, [rabbit_observer_cli]},
19+
{enables, routing_ready}]}).
20+
21+
add_plugin() ->
22+
rabbit_observer_cli:add_plugin(plugin_info()).
23+
1524
plugin_info() ->
1625
#{
1726
module => rabbit_observer_cli_classic_queues,

deps/rabbit/src/rabbit_observer_cli_quorum_queues.erl

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,20 @@
77

88
-module(rabbit_observer_cli_quorum_queues).
99

10-
-export([plugin_info/0]).
10+
-export([add_plugin/0, plugin_info/0]).
1111
-export([attributes/1, sheet_header/0, sheet_body/1]).
1212

1313
-include_lib("rabbit_common/include/rabbit.hrl").
1414

15+
-rabbit_boot_step({?MODULE,
16+
[{description, "Quorum queues observer_cli plugin"},
17+
{mfa, {?MODULE, add_plugin, []}},
18+
{requires, [rabbit_observer_cli]},
19+
{enables, routing_ready}]}).
20+
21+
add_plugin() ->
22+
rabbit_observer_cli:add_plugin(plugin_info()).
23+
1524
plugin_info() ->
1625
#{
1726
module => rabbit_observer_cli_quorum_queues,

0 commit comments

Comments
 (0)