diff --git a/apps/emqx_bridge_redis/docker-ct b/apps/emqx_bridge_redis/docker-ct new file mode 100644 index 000000000..21d6614d9 --- /dev/null +++ b/apps/emqx_bridge_redis/docker-ct @@ -0,0 +1,3 @@ +toxiproxy +redis +redis_cluster diff --git a/apps/emqx_bridge_redis/rebar.config b/apps/emqx_bridge_redis/rebar.config new file mode 100644 index 000000000..a779c88a3 --- /dev/null +++ b/apps/emqx_bridge_redis/rebar.config @@ -0,0 +1,11 @@ +%% -*- mode: erlang; -*- +{erl_opts, [debug_info]}. +{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}} + , {emqx_resource, {path, "../../apps/emqx_resource"}} + , {emqx_bridge, {path, "../../apps/emqx_bridge"}} + , {emqx_redis, {path, "../../apps/emqx_redis"}} + ]}. + +{shell, [ + {apps, [emqx_bridge_redis]} +]}. diff --git a/apps/emqx_bridge_redis/src/emqx_bridge_redis.app.src b/apps/emqx_bridge_redis/src/emqx_bridge_redis.app.src index 6b57c6cd7..0375b6cd2 100644 --- a/apps/emqx_bridge_redis/src/emqx_bridge_redis.app.src +++ b/apps/emqx_bridge_redis/src/emqx_bridge_redis.app.src @@ -1,8 +1,8 @@ {application, emqx_bridge_redis, [ {description, "EMQX Enterprise Redis Bridge"}, - {vsn, "0.1.0"}, + {vsn, "0.1.1"}, {registered, []}, - {applications, [kernel, stdlib]}, + {applications, [kernel, stdlib, emqx_connector, emqx_resource, emqx_bridge, emqx_redis]}, {env, []}, {modules, []}, {links, []} diff --git a/lib-ee/emqx_ee_bridge/src/emqx_ee_bridge_redis.erl b/apps/emqx_bridge_redis/src/emqx_bridge_redis.erl similarity index 99% rename from lib-ee/emqx_ee_bridge/src/emqx_ee_bridge_redis.erl rename to apps/emqx_bridge_redis/src/emqx_bridge_redis.erl index 33153e617..1c8ee75f9 100644 --- a/lib-ee/emqx_ee_bridge/src/emqx_ee_bridge_redis.erl +++ b/apps/emqx_bridge_redis/src/emqx_bridge_redis.erl @@ -1,7 +1,7 @@ %%-------------------------------------------------------------------- %% Copyright (c) 2022-2023 EMQ Technologies Co., Ltd. All Rights Reserved. %%-------------------------------------------------------------------- --module(emqx_ee_bridge_redis). +-module(emqx_bridge_redis). -include_lib("typerefl/include/types.hrl"). -include_lib("hocon/include/hoconsc.hrl"). diff --git a/lib-ee/emqx_ee_connector/src/emqx_ee_connector_redis.erl b/apps/emqx_bridge_redis/src/emqx_bridge_redis_connector.erl similarity index 99% rename from lib-ee/emqx_ee_connector/src/emqx_ee_connector_redis.erl rename to apps/emqx_bridge_redis/src/emqx_bridge_redis_connector.erl index deb2aafea..046c42180 100644 --- a/lib-ee/emqx_ee_connector/src/emqx_ee_connector_redis.erl +++ b/apps/emqx_bridge_redis/src/emqx_bridge_redis_connector.erl @@ -1,7 +1,7 @@ %%-------------------------------------------------------------------- %% Copyright (c) 2022-2023 EMQ Technologies Co., Ltd. All Rights Reserved. %%-------------------------------------------------------------------- --module(emqx_ee_connector_redis). +-module(emqx_bridge_redis_connector). -include_lib("emqx/include/logger.hrl"). -include_lib("snabbkaffe/include/snabbkaffe.hrl"). diff --git a/lib-ee/emqx_ee_bridge/test/emqx_ee_bridge_redis_SUITE.erl b/apps/emqx_bridge_redis/test/emqx_bridge_redis_SUITE.erl similarity index 99% rename from lib-ee/emqx_ee_bridge/test/emqx_ee_bridge_redis_SUITE.erl rename to apps/emqx_bridge_redis/test/emqx_bridge_redis_SUITE.erl index c9dc402bd..242e74b3e 100644 --- a/lib-ee/emqx_ee_bridge/test/emqx_ee_bridge_redis_SUITE.erl +++ b/apps/emqx_bridge_redis/test/emqx_bridge_redis_SUITE.erl @@ -1,7 +1,7 @@ %%-------------------------------------------------------------------- %% Copyright (c) 2022-2023 EMQ Technologies Co., Ltd. All Rights Reserved. %%-------------------------------------------------------------------- --module(emqx_ee_bridge_redis_SUITE). +-module(emqx_bridge_redis_SUITE). -compile(nowarn_export_all). -compile(export_all). @@ -233,7 +233,7 @@ t_check_values(_Config) -> end, lists:flatmap( fun maps:to_list/1, - emqx_ee_bridge_redis:conn_bridge_examples(Method) + emqx_bridge_redis:conn_bridge_examples(Method) ) ) end, @@ -411,7 +411,7 @@ conf_schema(StructName) -> translations => #{}, validations => [], namespace => undefined, - roots => [{root, hoconsc:ref(emqx_ee_bridge_redis, StructName)}] + roots => [{root, hoconsc:ref(emqx_bridge_redis, StructName)}] }. delete_all_rules() -> diff --git a/lib-ee/emqx_ee_bridge/docker-ct b/lib-ee/emqx_ee_bridge/docker-ct index 26430609e..265a053e2 100644 --- a/lib-ee/emqx_ee_bridge/docker-ct +++ b/lib-ee/emqx_ee_bridge/docker-ct @@ -1,4 +1,2 @@ toxiproxy mysql -redis -redis_cluster 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 4a430bea7..84d518804 100644 --- a/lib-ee/emqx_ee_bridge/src/emqx_ee_bridge.erl +++ b/lib-ee/emqx_ee_bridge/src/emqx_ee_bridge.erl @@ -33,9 +33,9 @@ api_schemas(Method) -> api_ref(emqx_ee_bridge_hstreamdb, <<"hstreamdb">>, Method), api_ref(emqx_bridge_influxdb, <<"influxdb_api_v1">>, Method ++ "_api_v1"), api_ref(emqx_bridge_influxdb, <<"influxdb_api_v2">>, Method ++ "_api_v2"), - api_ref(emqx_ee_bridge_redis, <<"redis_single">>, Method ++ "_single"), - api_ref(emqx_ee_bridge_redis, <<"redis_sentinel">>, Method ++ "_sentinel"), - api_ref(emqx_ee_bridge_redis, <<"redis_cluster">>, Method ++ "_cluster"), + api_ref(emqx_bridge_redis, <<"redis_single">>, Method ++ "_single"), + api_ref(emqx_bridge_redis, <<"redis_sentinel">>, Method ++ "_sentinel"), + api_ref(emqx_bridge_redis, <<"redis_cluster">>, Method ++ "_cluster"), api_ref(emqx_bridge_timescale, <<"timescale">>, Method), api_ref(emqx_bridge_matrix, <<"matrix">>, Method), api_ref(emqx_bridge_tdengine, <<"tdengine">>, Method), @@ -59,7 +59,7 @@ schema_modules() -> emqx_bridge_influxdb, emqx_bridge_mongodb, emqx_ee_bridge_mysql, - emqx_ee_bridge_redis, + emqx_bridge_redis, emqx_bridge_pgsql, emqx_bridge_timescale, emqx_bridge_matrix, @@ -102,9 +102,9 @@ resource_type(mongodb_single) -> emqx_bridge_mongodb_connector; resource_type(mysql) -> emqx_connector_mysql; resource_type(influxdb_api_v1) -> emqx_bridge_influxdb_connector; resource_type(influxdb_api_v2) -> emqx_bridge_influxdb_connector; -resource_type(redis_single) -> emqx_ee_connector_redis; -resource_type(redis_sentinel) -> emqx_ee_connector_redis; -resource_type(redis_cluster) -> emqx_ee_connector_redis; +resource_type(redis_single) -> emqx_bridge_redis_connector; +resource_type(redis_sentinel) -> emqx_bridge_redis_connector; +resource_type(redis_cluster) -> emqx_bridge_redis_connector; resource_type(pgsql) -> emqx_connector_pgsql; resource_type(timescale) -> emqx_connector_pgsql; resource_type(matrix) -> emqx_connector_pgsql; @@ -287,7 +287,7 @@ redis_structs() -> [ {Type, mk( - hoconsc:map(name, ref(emqx_ee_bridge_redis, Type)), + hoconsc:map(name, ref(emqx_bridge_redis, Type)), #{ desc => <<"Redis Bridge Config">>, required => false diff --git a/rel/i18n/emqx_ee_bridge_redis.hocon b/rel/i18n/emqx_bridge_redis.hocon similarity index 98% rename from rel/i18n/emqx_ee_bridge_redis.hocon rename to rel/i18n/emqx_bridge_redis.hocon index 78db30196..8e8c18de0 100644 --- a/rel/i18n/emqx_ee_bridge_redis.hocon +++ b/rel/i18n/emqx_bridge_redis.hocon @@ -1,4 +1,4 @@ -emqx_ee_bridge_redis { +emqx_bridge_redis { command_template.desc: """Redis command template used to export messages. Each list element stands for a command name or its argument.