style: erlfmt all `rebar.config` files and `bin/nodetool`
This commit is contained in:
parent
0f10d9a8bb
commit
5e100f52b8
|
@ -1,10 +1,9 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps,
|
{deps, [
|
||||||
[
|
|
||||||
{minirest, {git, "https://github.com/emqx/minirest.git", {tag, "1.3.7"}}}
|
{minirest, {git, "https://github.com/emqx/minirest.git", {tag, "1.3.7"}}}
|
||||||
]}.
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
% {config, "config/sys.config"},
|
% {config, "config/sys.config"},
|
||||||
|
|
|
@ -47,8 +47,10 @@
|
||||||
{bbmustache, "1.10.0"},
|
{bbmustache, "1.10.0"},
|
||||||
{emqtt, {git, "https://github.com/emqx/emqtt", {tag, "1.10.0"}}}
|
{emqtt, {git, "https://github.com/emqx/emqtt", {tag, "1.10.0"}}}
|
||||||
]},
|
]},
|
||||||
{extra_src_dirs, [{"test", [recursive]},
|
{extra_src_dirs, [
|
||||||
{"integration_test", [recursive]}]}
|
{"test", [recursive]},
|
||||||
|
{"integration_test", [recursive]}
|
||||||
|
]}
|
||||||
]},
|
]},
|
||||||
{standalone_test, [
|
{standalone_test, [
|
||||||
{deps, [
|
{deps, [
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../emqx"}},
|
{emqx, {path, "../emqx"}},
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../emqx"}},
|
{emqx, {path, "../emqx"}},
|
||||||
{emqx_utils, {path, "../emqx_utils"}},
|
{emqx_utils, {path, "../emqx_utils"}},
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../emqx"}},
|
{emqx, {path, "../emqx"}},
|
||||||
{emqx_utils, {path, "../emqx_utils"}},
|
{emqx_utils, {path, "../emqx_utils"}},
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../emqx"}},
|
{emqx, {path, "../emqx"}},
|
||||||
{emqx_utils, {path, "../emqx_utils"}},
|
{emqx_utils, {path, "../emqx_utils"}},
|
||||||
{emqx_auth, {path, "../emqx_auth"}}
|
{emqx_auth, {path, "../emqx_auth"}}
|
||||||
]}.
|
]}.
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../emqx"}},
|
{emqx, {path, "../emqx"}},
|
||||||
{emqx_utils, {path, "../emqx_utils"}},
|
{emqx_utils, {path, "../emqx_utils"}},
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../emqx"}},
|
{emqx, {path, "../emqx"}},
|
||||||
{emqx_utils, {path, "../emqx_utils"}},
|
{emqx_utils, {path, "../emqx_utils"}},
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../emqx"}},
|
{emqx, {path, "../emqx"}},
|
||||||
{emqx_utils, {path, "../emqx_utils"}},
|
{emqx_utils, {path, "../emqx_utils"}},
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../emqx"}},
|
{emqx, {path, "../emqx"}},
|
||||||
{emqx_utils, {path, "../emqx_utils"}},
|
{emqx_utils, {path, "../emqx_utils"}},
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../emqx"}},
|
{emqx, {path, "../emqx"}},
|
||||||
{emqx_utils, {path, "../emqx_utils"}},
|
{emqx_utils, {path, "../emqx_utils"}},
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../emqx"}},
|
{emqx, {path, "../emqx"}},
|
||||||
{emqx_utils, {path, "../emqx_utils"}},
|
{emqx_utils, {path, "../emqx_utils"}},
|
||||||
{emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}}
|
||||||
]}.
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
% {config, "config/sys.config"},
|
% {config, "config/sys.config"},
|
||||||
|
|
|
@ -1,14 +1,16 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {wolff, {git, "https://github.com/kafka4beam/wolff.git", {tag, "1.9.1"}}}
|
{deps, [
|
||||||
, {kafka_protocol, {git, "https://github.com/kafka4beam/kafka_protocol.git", {tag, "4.1.3"}}}
|
{wolff, {git, "https://github.com/kafka4beam/wolff.git", {tag, "1.9.1"}}},
|
||||||
, {brod_gssapi, {git, "https://github.com/kafka4beam/brod_gssapi.git", {tag, "v0.1.1"}}}
|
{kafka_protocol, {git, "https://github.com/kafka4beam/kafka_protocol.git", {tag, "4.1.3"}}},
|
||||||
, {brod, {git, "https://github.com/kafka4beam/brod.git", {tag, "3.16.8"}}}
|
{brod_gssapi, {git, "https://github.com/kafka4beam/brod_gssapi.git", {tag, "v0.1.1"}}},
|
||||||
, {snappyer, "1.2.9"}
|
{brod, {git, "https://github.com/kafka4beam/brod.git", {tag, "3.16.8"}}},
|
||||||
, {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{snappyer, "1.2.9"},
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
]}.
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
||||||
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
{apps, [emqx_bridge_azure_event_hub]}
|
{apps, [emqx_bridge_azure_event_hub]}
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {ecql, {git, "https://github.com/emqx/ecql.git", {tag, "v0.5.2"}}}
|
{deps, [
|
||||||
, {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{ecql, {git, "https://github.com/emqx/ecql.git", {tag, "v0.5.2"}}},
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
]}.
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
||||||
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
{apps, [emqx_bridge_cassandra]}
|
{apps, [emqx_bridge_cassandra]}
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {clickhouse, {git, "https://github.com/emqx/clickhouse-client-erl", {tag, "0.3.1"}}}
|
{deps, [
|
||||||
, {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{clickhouse, {git, "https://github.com/emqx/clickhouse-client-erl", {tag, "0.3.1"}}},
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
]}.
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
||||||
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
{apps, [emqx_bridge_clickhouse]}
|
{apps, [emqx_bridge_clickhouse]}
|
||||||
|
|
|
@ -1,14 +1,16 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {wolff, {git, "https://github.com/kafka4beam/wolff.git", {tag, "1.9.1"}}}
|
{deps, [
|
||||||
, {kafka_protocol, {git, "https://github.com/kafka4beam/kafka_protocol.git", {tag, "4.1.3"}}}
|
{wolff, {git, "https://github.com/kafka4beam/wolff.git", {tag, "1.9.1"}}},
|
||||||
, {brod_gssapi, {git, "https://github.com/kafka4beam/brod_gssapi.git", {tag, "v0.1.1"}}}
|
{kafka_protocol, {git, "https://github.com/kafka4beam/kafka_protocol.git", {tag, "4.1.3"}}},
|
||||||
, {brod, {git, "https://github.com/kafka4beam/brod.git", {tag, "3.16.8"}}}
|
{brod_gssapi, {git, "https://github.com/kafka4beam/brod_gssapi.git", {tag, "v0.1.1"}}},
|
||||||
, {snappyer, "1.2.9"}
|
{brod, {git, "https://github.com/kafka4beam/brod.git", {tag, "3.16.8"}}},
|
||||||
, {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{snappyer, "1.2.9"},
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
]}.
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
||||||
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
{apps, [emqx_bridge_confluent]}
|
{apps, [emqx_bridge_confluent]}
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {erlcloud, {git, "https://github.com/emqx/erlcloud", {tag, "3.7.0.3"}}}
|
{deps, [
|
||||||
, {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{erlcloud, {git, "https://github.com/emqx/erlcloud", {tag, "3.7.0.3"}}},
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
]}.
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
||||||
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
{apps, [emqx_bridge_dynamo]}
|
{apps, [emqx_bridge_dynamo]}
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [
|
{erl_opts, [
|
||||||
warn_unused_vars,
|
warn_unused_vars,
|
||||||
warn_shadow_vars,
|
warn_shadow_vars,
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{erl_opts, [
|
%% -*- mode: erlang; -*-
|
||||||
debug_info
|
|
||||||
]}.
|
{erl_opts, [debug_info]}.
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
|
|
|
@ -1,7 +1,9 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [
|
{deps, [
|
||||||
{hstreamdb_erl, {git, "https://github.com/hstreamdb/hstreamdb_erl.git", {tag, "0.4.5+v0.16.1"}}},
|
{hstreamdb_erl,
|
||||||
|
{git, "https://github.com/hstreamdb/hstreamdb_erl.git", {tag, "0.4.5+v0.16.1"}}},
|
||||||
{emqx, {path, "../../apps/emqx"}},
|
{emqx, {path, "../../apps/emqx"}},
|
||||||
{emqx_utils, {path, "../../apps/emqx_utils"}}
|
{emqx_utils, {path, "../../apps/emqx_utils"}}
|
||||||
]}.
|
]}.
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{deps, [
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
]}.
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
||||||
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
{apps, [emqx_bridge_http]}
|
{apps, [emqx_bridge_http]}
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
|
|
|
@ -1,14 +1,16 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {wolff, {git, "https://github.com/kafka4beam/wolff.git", {tag, "1.9.1"}}}
|
{deps, [
|
||||||
, {kafka_protocol, {git, "https://github.com/kafka4beam/kafka_protocol.git", {tag, "4.1.3"}}}
|
{wolff, {git, "https://github.com/kafka4beam/wolff.git", {tag, "1.9.1"}}},
|
||||||
, {brod_gssapi, {git, "https://github.com/kafka4beam/brod_gssapi.git", {tag, "v0.1.1"}}}
|
{kafka_protocol, {git, "https://github.com/kafka4beam/kafka_protocol.git", {tag, "4.1.3"}}},
|
||||||
, {brod, {git, "https://github.com/kafka4beam/brod.git", {tag, "3.16.8"}}}
|
{brod_gssapi, {git, "https://github.com/kafka4beam/brod_gssapi.git", {tag, "v0.1.1"}}},
|
||||||
, {snappyer, "1.2.9"}
|
{brod, {git, "https://github.com/kafka4beam/brod.git", {tag, "3.16.8"}}},
|
||||||
, {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{snappyer, "1.2.9"},
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
]}.
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
||||||
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
{apps, [emqx_bridge_kafka]}
|
{apps, [emqx_bridge_kafka]}
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {erlcloud, {git, "https://github.com/emqx/erlcloud", {tag, "3.7.0.3"}}}
|
{deps, [
|
||||||
, {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{erlcloud, {git, "https://github.com/emqx/erlcloud", {tag, "3.7.0.3"}}},
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
]}.
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
||||||
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
{apps, [emqx_bridge_kinesis]}
|
{apps, [emqx_bridge_kinesis]}
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{deps, [
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
, {emqx_mongodb, {path, "../../apps/emqx_mongodb"}}
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}},
|
||||||
]}.
|
{emqx_mongodb, {path, "../../apps/emqx_mongodb"}}
|
||||||
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
{apps, [emqx_bridge_mongodb]}
|
{apps, [emqx_bridge_mongodb]}
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../../apps/emqx"}}
|
{emqx, {path, "../../apps/emqx"}}
|
||||||
]}.
|
]}.
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{deps, [
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
, {emqx_mysql, {path, "../../apps/emqx_mysql"}}
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}},
|
||||||
]}.
|
{emqx_mysql, {path, "../../apps/emqx_mysql"}}
|
||||||
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
{apps, [emqx_bridge_mysql]}
|
{apps, [emqx_bridge_mysql]}
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {emqx_oracle, {path, "../../apps/emqx_oracle"}}
|
{deps, [
|
||||||
, {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{emqx_oracle, {path, "../../apps/emqx_oracle"}},
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
]}.
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
||||||
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
% {config, "config/sys.config"},
|
% {config, "config/sys.config"},
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [
|
{deps, [
|
||||||
%% The following two are dependencies of rabbit_common
|
%% The following two are dependencies of rabbit_common
|
||||||
{thoas, {git, "https://github.com/emqx/thoas.git", {tag, "v1.0.0"}}}
|
{thoas, {git, "https://github.com/emqx/thoas.git", {tag, "v1.0.0"}}},
|
||||||
, {credentials_obfuscation, {git, "https://github.com/emqx/credentials-obfuscation.git", {tag, "v3.2.0"}}}
|
{credentials_obfuscation,
|
||||||
|
{git, "https://github.com/emqx/credentials-obfuscation.git", {tag, "v3.2.0"}}},
|
||||||
%% The v3.11.13.2 (v3.11.13_with_app_src branch), employed in the next two dependencies,
|
%% The v3.11.13.2 (v3.11.13_with_app_src branch), employed in the next two dependencies,
|
||||||
%% represents a fork of the official RabbitMQ v3.11.13 tag. This fork diverges
|
%% represents a fork of the official RabbitMQ v3.11.13 tag. This fork diverges
|
||||||
%% from the official version as it includes app and hrl files
|
%% from the official version as it includes app and hrl files
|
||||||
|
@ -15,18 +17,16 @@
|
||||||
%% of rabbit_common and amqp_client. There are hex packages for rabbit_common and
|
%% of rabbit_common and amqp_client. There are hex packages for rabbit_common and
|
||||||
%% amqp_client, but they are not used here as we don't want to depend on
|
%% amqp_client, but they are not used here as we don't want to depend on
|
||||||
%% packages that we don't have control over.
|
%% packages that we don't have control over.
|
||||||
, {rabbit_common, {git_subdir,
|
{rabbit_common,
|
||||||
"https://github.com/emqx/rabbitmq-server.git",
|
{git_subdir, "https://github.com/emqx/rabbitmq-server.git", {tag, "v3.11.13.2"},
|
||||||
{tag, "v3.11.13.2"},
|
"deps/rabbit_common"}},
|
||||||
"deps/rabbit_common"}}
|
{amqp_client,
|
||||||
, {amqp_client, {git_subdir,
|
{git_subdir, "https://github.com/emqx/rabbitmq-server.git", {tag, "v3.11.13.2"},
|
||||||
"https://github.com/emqx/rabbitmq-server.git",
|
"deps/amqp_client"}},
|
||||||
{tag, "v3.11.13.2"},
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
"deps/amqp_client"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
, {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
]}.
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
|
||||||
]}.
|
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
{apps, [emqx_bridge_rabbitmq]}
|
{apps, [emqx_bridge_rabbitmq]}
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{deps, [
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
, {emqx_redis, {path, "../../apps/emqx_redis"}}
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}},
|
||||||
]}.
|
{emqx_redis, {path, "../../apps/emqx_redis"}}
|
||||||
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
{apps, [emqx_bridge_redis]}
|
{apps, [emqx_bridge_redis]}
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{deps, [
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
]}.
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
||||||
|
]}.
|
||||||
|
|
||||||
{shell, [
|
{shell, [
|
||||||
{apps, [emqx_bridge_sqlserver]}
|
{apps, [emqx_bridge_sqlserver]}
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{deps, [
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
]}.
|
{emqx_bridge, {path, "../../apps/emqx_bridge"}}
|
||||||
|
]}.
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
|
|
|
@ -1,2 +1,4 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, []}.
|
{deps, []}.
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
%% -*- mode:erlang -*-
|
%% -*- mode:erlang -*-
|
||||||
{deps,
|
|
||||||
[{emqx_utils, {path, "../emqx_utils"}}]}.
|
{deps, [{emqx_utils, {path, "../emqx_utils"}}]}.
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, []}.
|
{deps, []}.
|
||||||
|
|
||||||
|
|
|
@ -1,2 +1,4 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{deps, [{emqx, {path, "../../apps/emqx"}}]}.
|
{deps, [{emqx, {path, "../../apps/emqx"}}]}.
|
||||||
{project_plugins, [erlfmt]}.
|
{project_plugins, [erlfmt]}.
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
%%-*- mode: erlang -*-
|
%%-*- mode: erlang -*-
|
||||||
|
|
||||||
{plugins, [
|
{plugins, [
|
||||||
rebar3_proper,
|
rebar3_proper,
|
||||||
{grpc_plugin, {git, "https://github.com/HJianBo/grpc_plugin", {tag, "v0.10.2"}}}
|
{grpc_plugin, {git, "https://github.com/HJianBo/grpc_plugin", {tag, "v0.10.2"}}}
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../emqx"}},
|
{emqx, {path, "../emqx"}},
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../emqx"}},
|
{emqx, {path, "../emqx"}},
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../emqx"}},
|
{emqx, {path, "../emqx"}},
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../../apps/emqx"}},
|
{emqx, {path, "../../apps/emqx"}},
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../../apps/emqx"}},
|
{emqx, {path, "../../apps/emqx"}},
|
||||||
{emqx_utils, {path, "../emqx_utils"}},
|
{emqx_utils, {path, "../emqx_utils"}},
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {emqx, {path, "../../apps/emqx"}},
|
{deps, [
|
||||||
|
{emqx, {path, "../../apps/emqx"}},
|
||||||
{emqx_gateway, {path, "../../apps/emqx_gateway"}}
|
{emqx_gateway, {path, "../../apps/emqx_gateway"}}
|
||||||
]}.
|
]}.
|
||||||
|
|
|
@ -1,4 +1,7 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {emqx, {path, "../../apps/emqx"}},
|
{deps, [
|
||||||
|
{emqx, {path, "../../apps/emqx"}},
|
||||||
{emqx_gateway, {path, "../../apps/emqx_gateway"}}
|
{emqx_gateway, {path, "../../apps/emqx_gateway"}}
|
||||||
]}.
|
]}.
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
{jesse, "1.7.0"},
|
{jesse, "1.7.0"},
|
||||||
{emqx, {path, "../../apps/emqx"}},
|
{emqx, {path, "../../apps/emqx"}},
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../../apps/emqx"}},
|
{emqx, {path, "../../apps/emqx"}},
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../emqx"}},
|
{emqx, {path, "../emqx"}},
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../../apps/emqx"}},
|
{emqx, {path, "../../apps/emqx"}},
|
||||||
{emqx_utils, {path, "../emqx_utils"}}
|
{emqx_utils, {path, "../emqx_utils"}}
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{deps, [
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
, {mongodb, {git, "https://github.com/emqx/mongodb-erlang", {tag, "v3.0.22"}}}
|
{emqx_resource, {path, "../../apps/emqx_resource"}},
|
||||||
]}.
|
{mongodb, {git, "https://github.com/emqx/mongodb-erlang", {tag, "v3.0.22"}}}
|
||||||
|
]}.
|
||||||
|
|
|
@ -1,2 +1,4 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{deps, [{emqx, {path, "../../apps/emqx"}}]}.
|
{deps, [{emqx, {path, "../../apps/emqx"}}]}.
|
||||||
{project_plugins, [erlfmt]}.
|
{project_plugins, [erlfmt]}.
|
||||||
|
|
|
@ -1,16 +1,26 @@
|
||||||
%% -*- mode: erlang -*-
|
%% -*- mode: erlang -*-
|
||||||
|
|
||||||
{deps,
|
{deps, [
|
||||||
[{emqx, {path, "../emqx"}}
|
{emqx, {path, "../emqx"}},
|
||||||
%% trace
|
%% trace
|
||||||
, {opentelemetry_api, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"}, "apps/opentelemetry_api"}}
|
{opentelemetry_api,
|
||||||
, {opentelemetry, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"}, "apps/opentelemetry"}}
|
{git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"},
|
||||||
|
"apps/opentelemetry_api"}},
|
||||||
|
{opentelemetry,
|
||||||
|
{git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"},
|
||||||
|
"apps/opentelemetry"}},
|
||||||
%% logs, metrics
|
%% logs, metrics
|
||||||
, {opentelemetry_experimental, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"}, "apps/opentelemetry_experimental"}}
|
{opentelemetry_experimental,
|
||||||
, {opentelemetry_api_experimental, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"}, "apps/opentelemetry_api_experimental"}}
|
{git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"},
|
||||||
|
"apps/opentelemetry_experimental"}},
|
||||||
|
{opentelemetry_api_experimental,
|
||||||
|
{git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"},
|
||||||
|
"apps/opentelemetry_api_experimental"}},
|
||||||
%% export
|
%% export
|
||||||
, {opentelemetry_exporter, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"}, "apps/opentelemetry_exporter"}}
|
{opentelemetry_exporter,
|
||||||
]}.
|
{git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"},
|
||||||
|
"apps/opentelemetry_exporter"}}
|
||||||
|
]}.
|
||||||
|
|
||||||
{edoc_opts, [{preprocess, true}]}.
|
{edoc_opts, [{preprocess, true}]}.
|
||||||
{erl_opts, [
|
{erl_opts, [
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
%% -*- mode: erlang; -*-
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{erl_opts, [debug_info]}.
|
{erl_opts, [debug_info]}.
|
||||||
{deps, [ {jamdb_oracle, {git, "https://github.com/emqx/jamdb_oracle", {tag, "0.4.9.5"}}}
|
{deps, [
|
||||||
, {emqx_connector, {path, "../../apps/emqx_connector"}}
|
{jamdb_oracle, {git, "https://github.com/emqx/jamdb_oracle", {tag, "0.4.9.5"}}},
|
||||||
, {emqx_resource, {path, "../../apps/emqx_resource"}}
|
{emqx_connector, {path, "../../apps/emqx_connector"}},
|
||||||
]}.
|
{emqx_resource, {path, "../../apps/emqx_resource"}}
|
||||||
|
]}.
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
%% -*- mode: erlang; -*-
|
||||||
|
|
||||||
{deps, [
|
{deps, [
|
||||||
{emqx, {path, "../../apps/emqx"}},
|
{emqx, {path, "../../apps/emqx"}},
|
||||||
{erlcloud, {git, "https://github.com/emqx/erlcloud", {tag, "3.7.0.3"}}},
|
{erlcloud, {git, "https://github.com/emqx/erlcloud", {tag, "3.7.0.3"}}},
|
||||||
|
|
105
bin/nodetool
105
bin/nodetool
|
@ -12,7 +12,8 @@
|
||||||
|
|
||||||
main(Args) ->
|
main(Args) ->
|
||||||
case os:type() of
|
case os:type() of
|
||||||
{win32, nt} -> ok;
|
{win32, nt} ->
|
||||||
|
ok;
|
||||||
_nix ->
|
_nix ->
|
||||||
case init:get_argument(start_epmd) of
|
case init:get_argument(start_epmd) of
|
||||||
{ok, [["true"]]} ->
|
{ok, [["true"]]} ->
|
||||||
|
@ -44,22 +45,31 @@ do(Args) ->
|
||||||
ok = do_with_halt(Args, "mnesia_dir", fun create_mnesia_dir/2),
|
ok = do_with_halt(Args, "mnesia_dir", fun create_mnesia_dir/2),
|
||||||
ok = do_with_halt(Args, "chkconfig", fun("-config", X) -> chkconfig(X) end),
|
ok = do_with_halt(Args, "chkconfig", fun("-config", X) -> chkconfig(X) end),
|
||||||
ok = do_with_halt(Args, "chkconfig", fun chkconfig/1),
|
ok = do_with_halt(Args, "chkconfig", fun chkconfig/1),
|
||||||
Args1 = do_with_ret(Args, "-name",
|
Args1 = do_with_ret(
|
||||||
|
Args,
|
||||||
|
"-name",
|
||||||
fun(TargetName) ->
|
fun(TargetName) ->
|
||||||
ThisNode = this_node_name(longnames, TargetName),
|
ThisNode = this_node_name(longnames, TargetName),
|
||||||
{ok, _} = net_kernel:start([ThisNode, longnames]),
|
{ok, _} = net_kernel:start([ThisNode, longnames]),
|
||||||
put(target_node, nodename(TargetName))
|
put(target_node, nodename(TargetName))
|
||||||
end),
|
end
|
||||||
Args2 = do_with_ret(Args1, "-sname",
|
),
|
||||||
|
Args2 = do_with_ret(
|
||||||
|
Args1,
|
||||||
|
"-sname",
|
||||||
fun(TargetName) ->
|
fun(TargetName) ->
|
||||||
ThisNode = this_node_name(shortnames, TargetName),
|
ThisNode = this_node_name(shortnames, TargetName),
|
||||||
{ok, _} = net_kernel:start([ThisNode, shortnames]),
|
{ok, _} = net_kernel:start([ThisNode, shortnames]),
|
||||||
put(target_node, nodename(TargetName))
|
put(target_node, nodename(TargetName))
|
||||||
end),
|
end
|
||||||
RestArgs = do_with_ret(Args2, "-setcookie",
|
),
|
||||||
|
RestArgs = do_with_ret(
|
||||||
|
Args2,
|
||||||
|
"-setcookie",
|
||||||
fun(Cookie) ->
|
fun(Cookie) ->
|
||||||
erlang:set_cookie(node(), list_to_atom(Cookie))
|
erlang:set_cookie(node(), list_to_atom(Cookie))
|
||||||
end),
|
end
|
||||||
|
),
|
||||||
|
|
||||||
[application:start(App) || App <- [crypto, public_key, ssl]],
|
[application:start(App) || App <- [crypto, public_key, ssl]],
|
||||||
TargetNode = get(target_node),
|
TargetNode = get(target_node),
|
||||||
|
@ -95,9 +105,11 @@ do(Args) ->
|
||||||
ok ->
|
ok ->
|
||||||
ok;
|
ok;
|
||||||
{badrpc, timeout} ->
|
{badrpc, timeout} ->
|
||||||
io:format("EMQX is still shutting down, it failed to stop gracefully "
|
io:format(
|
||||||
|
"EMQX is still shutting down, it failed to stop gracefully "
|
||||||
"within the configured timeout of: ~ps\n",
|
"within the configured timeout of: ~ps\n",
|
||||||
[erlang:convert_time_unit(?SHUTDOWN_TIMEOUT_MS, millisecond, second)]),
|
[erlang:convert_time_unit(?SHUTDOWN_TIMEOUT_MS, millisecond, second)]
|
||||||
|
),
|
||||||
halt(1);
|
halt(1);
|
||||||
{badrpc, nodedown} ->
|
{badrpc, nodedown} ->
|
||||||
%% nodetool commands are always executed after a ping
|
%% nodetool commands are always executed after a ping
|
||||||
|
@ -106,8 +118,15 @@ do(Args) ->
|
||||||
ok
|
ok
|
||||||
end;
|
end;
|
||||||
["rpc", Module, Function | RpcArgs] ->
|
["rpc", Module, Function | RpcArgs] ->
|
||||||
case rpc:call(TargetNode, list_to_atom(Module), list_to_atom(Function),
|
case
|
||||||
[RpcArgs], 60000) of
|
rpc:call(
|
||||||
|
TargetNode,
|
||||||
|
list_to_atom(Module),
|
||||||
|
list_to_atom(Function),
|
||||||
|
[RpcArgs],
|
||||||
|
60000
|
||||||
|
)
|
||||||
|
of
|
||||||
ok ->
|
ok ->
|
||||||
ok;
|
ok;
|
||||||
{error, cmd_not_found} ->
|
{error, cmd_not_found} ->
|
||||||
|
@ -122,7 +141,11 @@ do(Args) ->
|
||||||
halt(1)
|
halt(1)
|
||||||
end;
|
end;
|
||||||
["rpc_infinity", Module, Function | RpcArgs] ->
|
["rpc_infinity", Module, Function | RpcArgs] ->
|
||||||
case rpc:call(TargetNode, list_to_atom(Module), list_to_atom(Function), [RpcArgs], infinity) of
|
case
|
||||||
|
rpc:call(
|
||||||
|
TargetNode, list_to_atom(Module), list_to_atom(Function), [RpcArgs], infinity
|
||||||
|
)
|
||||||
|
of
|
||||||
ok ->
|
ok ->
|
||||||
ok;
|
ok;
|
||||||
{badrpc, Reason} ->
|
{badrpc, Reason} ->
|
||||||
|
@ -132,8 +155,15 @@ do(Args) ->
|
||||||
halt(1)
|
halt(1)
|
||||||
end;
|
end;
|
||||||
["rpcterms", Module, Function | ArgsAsString] ->
|
["rpcterms", Module, Function | ArgsAsString] ->
|
||||||
case rpc:call(TargetNode, list_to_atom(Module), list_to_atom(Function),
|
case
|
||||||
consult(lists:flatten(ArgsAsString)), 60000) of
|
rpc:call(
|
||||||
|
TargetNode,
|
||||||
|
list_to_atom(Module),
|
||||||
|
list_to_atom(Function),
|
||||||
|
consult(lists:flatten(ArgsAsString)),
|
||||||
|
60000
|
||||||
|
)
|
||||||
|
of
|
||||||
{badrpc, Reason} ->
|
{badrpc, Reason} ->
|
||||||
io:format("RPC to ~p failed: ~p\n", [TargetNode, Reason]),
|
io:format("RPC to ~p failed: ~p\n", [TargetNode, Reason]),
|
||||||
halt(1);
|
halt(1);
|
||||||
|
@ -153,7 +183,9 @@ do(Args) ->
|
||||||
end;
|
end;
|
||||||
Other ->
|
Other ->
|
||||||
io:format("Other: ~p~n", [Other]),
|
io:format("Other: ~p~n", [Other]),
|
||||||
io:format("Usage: nodetool chkconfig|getpid|ping|stop|rpc|rpc_infinity|rpcterms|eval|cold_eval [Terms] [RPC]\n")
|
io:format(
|
||||||
|
"Usage: nodetool chkconfig|getpid|ping|stop|rpc|rpc_infinity|rpcterms|eval|cold_eval [Terms] [RPC]\n"
|
||||||
|
)
|
||||||
end,
|
end,
|
||||||
net_kernel:stop().
|
net_kernel:stop().
|
||||||
|
|
||||||
|
@ -174,7 +206,7 @@ parse_eval_args(Args) ->
|
||||||
% spaces, so this converts all of that to a single string to parse
|
% spaces, so this converts all of that to a single string to parse
|
||||||
String = binary_to_list(
|
String = binary_to_list(
|
||||||
list_to_binary(
|
list_to_binary(
|
||||||
join(Args," ")
|
join(Args, " ")
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
|
|
||||||
|
@ -188,7 +220,7 @@ parse_eval_args(Args) ->
|
||||||
|
|
||||||
% then scan and parse the string
|
% then scan and parse the string
|
||||||
{ok, Scanned, _} = erl_scan:string(Normalized),
|
{ok, Scanned, _} = erl_scan:string(Normalized),
|
||||||
{ok, Parsed } = erl_parse:parse_exprs(Scanned),
|
{ok, Parsed} = erl_parse:parse_exprs(Scanned),
|
||||||
Parsed.
|
Parsed.
|
||||||
|
|
||||||
do_with_ret(Args, Name, Handler) ->
|
do_with_ret(Args, Name, Handler) ->
|
||||||
|
@ -207,7 +239,8 @@ do_with_halt(Args, Name, Handler) ->
|
||||||
false ->
|
false ->
|
||||||
ok;
|
ok;
|
||||||
{Args1, _Rest} ->
|
{Args1, _Rest} ->
|
||||||
erlang:apply(Handler, Args1), %% should halt
|
%% should halt
|
||||||
|
erlang:apply(Handler, Args1),
|
||||||
io:format(standard_error, "~s handler did not halt", [Name]),
|
io:format(standard_error, "~s handler did not halt", [Name]),
|
||||||
halt(?LINE)
|
halt(?LINE)
|
||||||
end.
|
end.
|
||||||
|
@ -218,7 +251,9 @@ take_args(Args, OptName, 0) ->
|
||||||
take_args(Args, OptName, OptArity) ->
|
take_args(Args, OptName, OptArity) ->
|
||||||
take_args(Args, OptName, OptArity, _Scanned = []).
|
take_args(Args, OptName, OptArity, _Scanned = []).
|
||||||
|
|
||||||
take_args([], _, _, _) -> false; %% no such option
|
%% no such option
|
||||||
|
take_args([], _, _, _) ->
|
||||||
|
false;
|
||||||
take_args([Name | Rest], Name, Arity, Scanned) ->
|
take_args([Name | Rest], Name, Arity, Scanned) ->
|
||||||
length(Rest) >= Arity orelse error({not_enough_args_for, Name}),
|
length(Rest) >= Arity orelse error({not_enough_args_for, Name}),
|
||||||
{Result, Tail} = lists:split(Arity, Rest),
|
{Result, Tail} = lists:split(Arity, Rest),
|
||||||
|
@ -282,16 +317,24 @@ chkconfig(File) ->
|
||||||
{error, Problems} ->
|
{error, Problems} ->
|
||||||
lists:foreach(fun print_issue/1, Problems),
|
lists:foreach(fun print_issue/1, Problems),
|
||||||
%% halt(1) if any problems were errors
|
%% halt(1) if any problems were errors
|
||||||
halt(case [x || {error, _} <- Problems] of
|
halt(
|
||||||
|
case [x || {error, _} <- Problems] of
|
||||||
[] -> 0;
|
[] -> 0;
|
||||||
_ -> 1
|
_ -> 1
|
||||||
end)
|
end
|
||||||
|
)
|
||||||
end;
|
end;
|
||||||
{error, {Line, Mod, Term}} ->
|
{error, {Line, Mod, Term}} ->
|
||||||
io:format(standard_error, ["Error on line ", file:format_error({Line, Mod, Term}), "\n"], []),
|
io:format(
|
||||||
|
standard_error, ["Error on line ", file:format_error({Line, Mod, Term}), "\n"], []
|
||||||
|
),
|
||||||
halt(1);
|
halt(1);
|
||||||
{error, Error} ->
|
{error, Error} ->
|
||||||
io:format(standard_error, ["Error reading config file: ", File, " ", file:format_error(Error), "\n"], []),
|
io:format(
|
||||||
|
standard_error,
|
||||||
|
["Error reading config file: ", File, " ", file:format_error(Error), "\n"],
|
||||||
|
[]
|
||||||
|
),
|
||||||
halt(1)
|
halt(1)
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
@ -304,7 +347,8 @@ check_license(Config) ->
|
||||||
%% start but will not be able to receive connections due to connection limits.
|
%% start but will not be able to receive connections due to connection limits.
|
||||||
%% It may receive license updates from the cluster further.
|
%% It may receive license updates from the cluster further.
|
||||||
case emqx_license:read_license(Config) of
|
case emqx_license:read_license(Config) of
|
||||||
{ok, _} -> ok;
|
{ok, _} ->
|
||||||
|
ok;
|
||||||
{error, Error} ->
|
{error, Error} ->
|
||||||
io:format(standard_error, "Error reading license: ~p~n", [Error]),
|
io:format(standard_error, "Error reading license: ~p~n", [Error]),
|
||||||
halt(1)
|
halt(1)
|
||||||
|
@ -315,7 +359,7 @@ check_license(Config) ->
|
||||||
%%
|
%%
|
||||||
consult(Str) when is_list(Str) ->
|
consult(Str) when is_list(Str) ->
|
||||||
consult([], Str, []);
|
consult([], Str, []);
|
||||||
consult(Bin) when is_binary(Bin)->
|
consult(Bin) when is_binary(Bin) ->
|
||||||
consult([], binary_to_list(Bin), []).
|
consult([], binary_to_list(Bin), []).
|
||||||
|
|
||||||
consult(Cont, Str, Acc) ->
|
consult(Cont, Str, Acc) ->
|
||||||
|
@ -349,7 +393,7 @@ validate([Terms]) ->
|
||||||
|
|
||||||
%% Some initial and basic checks for the app.config file
|
%% Some initial and basic checks for the app.config file
|
||||||
get_validation_funs() ->
|
get_validation_funs() ->
|
||||||
[ ].
|
[].
|
||||||
|
|
||||||
print_issue({warning, Warning}) ->
|
print_issue({warning, Warning}) ->
|
||||||
io:format(standard_error, "Warning in app.config: ~s~n", [Warning]);
|
io:format(standard_error, "Warning in app.config: ~s~n", [Warning]);
|
||||||
|
@ -363,7 +407,7 @@ print_issue({error, Error}) ->
|
||||||
%% for most unicode use cases anyway.
|
%% for most unicode use cases anyway.
|
||||||
join([], Sep) when is_list(Sep) ->
|
join([], Sep) when is_list(Sep) ->
|
||||||
[];
|
[];
|
||||||
join([H|T], Sep) ->
|
join([H | T], Sep) ->
|
||||||
H ++ lists:append([Sep ++ X || X <- T]).
|
H ++ lists:append([Sep ++ X || X <- T]).
|
||||||
|
|
||||||
add_libs_dir() ->
|
add_libs_dir() ->
|
||||||
|
@ -377,7 +421,9 @@ add_libs_dir() ->
|
||||||
lists:foreach(
|
lists:foreach(
|
||||||
fun({Name, Vsn, _}) ->
|
fun({Name, Vsn, _}) ->
|
||||||
add_lib_dir(RootDir, Name, Vsn)
|
add_lib_dir(RootDir, Name, Vsn)
|
||||||
end, Libs);
|
end,
|
||||||
|
Libs
|
||||||
|
);
|
||||||
{error, Reason} ->
|
{error, Reason} ->
|
||||||
%% rel file was been deleted by release handler
|
%% rel file was been deleted by release handler
|
||||||
error({failed_to_read_RELEASES_file, RelFile, Reason})
|
error({failed_to_read_RELEASES_file, RelFile, Reason})
|
||||||
|
@ -405,7 +451,8 @@ add_lib_dir(RootDir, Name, Vsn) ->
|
||||||
%% See `emqx_gateway_schema:fields(gateway)`
|
%% See `emqx_gateway_schema:fields(gateway)`
|
||||||
is_emqx_application(Name) andalso ensure_application_load(Name),
|
is_emqx_application(Name) andalso ensure_application_load(Name),
|
||||||
ok;
|
ok;
|
||||||
{error, _} -> error(LibDir)
|
{error, _} ->
|
||||||
|
error(LibDir)
|
||||||
end.
|
end.
|
||||||
|
|
||||||
is_emqx_application(Name) when is_atom(Name) ->
|
is_emqx_application(Name) when is_atom(Name) ->
|
||||||
|
|
163
rebar.config
163
rebar.config
|
@ -7,28 +7,40 @@
|
||||||
%% with rebar.config.erl module. Final result is written to
|
%% with rebar.config.erl module. Final result is written to
|
||||||
%% rebar.config.rendered if environment DEBUG is set.
|
%% rebar.config.rendered if environment DEBUG is set.
|
||||||
|
|
||||||
{edoc_opts, [{preprocess,true}]}.
|
{edoc_opts, [{preprocess, true}]}.
|
||||||
{erl_opts, [warn_unused_vars,warn_shadow_vars,warn_unused_import,
|
{erl_opts, [
|
||||||
warn_obsolete_guard,compressed, nowarn_unused_import,
|
warn_unused_vars,
|
||||||
|
warn_shadow_vars,
|
||||||
|
warn_unused_import,
|
||||||
|
warn_obsolete_guard,
|
||||||
|
compressed,
|
||||||
|
nowarn_unused_import,
|
||||||
{d, snk_kind, msg}
|
{d, snk_kind, msg}
|
||||||
]}.
|
]}.
|
||||||
|
|
||||||
{xref_checks,[undefined_function_calls,undefined_functions,locals_not_used,
|
{xref_checks, [
|
||||||
deprecated_function_calls,warnings_as_errors,deprecated_functions]}.
|
undefined_function_calls,
|
||||||
|
undefined_functions,
|
||||||
|
locals_not_used,
|
||||||
|
deprecated_function_calls,
|
||||||
|
warnings_as_errors,
|
||||||
|
deprecated_functions
|
||||||
|
]}.
|
||||||
|
|
||||||
%% Check the forbidden mnesia calls:
|
%% Check the forbidden mnesia calls:
|
||||||
{xref_queries,
|
{xref_queries, [
|
||||||
[ {"E || \"mnesia\":\"dirty_delete.*\"/\".*\" : Fun", []}
|
{"E || \"mnesia\":\"dirty_delete.*\"/\".*\" : Fun", []},
|
||||||
, {"E || \"mnesia\":\"transaction\"/\".*\" : Fun", []}
|
{"E || \"mnesia\":\"transaction\"/\".*\" : Fun", []},
|
||||||
, {"E || \"mnesia\":\"async_dirty\"/\".*\" : Fun", []}
|
{"E || \"mnesia\":\"async_dirty\"/\".*\" : Fun", []},
|
||||||
, {"E || \"mnesia\":\"clear_table\"/\".*\" : Fun", []}
|
{"E || \"mnesia\":\"clear_table\"/\".*\" : Fun", []},
|
||||||
, {"E || \"mnesia\":\"create_table\"/\".*\" : Fun", []}
|
{"E || \"mnesia\":\"create_table\"/\".*\" : Fun", []},
|
||||||
, {"E || \"mnesia\":\"delete_table\"/\".*\" : Fun", []}
|
{"E || \"mnesia\":\"delete_table\"/\".*\" : Fun", []}
|
||||||
]}.
|
]}.
|
||||||
|
|
||||||
{dialyzer, [
|
{dialyzer, [
|
||||||
{warnings, [unmatched_returns, error_handling]},
|
{warnings, [unmatched_returns, error_handling]},
|
||||||
{exclude_mods, [emqx_exproto_v_1_connection_unary_handler_bhvr,
|
{exclude_mods, [
|
||||||
|
emqx_exproto_v_1_connection_unary_handler_bhvr,
|
||||||
emqx_exproto_v_1_connection_handler_client,
|
emqx_exproto_v_1_connection_handler_client,
|
||||||
emqx_exproto_v_1_connection_handler_bhvr,
|
emqx_exproto_v_1_connection_handler_bhvr,
|
||||||
emqx_exproto_v_1_connection_adapter_client,
|
emqx_exproto_v_1_connection_adapter_client,
|
||||||
|
@ -41,13 +53,13 @@
|
||||||
{plt_prefix, "emqx_dialyzer"},
|
{plt_prefix, "emqx_dialyzer"},
|
||||||
{plt_apps, all_apps},
|
{plt_apps, all_apps},
|
||||||
{statistics, true}
|
{statistics, true}
|
||||||
]
|
]}.
|
||||||
}.
|
|
||||||
|
|
||||||
{cover_opts, [verbose]}.
|
{cover_opts, [verbose]}.
|
||||||
{cover_export_enabled, true}.
|
{cover_export_enabled, true}.
|
||||||
{cover_excl_mods,
|
{cover_excl_mods,
|
||||||
[ %% generated protobuf modules
|
%% generated protobuf modules
|
||||||
|
[
|
||||||
emqx_exproto_pb,
|
emqx_exproto_pb,
|
||||||
emqx_exhook_pb,
|
emqx_exhook_pb,
|
||||||
%% taken almost as-is from OTP
|
%% taken almost as-is from OTP
|
||||||
|
@ -56,70 +68,71 @@
|
||||||
|
|
||||||
%{provider_hooks, [{pre, [{release, {relup_helper, gen_appups}}]}]}.
|
%{provider_hooks, [{pre, [{release, {relup_helper, gen_appups}}]}]}.
|
||||||
|
|
||||||
{post_hooks,[]}.
|
{post_hooks, []}.
|
||||||
|
|
||||||
{deps,
|
{deps, [
|
||||||
[ {lc, {git, "https://github.com/emqx/lc.git", {tag, "0.3.2"}}}
|
{lc, {git, "https://github.com/emqx/lc.git", {tag, "0.3.2"}}},
|
||||||
, {redbug, {git, "https://github.com/emqx/redbug", {tag, "2.0.10"}}}
|
{redbug, {git, "https://github.com/emqx/redbug", {tag, "2.0.10"}}},
|
||||||
, {covertool, {git, "https://github.com/zmstone/covertool", {tag, "2.0.4.1"}}}
|
{covertool, {git, "https://github.com/zmstone/covertool", {tag, "2.0.4.1"}}},
|
||||||
, {gpb, "4.19.9"}
|
{gpb, "4.19.9"},
|
||||||
, {typerefl, {git, "https://github.com/ieQu1/typerefl", {tag, "0.9.1"}}}
|
{typerefl, {git, "https://github.com/ieQu1/typerefl", {tag, "0.9.1"}}},
|
||||||
, {gun, {git, "https://github.com/emqx/gun", {tag, "1.3.10"}}}
|
{gun, {git, "https://github.com/emqx/gun", {tag, "1.3.10"}}},
|
||||||
, {ehttpc, {git, "https://github.com/emqx/ehttpc", {tag, "0.4.12"}}}
|
{ehttpc, {git, "https://github.com/emqx/ehttpc", {tag, "0.4.12"}}},
|
||||||
, {gproc, {git, "https://github.com/emqx/gproc", {tag, "0.9.0.1"}}}
|
{gproc, {git, "https://github.com/emqx/gproc", {tag, "0.9.0.1"}}},
|
||||||
, {jiffy, {git, "https://github.com/emqx/jiffy", {tag, "1.0.6"}}}
|
{jiffy, {git, "https://github.com/emqx/jiffy", {tag, "1.0.6"}}},
|
||||||
, {cowboy, {git, "https://github.com/emqx/cowboy", {tag, "2.9.2"}}}
|
{cowboy, {git, "https://github.com/emqx/cowboy", {tag, "2.9.2"}}},
|
||||||
, {esockd, {git, "https://github.com/emqx/esockd", {tag, "5.11.1"}}}
|
{esockd, {git, "https://github.com/emqx/esockd", {tag, "5.11.1"}}},
|
||||||
, {rocksdb, {git, "https://github.com/emqx/erlang-rocksdb", {tag, "1.8.0-emqx-2"}}}
|
{rocksdb, {git, "https://github.com/emqx/erlang-rocksdb", {tag, "1.8.0-emqx-2"}}},
|
||||||
, {ekka, {git, "https://github.com/emqx/ekka", {tag, "0.17.0"}}}
|
{ekka, {git, "https://github.com/emqx/ekka", {tag, "0.17.0"}}},
|
||||||
, {gen_rpc, {git, "https://github.com/emqx/gen_rpc", {tag, "3.3.1"}}}
|
{gen_rpc, {git, "https://github.com/emqx/gen_rpc", {tag, "3.3.1"}}},
|
||||||
, {grpc, {git, "https://github.com/emqx/grpc-erl", {tag, "0.6.12"}}}
|
{grpc, {git, "https://github.com/emqx/grpc-erl", {tag, "0.6.12"}}},
|
||||||
, {minirest, {git, "https://github.com/emqx/minirest", {tag, "1.3.15"}}}
|
{minirest, {git, "https://github.com/emqx/minirest", {tag, "1.3.15"}}},
|
||||||
, {ecpool, {git, "https://github.com/emqx/ecpool", {tag, "0.5.7"}}}
|
{ecpool, {git, "https://github.com/emqx/ecpool", {tag, "0.5.7"}}},
|
||||||
, {replayq, {git, "https://github.com/emqx/replayq.git", {tag, "0.3.7"}}}
|
{replayq, {git, "https://github.com/emqx/replayq.git", {tag, "0.3.7"}}},
|
||||||
, {pbkdf2, {git, "https://github.com/emqx/erlang-pbkdf2.git", {tag, "2.0.4"}}}
|
{pbkdf2, {git, "https://github.com/emqx/erlang-pbkdf2.git", {tag, "2.0.4"}}},
|
||||||
, {emqtt, {git, "https://github.com/emqx/emqtt", {tag, "1.10.1"}}}
|
{emqtt, {git, "https://github.com/emqx/emqtt", {tag, "1.10.1"}}},
|
||||||
, {rulesql, {git, "https://github.com/emqx/rulesql", {tag, "0.1.7"}}}
|
{rulesql, {git, "https://github.com/emqx/rulesql", {tag, "0.1.7"}}},
|
||||||
, {observer_cli, "1.7.1"} % NOTE: depends on recon 2.5.x
|
% NOTE: depends on recon 2.5.x
|
||||||
, {system_monitor, {git, "https://github.com/ieQu1/system_monitor", {tag, "3.0.3"}}}
|
{observer_cli, "1.7.1"},
|
||||||
, {getopt, "1.0.2"}
|
{system_monitor, {git, "https://github.com/ieQu1/system_monitor", {tag, "3.0.3"}}},
|
||||||
, {snabbkaffe, {git, "https://github.com/kafka4beam/snabbkaffe.git", {tag, "1.0.8"}}}
|
{getopt, "1.0.2"},
|
||||||
, {hocon, {git, "https://github.com/emqx/hocon.git", {tag, "0.40.3"}}}
|
{snabbkaffe, {git, "https://github.com/kafka4beam/snabbkaffe.git", {tag, "1.0.8"}}},
|
||||||
, {emqx_http_lib, {git, "https://github.com/emqx/emqx_http_lib.git", {tag, "0.5.3"}}}
|
{hocon, {git, "https://github.com/emqx/hocon.git", {tag, "0.40.3"}}},
|
||||||
, {esasl, {git, "https://github.com/emqx/esasl", {tag, "0.2.0"}}}
|
{emqx_http_lib, {git, "https://github.com/emqx/emqx_http_lib.git", {tag, "0.5.3"}}},
|
||||||
, {jose, {git, "https://github.com/potatosalad/erlang-jose", {tag, "1.11.2"}}}
|
{esasl, {git, "https://github.com/emqx/esasl", {tag, "0.2.0"}}},
|
||||||
, {telemetry, "1.1.0"}
|
{jose, {git, "https://github.com/potatosalad/erlang-jose", {tag, "1.11.2"}}},
|
||||||
, {hackney, {git, "https://github.com/emqx/hackney.git", {tag, "1.18.1-1"}}}
|
{telemetry, "1.1.0"},
|
||||||
|
{hackney, {git, "https://github.com/emqx/hackney.git", {tag, "1.18.1-1"}}},
|
||||||
%% to keep in sync with mix.exs
|
%% to keep in sync with mix.exs
|
||||||
, {ssl_verify_fun, "1.1.7"}
|
{ssl_verify_fun, "1.1.7"},
|
||||||
%% in conflict by erlavro and rocketmq
|
%% in conflict by erlavro and rocketmq
|
||||||
, {jsone, {git, "https://github.com/emqx/jsone.git", {tag, "1.7.1"}}}
|
{jsone, {git, "https://github.com/emqx/jsone.git", {tag, "1.7.1"}}},
|
||||||
, {uuid, {git, "https://github.com/okeuday/uuid.git", {tag, "v2.0.6"}}}
|
{uuid, {git, "https://github.com/okeuday/uuid.git", {tag, "v2.0.6"}}},
|
||||||
, {ssl_verify_fun, "1.1.7"}
|
{ssl_verify_fun, "1.1.7"},
|
||||||
, {rfc3339, {git, "https://github.com/emqx/rfc3339.git", {tag, "0.2.3"}}}
|
{rfc3339, {git, "https://github.com/emqx/rfc3339.git", {tag, "0.2.3"}}},
|
||||||
, {bcrypt, {git, "https://github.com/emqx/erlang-bcrypt.git", {tag, "0.6.1"}}}
|
{bcrypt, {git, "https://github.com/emqx/erlang-bcrypt.git", {tag, "0.6.1"}}}
|
||||||
]}.
|
]}.
|
||||||
|
|
||||||
{xref_ignores,
|
{xref_ignores,
|
||||||
[ %% schema registry is for enterprise
|
%% schema registry is for enterprise
|
||||||
{emqx_schema_registry,get_all_schemas,0},
|
[
|
||||||
{emqx_schema_api,format_schema,1},
|
{emqx_schema_registry, get_all_schemas, 0},
|
||||||
{emqx_schema_api,make_schema_params,1},
|
{emqx_schema_api, format_schema, 1},
|
||||||
{emqx_schema_parser,decode,3},
|
{emqx_schema_api, make_schema_params, 1},
|
||||||
{emqx_schema_parser,encode,3},
|
{emqx_schema_parser, decode, 3},
|
||||||
{emqx_schema_registry,add_schema,1},
|
{emqx_schema_parser, encode, 3},
|
||||||
|
{emqx_schema_registry, add_schema, 1},
|
||||||
{emqx_audit, log, 2},
|
{emqx_audit, log, 2},
|
||||||
emqx_exhook_pb, % generated code for protobuf
|
% generated code for protobuf
|
||||||
emqx_exproto_pb % generated code for protobuf
|
emqx_exhook_pb,
|
||||||
]}.
|
% generated code for protobuf
|
||||||
|
emqx_exproto_pb
|
||||||
{eunit_opts,
|
|
||||||
[ verbose
|
|
||||||
]}.
|
]}.
|
||||||
|
|
||||||
{project_plugins,
|
{eunit_opts, [verbose]}.
|
||||||
[ erlfmt,
|
|
||||||
|
{project_plugins, [
|
||||||
|
erlfmt,
|
||||||
{rebar3_hex, "7.0.2"},
|
{rebar3_hex, "7.0.2"},
|
||||||
{rebar3_sbom,
|
{rebar3_sbom, {git, "https://github.com/emqx/rebar3_sbom.git", {tag, "v0.6.1-1"}}}
|
||||||
{git, "https://github.com/emqx/rebar3_sbom.git", {tag, "v0.6.1-1"}}}
|
|
||||||
]}.
|
]}.
|
||||||
|
|
Loading…
Reference in New Issue