diff --git a/apps/emqx_bridge/src/emqx_bridge.erl b/apps/emqx_bridge/src/emqx_bridge.erl index d5fc42ade..612481663 100644 --- a/apps/emqx_bridge/src/emqx_bridge.erl +++ b/apps/emqx_bridge/src/emqx_bridge.erl @@ -89,7 +89,8 @@ T == pulsar_producer; T == oracle; T == iotdb; - T == kinesis_producer + T == kinesis_producer; + T == greptimedb ). -define(ROOT_KEY, bridges). diff --git a/apps/emqx_bridge/src/schema/emqx_bridge_enterprise.erl b/apps/emqx_bridge/src/schema/emqx_bridge_enterprise.erl index e4ef94c9e..7b9e1d4fa 100644 --- a/apps/emqx_bridge/src/schema/emqx_bridge_enterprise.erl +++ b/apps/emqx_bridge/src/schema/emqx_bridge_enterprise.erl @@ -49,7 +49,8 @@ api_schemas(Method) -> api_ref(emqx_bridge_oracle, <<"oracle">>, Method), api_ref(emqx_bridge_iotdb, <<"iotdb">>, Method), api_ref(emqx_bridge_rabbitmq, <<"rabbitmq">>, Method), - api_ref(emqx_bridge_kinesis, <<"kinesis_producer">>, Method ++ "_producer") + api_ref(emqx_bridge_kinesis, <<"kinesis_producer">>, Method ++ "_producer"), + api_ref(emqx_bridge_greptimedb, Method) ]. schema_modules() -> @@ -75,7 +76,8 @@ schema_modules() -> emqx_bridge_oracle, emqx_bridge_iotdb, emqx_bridge_rabbitmq, - emqx_bridge_kinesis + emqx_bridge_kinesis, + emqx_bridge_greptimedb ]. examples(Method) -> @@ -122,6 +124,8 @@ resource_type(oracle) -> emqx_oracle; resource_type(iotdb) -> emqx_bridge_iotdb_impl; resource_type(rabbitmq) -> emqx_bridge_rabbitmq_connector; resource_type(kinesis_producer) -> emqx_bridge_kinesis_impl_producer. +resource_type(rabbitmq) -> emqx_bridge_rabbitmq_connector. +resource_type(greptimedb) -> emqx_bridge_greptimedb_connector. fields(bridges) -> [ @@ -197,6 +201,14 @@ fields(bridges) -> desc => <<"Apache IoTDB Bridge Config">>, required => false } + )}, + {greptimedb, + mk( + hoconsc:map(name, ref(emqx_bridge_greptimedb, "config")), + #{ + desc => <<"GreptimeDB Bridge Config">>, + required => false + } )} ] ++ kafka_structs() ++ pulsar_structs() ++ gcp_pubsub_structs() ++ mongodb_structs() ++ influxdb_structs() ++ diff --git a/apps/emqx_bridge_greptimedb/src/emqx_bridge_greptimedb_connector.erl b/apps/emqx_bridge_greptimedb/src/emqx_bridge_greptimedb_connector.erl new file mode 100644 index 000000000..8f7aa65e2 --- /dev/null +++ b/apps/emqx_bridge_greptimedb/src/emqx_bridge_greptimedb_connector.erl @@ -0,0 +1 @@ +-module(emqx_bridge_greptimedb_connector). diff --git a/mix.exs b/mix.exs index c6b685893..4d6cf700b 100644 --- a/mix.exs +++ b/mix.exs @@ -171,6 +171,7 @@ defmodule EMQXUmbrella.MixProject do :emqx_bridge_cassandra, :emqx_bridge_opents, :emqx_bridge_dynamo, + :emqx_bridge_greptimedb, :emqx_bridge_hstreamdb, :emqx_bridge_influxdb, :emqx_bridge_iotdb, diff --git a/scripts/spellcheck/dicts/emqx.txt b/scripts/spellcheck/dicts/emqx.txt index 953b0b762..b515a0010 100644 --- a/scripts/spellcheck/dicts/emqx.txt +++ b/scripts/spellcheck/dicts/emqx.txt @@ -29,6 +29,7 @@ EPMD ERL ETS FIXME +GreptimeDB GCM HMAC HOCON