Skip to content

Commit 9c4d89d

Browse files
committed
feature_flags_SUITE: Cleanup other plugins in my_plugin/plugins
We only keep `my_plugin-*.ez`. In particular, we don't want another copy of `rabbit_common-*.ez` which might conflict with the primary copy if we configure a secondary Umbrella. (cherry picked from commit bc392db)
1 parent c8cb9ef commit 9c4d89d

File tree

1 file changed

+18
-1
lines changed

1 file changed

+18
-1
lines changed

test/feature_flags_SUITE.erl

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -898,21 +898,38 @@ build_my_plugin(Config) ->
898898
PluginsDir = filename:join(PluginSrcDir, "plugins"),
899899
Config1 = rabbit_ct_helpers:set_config(Config,
900900
[{rmq_plugins_dir, PluginsDir}]),
901-
case filelib:wildcard("plugins/my_plugin-*", PluginSrcDir) of
901+
{MyPlugin, OtherPlugins} = list_my_plugin_plugins(PluginSrcDir),
902+
case MyPlugin of
902903
[] ->
903904
DepsDir = ?config(erlang_mk_depsdir, Config),
904905
Args = ["test-dist",
905906
{"DEPS_DIR=~s", [DepsDir]}],
906907
case rabbit_ct_helpers:make(Config1, PluginSrcDir, Args) of
907908
{ok, _} ->
909+
{_, OtherPlugins1} = list_my_plugin_plugins(PluginSrcDir),
910+
remove_other_plugins(PluginSrcDir, OtherPlugins1),
908911
Config1;
909912
{error, _} ->
910913
{skip, "Failed to compile the `my_plugin` test plugin"}
911914
end;
912915
_ ->
916+
remove_other_plugins(PluginSrcDir, OtherPlugins),
913917
Config1
914918
end.
915919

920+
list_my_plugin_plugins(PluginSrcDir) ->
921+
Files = filelib:wildcard("plugins/*", PluginSrcDir),
922+
lists:partition(
923+
fun(Path) ->
924+
Filename = filename:basename(Path),
925+
re:run(Filename, "^my_plugin-", [{capture, none}]) =:= match
926+
end, Files).
927+
928+
remove_other_plugins(PluginSrcDir, OtherPlugins) ->
929+
[ok = file:delete(
930+
filename:join(PluginSrcDir, Filename))
931+
|| Filename <- OtherPlugins].
932+
916933
enable_feature_flag_on(Config, Node, FeatureName) ->
917934
rabbit_ct_broker_helpers:rpc(
918935
Config, Node, rabbit_feature_flags, enable, [FeatureName]).

0 commit comments

Comments
 (0)