Merge pull request #12098 from thalesmg/revert-downgrade-bridge-id-m-20231205
chore: stop downgrading action id in rule API responses
This commit is contained in:
commit
99399c6e95
|
@ -521,8 +521,7 @@ format_action(Actions) ->
|
|||
|
||||
do_format_action({bridge, BridgeType, BridgeName, _ResId}) ->
|
||||
emqx_bridge_resource:bridge_id(BridgeType, BridgeName);
|
||||
do_format_action({bridge_v2, BridgeType0, BridgeName}) ->
|
||||
BridgeType = try_downgrade(BridgeType0, BridgeName),
|
||||
do_format_action({bridge_v2, BridgeType, BridgeName}) ->
|
||||
emqx_bridge_resource:bridge_id(BridgeType, BridgeName);
|
||||
do_format_action(#{mod := Mod, func := Func, args := Args}) ->
|
||||
#{
|
||||
|
@ -534,25 +533,6 @@ do_format_action(#{mod := Mod, func := Func}) ->
|
|||
function => printable_function_name(Mod, Func)
|
||||
}.
|
||||
|
||||
try_downgrade(BridgeType, BridgeName) ->
|
||||
Conf = try_get_conf(BridgeType, BridgeName),
|
||||
try emqx_bridge_lib:downgrade_type(BridgeType, Conf) of
|
||||
DowngradedBridgeType ->
|
||||
DowngradedBridgeType
|
||||
catch
|
||||
error:{config_not_found, _} ->
|
||||
BridgeType
|
||||
end.
|
||||
|
||||
try_get_conf(BridgeType, BridgeName) ->
|
||||
try emqx_conf:get_raw([actions, BridgeType, BridgeName]) of
|
||||
RawConf ->
|
||||
RawConf
|
||||
catch
|
||||
error:{config_not_found, _} ->
|
||||
#{}
|
||||
end.
|
||||
|
||||
printable_function_name(emqx_rule_actions, Func) ->
|
||||
Func;
|
||||
printable_function_name(Mod, Func) ->
|
||||
|
|
|
@ -310,25 +310,26 @@ t_rule_engine(_) ->
|
|||
}),
|
||||
{400, _} = emqx_rule_engine_api:'/rule_engine'(put, #{body => #{<<"something">> => <<"weird">>}}).
|
||||
|
||||
t_downgrade_bridge_type(_) ->
|
||||
t_dont_downgrade_bridge_type(_) ->
|
||||
case emqx_release:edition() of
|
||||
ee ->
|
||||
do_test_downgrade_bridge_type();
|
||||
do_t_dont_downgrade_bridge_type();
|
||||
ce ->
|
||||
%% downgrade is not supported in CE
|
||||
ok
|
||||
end.
|
||||
|
||||
do_test_downgrade_bridge_type() ->
|
||||
do_t_dont_downgrade_bridge_type() ->
|
||||
%% Create a rule using a bridge V1 ID
|
||||
#{id := RuleId} = create_rule((?SIMPLE_RULE(<<>>))#{<<"actions">> => [<<"kafka:name">>]}),
|
||||
?assertMatch(
|
||||
%% returns a bridges_v2 ID
|
||||
{200, #{data := [#{actions := [<<"kafka:name">>]}]}},
|
||||
%% returns an action ID
|
||||
{200, #{data := [#{actions := [<<"kafka_producer:name">>]}]}},
|
||||
emqx_rule_engine_api:'/rules'(get, #{query_string => #{}})
|
||||
),
|
||||
?assertMatch(
|
||||
%% returns a bridges_v2 ID
|
||||
{200, #{actions := [<<"kafka:name">>]}},
|
||||
%% returns an action ID
|
||||
{200, #{actions := [<<"kafka_producer:name">>]}},
|
||||
emqx_rule_engine_api:'/rules/:id'(get, #{bindings => #{id => RuleId}})
|
||||
),
|
||||
ok.
|
||||
|
|
Loading…
Reference in New Issue