refactor(rocketmq): move rocketmq bridge into its own app

This commit is contained in:
firest 2023-05-09 12:00:31 +08:00
parent b94290db58
commit a119100a0e
16 changed files with 30 additions and 22 deletions

View File

@ -25,8 +25,8 @@ services:
- ./rocketmq/conf/broker.conf:/etc/rocketmq/broker.conf - ./rocketmq/conf/broker.conf:/etc/rocketmq/broker.conf
environment: environment:
NAMESRV_ADDR: "rocketmq_namesrv:9876" NAMESRV_ADDR: "rocketmq_namesrv:9876"
JAVA_OPTS: " -Duser.home=/opt" JAVA_OPTS: " -Duser.home=/opt -Drocketmq.broker.diskSpaceWarningLevelRatio=0.99"
JAVA_OPT_EXT: "-server -Xms1024m -Xmx1024m -Xmn1024m" JAVA_OPT_EXT: "-server -Xms512m -Xmx512m -Xmn512m"
command: ./mqbroker -c /etc/rocketmq/broker.conf command: ./mqbroker -c /etc/rocketmq/broker.conf
depends_on: depends_on:
- mqnamesrv - mqnamesrv

View File

@ -0,0 +1,2 @@
toxiproxy
rocketmq

View File

@ -0,0 +1,8 @@
{erl_opts, [debug_info]}.
{deps, [
{rocketmq, {git, "https://github.com/emqx/rocketmq-client-erl.git", {tag, "v0.5.1"}}},
{emqx_connector, {path, "../../apps/emqx_connector"}},
{emqx_resource, {path, "../../apps/emqx_resource"}},
{emqx_bridge, {path, "../../apps/emqx_bridge"}}
]}.

View File

@ -2,7 +2,7 @@
{description, "EMQX Enterprise RocketMQ Bridge"}, {description, "EMQX Enterprise RocketMQ Bridge"},
{vsn, "0.1.0"}, {vsn, "0.1.0"},
{registered, []}, {registered, []},
{applications, [kernel, stdlib]}, {applications, [kernel, stdlib, rocketmq]},
{env, []}, {env, []},
{modules, []}, {modules, []},
{links, []} {links, []}

View File

@ -1,7 +1,7 @@
%%-------------------------------------------------------------------- %%--------------------------------------------------------------------
%% Copyright (c) 2022 EMQ Technologies Co., Ltd. All Rights Reserved. %% Copyright (c) 2022-2023 EMQ Technologies Co., Ltd. All Rights Reserved.
%%-------------------------------------------------------------------- %%--------------------------------------------------------------------
-module(emqx_ee_bridge_rocketmq). -module(emqx_bridge_rocketmq).
-include_lib("typerefl/include/types.hrl"). -include_lib("typerefl/include/types.hrl").
-include_lib("hocon/include/hoconsc.hrl"). -include_lib("hocon/include/hoconsc.hrl").
@ -82,7 +82,7 @@ fields("config") ->
#{desc => ?DESC("local_topic"), required => false} #{desc => ?DESC("local_topic"), required => false}
)} )}
] ++ emqx_resource_schema:fields("resource_opts") ++ ] ++ emqx_resource_schema:fields("resource_opts") ++
(emqx_ee_connector_rocketmq:fields(config) -- (emqx_bridge_rocketmq_connector:fields(config) --
emqx_connector_schema_lib:prepare_statement_fields()); emqx_connector_schema_lib:prepare_statement_fields());
fields("post") -> fields("post") ->
[type_field(), name_field() | fields("config")]; [type_field(), name_field() | fields("config")];

View File

@ -1,8 +1,8 @@
%-------------------------------------------------------------------- %--------------------------------------------------------------------
%% Copyright (c) 2023 EMQ Technologies Co., Ltd. All Rights Reserved. %% Copyright (c) 2022-2023 EMQ Technologies Co., Ltd. All Rights Reserved.
%%-------------------------------------------------------------------- %%--------------------------------------------------------------------
-module(emqx_ee_connector_rocketmq). -module(emqx_bridge_rocketmq_connector).
-behaviour(emqx_resource). -behaviour(emqx_resource).

View File

@ -2,7 +2,7 @@
% Copyright (c) 2022-2023 EMQ Technologies Co., Ltd. All Rights Reserved. % Copyright (c) 2022-2023 EMQ Technologies Co., Ltd. All Rights Reserved.
%%-------------------------------------------------------------------- %%--------------------------------------------------------------------
-module(emqx_ee_bridge_rocketmq_SUITE). -module(emqx_bridge_rocketmq_SUITE).
-compile(nowarn_export_all). -compile(nowarn_export_all).
-compile(export_all). -compile(export_all).

View File

@ -9,4 +9,3 @@ pgsql
tdengine tdengine
clickhouse clickhouse
dynamo dynamo
rocketmq

View File

@ -12,7 +12,8 @@
emqx_bridge_cassandra, emqx_bridge_cassandra,
emqx_bridge_opents, emqx_bridge_opents,
emqx_bridge_pulsar, emqx_bridge_pulsar,
emqx_bridge_sqlserver emqx_bridge_sqlserver,
emqx_bridge_rocketmq
]}, ]},
{env, []}, {env, []},
{modules, []}, {modules, []},

View File

@ -34,7 +34,7 @@ api_schemas(Method) ->
ref(emqx_ee_bridge_tdengine, Method), ref(emqx_ee_bridge_tdengine, Method),
ref(emqx_ee_bridge_clickhouse, Method), ref(emqx_ee_bridge_clickhouse, Method),
ref(emqx_ee_bridge_dynamo, Method), ref(emqx_ee_bridge_dynamo, Method),
ref(emqx_ee_bridge_rocketmq, Method), ref(emqx_bridge_rocketmq, Method),
ref(emqx_bridge_sqlserver, Method), ref(emqx_bridge_sqlserver, Method),
ref(emqx_bridge_opents, Method), ref(emqx_bridge_opents, Method),
ref(emqx_bridge_pulsar, Method ++ "_producer"), ref(emqx_bridge_pulsar, Method ++ "_producer"),
@ -58,7 +58,7 @@ schema_modules() ->
emqx_ee_bridge_tdengine, emqx_ee_bridge_tdengine,
emqx_ee_bridge_clickhouse, emqx_ee_bridge_clickhouse,
emqx_ee_bridge_dynamo, emqx_ee_bridge_dynamo,
emqx_ee_bridge_rocketmq, emqx_bridge_rocketmq,
emqx_bridge_sqlserver, emqx_bridge_sqlserver,
emqx_bridge_opents, emqx_bridge_opents,
emqx_bridge_pulsar, emqx_bridge_pulsar,
@ -101,7 +101,7 @@ resource_type(matrix) -> emqx_connector_pgsql;
resource_type(tdengine) -> emqx_ee_connector_tdengine; resource_type(tdengine) -> emqx_ee_connector_tdengine;
resource_type(clickhouse) -> emqx_ee_connector_clickhouse; resource_type(clickhouse) -> emqx_ee_connector_clickhouse;
resource_type(dynamo) -> emqx_ee_connector_dynamo; resource_type(dynamo) -> emqx_ee_connector_dynamo;
resource_type(rocketmq) -> emqx_ee_connector_rocketmq; resource_type(rocketmq) -> emqx_bridge_rocketmq_connector;
resource_type(sqlserver) -> emqx_bridge_sqlserver_connector; resource_type(sqlserver) -> emqx_bridge_sqlserver_connector;
resource_type(opents) -> emqx_bridge_opents_connector; resource_type(opents) -> emqx_bridge_opents_connector;
resource_type(pulsar_producer) -> emqx_bridge_pulsar_impl_producer; resource_type(pulsar_producer) -> emqx_bridge_pulsar_impl_producer;
@ -152,7 +152,7 @@ fields(bridges) ->
)}, )},
{rocketmq, {rocketmq,
mk( mk(
hoconsc:map(name, ref(emqx_ee_bridge_rocketmq, "config")), hoconsc:map(name, ref(emqx_bridge_rocketmq, "config")),
#{ #{
desc => <<"RocketMQ Bridge Config">>, desc => <<"RocketMQ Bridge Config">>,
required => false required => false

View File

@ -5,7 +5,6 @@
{tdengine, {git, "https://github.com/emqx/tdengine-client-erl", {tag, "0.1.6"}}}, {tdengine, {git, "https://github.com/emqx/tdengine-client-erl", {tag, "0.1.6"}}},
{clickhouse, {git, "https://github.com/emqx/clickhouse-client-erl", {tag, "0.3"}}}, {clickhouse, {git, "https://github.com/emqx/clickhouse-client-erl", {tag, "0.3"}}},
{erlcloud, {git, "https://github.com/emqx/erlcloud.git", {tag,"3.5.16-emqx-1"}}}, {erlcloud, {git, "https://github.com/emqx/erlcloud.git", {tag,"3.5.16-emqx-1"}}},
{rocketmq, {git, "https://github.com/emqx/rocketmq-client-erl.git", {tag, "v0.5.1"}}},
{emqx, {path, "../../apps/emqx"}}, {emqx, {path, "../../apps/emqx"}},
{emqx_utils, {path, "../../apps/emqx_utils"}} {emqx_utils, {path, "../../apps/emqx_utils"}}
]}. ]}.

View File

@ -10,8 +10,7 @@
influxdb, influxdb,
tdengine, tdengine,
clickhouse, clickhouse,
erlcloud, erlcloud
rocketmq
]}, ]},
{env, []}, {env, []},
{modules, []}, {modules, []},

View File

@ -1,4 +1,4 @@
emqx_ee_bridge_rocketmq { emqx_bridge_rocketmq {
config_enable.desc: config_enable.desc:
"""Enable or disable this bridge""" """Enable or disable this bridge"""

View File

@ -1,4 +1,4 @@
emqx_ee_connector_rocketmq { emqx_bridge_rocketmq_connector {
access_key.desc: access_key.desc:
"""RocketMQ server `accessKey`.""" """RocketMQ server `accessKey`."""

View File

@ -1,4 +1,4 @@
emqx_ee_bridge_rocketmq { emqx_bridge_rocketmq {
config_enable.desc: config_enable.desc:
"""启用/禁用桥接""" """启用/禁用桥接"""

View File

@ -1,4 +1,4 @@
emqx_ee_connector_rocketmq { emqx_bridge_rocket_connector {
access_key.desc: access_key.desc:
"""RocketMQ 服务器的 `accessKey`。""" """RocketMQ 服务器的 `accessKey`。"""