diff --git a/apps/emqx_bridge_tdengine/docker-ct b/apps/emqx_bridge_tdengine/docker-ct
new file mode 100644
index 000000000..c6f0bc826
--- /dev/null
+++ b/apps/emqx_bridge_tdengine/docker-ct
@@ -0,0 +1,2 @@
+toxiproxy
+tdengine
diff --git a/apps/emqx_bridge_tdengine/rebar.config b/apps/emqx_bridge_tdengine/rebar.config
new file mode 100644
index 000000000..72ebca1db
--- /dev/null
+++ b/apps/emqx_bridge_tdengine/rebar.config
@@ -0,0 +1,8 @@
+{erl_opts, [debug_info]}.
+
+{deps, [
+ {tdengine, {git, "https://github.com/emqx/tdengine-client-erl", {tag, "0.1.6"}}},
+ {emqx_connector, {path, "../../apps/emqx_connector"}},
+ {emqx_resource, {path, "../../apps/emqx_resource"}},
+ {emqx_bridge, {path, "../../apps/emqx_bridge"}}
+]}.
diff --git a/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine.app.src b/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine.app.src
index 05e8a6f9f..141973e1e 100644
--- a/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine.app.src
+++ b/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine.app.src
@@ -1,8 +1,8 @@
{application, emqx_bridge_tdengine, [
{description, "EMQX Enterprise TDEngine Bridge"},
- {vsn, "0.1.0"},
+ {vsn, "0.1.1"},
{registered, []},
- {applications, [kernel, stdlib]},
+ {applications, [kernel, stdlib, tdengine]},
{env, []},
{modules, []},
{links, []}
diff --git a/lib-ee/emqx_ee_bridge/src/emqx_ee_bridge_tdengine.erl b/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine.erl
similarity index 95%
rename from lib-ee/emqx_ee_bridge/src/emqx_ee_bridge_tdengine.erl
rename to apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine.erl
index 777bc4f2b..abdc26592 100644
--- a/lib-ee/emqx_ee_bridge/src/emqx_ee_bridge_tdengine.erl
+++ b/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine.erl
@@ -1,7 +1,7 @@
%%--------------------------------------------------------------------
%% Copyright (c) 2023 EMQ Technologies Co., Ltd. All Rights Reserved.
%%--------------------------------------------------------------------
--module(emqx_ee_bridge_tdengine).
+-module(emqx_bridge_tdengine).
-include_lib("typerefl/include/types.hrl").
-include_lib("hocon/include/hoconsc.hrl").
@@ -81,7 +81,8 @@ fields("config") ->
binary(),
#{desc => ?DESC("local_topic"), default => undefined}
)}
- ] ++ emqx_resource_schema:fields("resource_opts") ++ emqx_ee_connector_tdengine:fields(config);
+ ] ++ emqx_resource_schema:fields("resource_opts") ++
+ emqx_bridge_tdengine_connector:fields(config);
fields("post") ->
[type_field(), name_field() | fields("config")];
fields("put") ->
diff --git a/lib-ee/emqx_ee_connector/src/emqx_ee_connector_tdengine.erl b/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine_connector.erl
similarity index 99%
rename from lib-ee/emqx_ee_connector/src/emqx_ee_connector_tdengine.erl
rename to apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine_connector.erl
index 09cbd8db8..46a70e8b6 100644
--- a/lib-ee/emqx_ee_connector/src/emqx_ee_connector_tdengine.erl
+++ b/apps/emqx_bridge_tdengine/src/emqx_bridge_tdengine_connector.erl
@@ -2,7 +2,7 @@
%% Copyright (c) 2023 EMQ Technologies Co., Ltd. All Rights Reserved.
%%--------------------------------------------------------------------
--module(emqx_ee_connector_tdengine).
+-module(emqx_bridge_tdengine_connector).
-behaviour(emqx_resource).
diff --git a/lib-ee/emqx_ee_bridge/test/emqx_ee_bridge_tdengine_SUITE.erl b/apps/emqx_bridge_tdengine/test/emqx_bridge_tdengine_SUITE.erl
similarity index 99%
rename from lib-ee/emqx_ee_bridge/test/emqx_ee_bridge_tdengine_SUITE.erl
rename to apps/emqx_bridge_tdengine/test/emqx_bridge_tdengine_SUITE.erl
index 36ed10f38..1b8db1aaa 100644
--- a/lib-ee/emqx_ee_bridge/test/emqx_ee_bridge_tdengine_SUITE.erl
+++ b/apps/emqx_bridge_tdengine/test/emqx_bridge_tdengine_SUITE.erl
@@ -2,7 +2,7 @@
%% Copyright (c) 2022-2023 EMQ Technologies Co., Ltd. All Rights Reserved.
%%--------------------------------------------------------------------
--module(emqx_ee_bridge_tdengine_SUITE).
+-module(emqx_bridge_tdengine_SUITE).
-compile(nowarn_export_all).
-compile(export_all).
diff --git a/lib-ee/emqx_ee_bridge/docker-ct b/lib-ee/emqx_ee_bridge/docker-ct
index 37a5c9765..faff109eb 100644
--- a/lib-ee/emqx_ee_bridge/docker-ct
+++ b/lib-ee/emqx_ee_bridge/docker-ct
@@ -6,6 +6,5 @@ mysql
redis
redis_cluster
pgsql
-tdengine
clickhouse
dynamo
diff --git a/lib-ee/emqx_ee_bridge/src/emqx_ee_bridge.app.src b/lib-ee/emqx_ee_bridge/src/emqx_ee_bridge.app.src
index decf7d033..df1d778fc 100644
--- a/lib-ee/emqx_ee_bridge/src/emqx_ee_bridge.app.src
+++ b/lib-ee/emqx_ee_bridge/src/emqx_ee_bridge.app.src
@@ -14,7 +14,8 @@
emqx_bridge_pulsar,
emqx_bridge_sqlserver,
emqx_bridge_rocketmq,
- emqx_bridge_rabbitmq
+ emqx_bridge_rabbitmq,
+ emqx_bridge_tdengine
]},
{env, []},
{modules, []},
diff --git a/lib-ee/emqx_ee_bridge/src/emqx_ee_bridge.erl b/lib-ee/emqx_ee_bridge/src/emqx_ee_bridge.erl
index 80c627cc8..9761123da 100644
--- a/lib-ee/emqx_ee_bridge/src/emqx_ee_bridge.erl
+++ b/lib-ee/emqx_ee_bridge/src/emqx_ee_bridge.erl
@@ -31,7 +31,7 @@ api_schemas(Method) ->
ref(emqx_ee_bridge_redis, Method ++ "_cluster"),
ref(emqx_ee_bridge_timescale, Method),
ref(emqx_ee_bridge_matrix, Method),
- ref(emqx_ee_bridge_tdengine, Method),
+ ref(emqx_bridge_tdengine, Method),
ref(emqx_ee_bridge_clickhouse, Method),
ref(emqx_ee_bridge_dynamo, Method),
ref(emqx_bridge_rocketmq, Method),
@@ -56,7 +56,7 @@ schema_modules() ->
emqx_ee_bridge_pgsql,
emqx_ee_bridge_timescale,
emqx_ee_bridge_matrix,
- emqx_ee_bridge_tdengine,
+ emqx_bridge_tdengine,
emqx_ee_bridge_clickhouse,
emqx_ee_bridge_dynamo,
emqx_bridge_rocketmq,
@@ -100,7 +100,7 @@ resource_type(redis_cluster) -> emqx_ee_connector_redis;
resource_type(pgsql) -> emqx_connector_pgsql;
resource_type(timescale) -> emqx_connector_pgsql;
resource_type(matrix) -> emqx_connector_pgsql;
-resource_type(tdengine) -> emqx_ee_connector_tdengine;
+resource_type(tdengine) -> emqx_bridge_tdengine_connector;
resource_type(clickhouse) -> emqx_ee_connector_clickhouse;
resource_type(dynamo) -> emqx_ee_connector_dynamo;
resource_type(rocketmq) -> emqx_bridge_rocketmq_connector;
@@ -139,7 +139,7 @@ fields(bridges) ->
)},
{tdengine,
mk(
- hoconsc:map(name, ref(emqx_ee_bridge_tdengine, "config")),
+ hoconsc:map(name, ref(emqx_bridge_tdengine, "config")),
#{
desc => <<"TDengine Bridge Config">>,
required => false
diff --git a/lib-ee/emqx_ee_connector/rebar.config b/lib-ee/emqx_ee_connector/rebar.config
index a61ed9630..a9c2b4181 100644
--- a/lib-ee/emqx_ee_connector/rebar.config
+++ b/lib-ee/emqx_ee_connector/rebar.config
@@ -2,7 +2,6 @@
{deps, [
{hstreamdb_erl, {git, "https://github.com/hstreamdb/hstreamdb_erl.git", {tag, "0.2.5"}}},
{influxdb, {git, "https://github.com/emqx/influxdb-client-erl", {tag, "1.1.9"}}},
- {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"}}},
{erlcloud, {git, "https://github.com/emqx/erlcloud.git", {tag,"3.5.16-emqx-1"}}},
{emqx, {path, "../../apps/emqx"}},
diff --git a/lib-ee/emqx_ee_connector/src/emqx_ee_connector.app.src b/lib-ee/emqx_ee_connector/src/emqx_ee_connector.app.src
index d02995975..32dcc084c 100644
--- a/lib-ee/emqx_ee_connector/src/emqx_ee_connector.app.src
+++ b/lib-ee/emqx_ee_connector/src/emqx_ee_connector.app.src
@@ -8,7 +8,6 @@
ecpool,
hstreamdb_erl,
influxdb,
- tdengine,
clickhouse,
erlcloud
]},
diff --git a/rel/i18n/emqx_ee_bridge_tdengine.hocon b/rel/i18n/emqx_bridge_tdengine.hocon
similarity index 97%
rename from rel/i18n/emqx_ee_bridge_tdengine.hocon
rename to rel/i18n/emqx_bridge_tdengine.hocon
index e6ece89c8..2d1059d28 100644
--- a/rel/i18n/emqx_ee_bridge_tdengine.hocon
+++ b/rel/i18n/emqx_bridge_tdengine.hocon
@@ -1,4 +1,4 @@
-emqx_ee_bridge_tdengine {
+emqx_bridge_tdengine {
config_enable.desc:
"""Enable or disable this bridge"""
diff --git a/rel/i18n/emqx_ee_connector_tdengine.hocon b/rel/i18n/emqx_bridge_tdengine_connector.hocon
similarity index 88%
rename from rel/i18n/emqx_ee_connector_tdengine.hocon
rename to rel/i18n/emqx_bridge_tdengine_connector.hocon
index 9a34b32ce..9c42dbaa0 100644
--- a/rel/i18n/emqx_ee_connector_tdengine.hocon
+++ b/rel/i18n/emqx_bridge_tdengine_connector.hocon
@@ -1,4 +1,4 @@
-emqx_ee_connector_tdengine {
+emqx_bridge_tdengine_connector {
server.desc:
"""The IPv4 or IPv6 address or the hostname to connect to.
diff --git a/rel/i18n/zh/emqx_ee_bridge_tdengine.hocon b/rel/i18n/zh/emqx_bridge_tdengine.hocon
similarity index 96%
rename from rel/i18n/zh/emqx_ee_bridge_tdengine.hocon
rename to rel/i18n/zh/emqx_bridge_tdengine.hocon
index 5e417a1c7..8d0c7a24e 100644
--- a/rel/i18n/zh/emqx_ee_bridge_tdengine.hocon
+++ b/rel/i18n/zh/emqx_bridge_tdengine.hocon
@@ -1,4 +1,4 @@
-emqx_ee_bridge_tdengine {
+emqx_bridge_tdengine {
config_enable.desc:
"""启用/禁用桥接"""
diff --git a/rel/i18n/zh/emqx_ee_connector_tdengine.hocon b/rel/i18n/zh/emqx_bridge_tdengine_connector.hocon
similarity index 88%
rename from rel/i18n/zh/emqx_ee_connector_tdengine.hocon
rename to rel/i18n/zh/emqx_bridge_tdengine_connector.hocon
index f3064aeb5..6465bff35 100644
--- a/rel/i18n/zh/emqx_ee_connector_tdengine.hocon
+++ b/rel/i18n/zh/emqx_bridge_tdengine_connector.hocon
@@ -1,4 +1,4 @@
-emqx_ee_connector_tdengine {
+emqx_bridge_tdengine_connector {
server.desc:
"""将要连接的 IPv4 或 IPv6 地址,或者主机名。