Skip to content

Commit cf0cf52

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 c27c25b commit cf0cf52

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
@@ -900,21 +900,38 @@ build_my_plugin(Config) ->
900900
PluginsDir = filename:join(PluginSrcDir, "plugins"),
901901
Config1 = rabbit_ct_helpers:set_config(Config,
902902
[{rmq_plugins_dir, PluginsDir}]),
903-
case filelib:wildcard("plugins/my_plugin-*", PluginSrcDir) of
903+
{MyPlugin, OtherPlugins} = list_my_plugin_plugins(PluginSrcDir),
904+
case MyPlugin of
904905
[] ->
905906
DepsDir = ?config(erlang_mk_depsdir, Config),
906907
Args = ["test-dist",
907908
{"DEPS_DIR=~s", [DepsDir]}],
908909
case rabbit_ct_helpers:make(Config1, PluginSrcDir, Args) of
909910
{ok, _} ->
911+
{_, OtherPlugins1} = list_my_plugin_plugins(PluginSrcDir),
912+
remove_other_plugins(PluginSrcDir, OtherPlugins1),
910913
Config1;
911914
{error, _} ->
912915
{skip, "Failed to compile the `my_plugin` test plugin"}
913916
end;
914917
_ ->
918+
remove_other_plugins(PluginSrcDir, OtherPlugins),
915919
Config1
916920
end.
917921

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

0 commit comments

Comments
 (0)