Commit Graph

2060 Commits

Author SHA1 Message Date
zhouzb b97c46e3cf test(authn): fix test cases 2021-07-27 10:53:33 +08:00
zhouzb 7febcb852a feat(authn http api): add test case and improve http api spec 2021-07-27 09:54:08 +08:00
Turtle 7a24878436 feat(prometheus): Support swagger prometheus API 2021-07-27 08:57:40 +08:00
Turtle fa37151b69 fix(tests): fix check apps api test cases 2021-07-26 21:35:28 +08:00
Turtle 5434aa02ff feat(mgmt): ignore emqx_dashboard API and apps API 2021-07-26 21:35:28 +08:00
Shawn c0c5bcc698 feat(config): support deleting a config entry 2021-07-26 18:50:24 +08:00
zhanghongtong 4c5b75f281 chore: rename acl to authz
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-26 16:10:33 +08:00
Turtle eac9420170 feat(dashboard): Support swagger dashboard API 2021-07-26 15:00:40 +08:00
Turtle 569d54a4c0 feat(dashboard): Update the configuration file to hocon 2021-07-26 15:00:40 +08:00
Turtle 3b1303340a chore: format statsd code 2021-07-26 14:55:42 +08:00
zhouzb 327ff8636f feat(authn http api): provide http api for authn and improve update mechanism 2021-07-26 14:41:15 +08:00
zhouzb 7d2aac7e24 feat(http pipelining): support to switch http pipelining 2021-07-26 14:41:15 +08:00
zhouzb 3e515d8a8a fix(authn): fix bugs for http authn 2021-07-26 14:41:14 +08:00
zhouzb 2a594b1a73 fix(authn): fix some bugs 2021-07-26 14:41:14 +08:00
zhouzb a5a596e3ac fix(schema): fix config schema for authn 2021-07-26 14:41:14 +08:00
turtleDeng cafed47da6
refactor(config): rename emqx_config:update_config/2 to emqx_config:update/2
refactor(config): rename emqx_config:update_config/2 to emqx_config:update/2
2021-07-26 09:14:13 +08:00
Zaiming (Stone) Shi 2e6b5a0d34
Merge pull request #5305 from zmstone/chore-add-notice-files
chore: add notice files
2021-07-24 09:49:52 +02:00
JianBo He cd22f54f08 fix(gw-sn): fix stats function call if session is undefied 2021-07-24 10:19:05 +08:00
JianBo He 14270da53b chore(gw): remove needless lines 2021-07-24 10:19:05 +08:00
JianBo He d35d0d7834 test(gw): refine sn tests 2021-07-24 10:19:05 +08:00
JianBo He 15bba6afe3 fix(gw-exproto): fix start udp/dtls listener 2021-07-24 10:19:05 +08:00
JianBo He 7f1d245a8f test(gw): refine exproto tests 2021-07-24 10:19:05 +08:00
JianBo He 4125209d1c fix(gw): fix bad function calling 2021-07-24 10:19:05 +08:00
JianBo He dbd78b83b1 chore(gw): delete needless files 2021-07-24 10:19:05 +08:00
JianBo He fd828ad216 fix(gw-exproto): fix diaylzer warnings 2021-07-24 10:19:05 +08:00
JianBo He 5f47ceb118 refactor(gw-exproto): move exproto into gateway 2021-07-24 10:19:05 +08:00
Shawn 935ef0db20 fix(config): rename callback functions for emqx_config_handler 2021-07-23 18:56:30 +08:00
Shawn bbf40a85bf fix(config): merge conflicts 2021-07-23 18:49:09 +08:00
DDDHuang ec88e3a404 chore: sys uptime by millisecond 2021-07-23 18:32:38 +08:00
Shawn 7a628e201f fix(config): merge conflicts 2021-07-23 18:20:45 +08:00
turtleDeng 29826000f0
Merge branch 'master' into update_config 2021-07-23 18:09:01 +08:00
turtleDeng 6bc096d22e
Merge pull request #5292 from turtleDeng/statsd
feat(statsd): optimize default value & add statsd http API
2021-07-23 18:05:58 +08:00
zhanghongtong 4b50bfb4c2 chore(config): rename acl to authorize in emqx.conf
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-23 17:56:15 +08:00
Zaiming Shi 79c550dc54 chore: add notice files 2021-07-23 11:47:04 +02:00
Turtle 6617ba2772 feat(statsd): add statsd http API 2021-07-23 17:41:53 +08:00
Turtle 1776acee8a refactor(statsd): optimize default value 2021-07-23 17:41:53 +08:00
Shawn 2ddcfdf365 refactor(config): rename emqx_config:update_config/2 to emqx_config:update/2 2021-07-23 17:25:39 +08:00
DDDHuang ffc7a070f4
Merge branch 'master' into api_format 2021-07-23 17:09:47 +08:00
Shawn ec8fed9a7d fix(test): wait a while after subscribing/unsubscribing to a topic 2021-07-23 17:06:28 +08:00
Shawn d205a88f2a refactor(config): change alarm.validity_period to ms 2021-07-23 17:06:28 +08:00
Shawn 67f76c009a refactor(config): change sysmon.os.mem_check_interval to ms 2021-07-23 17:06:28 +08:00
Shawn 41820e3bbd refactor(config): change sysmon.os.cpu_check_interval to ms 2021-07-23 17:06:28 +08:00
Shawn 7837069a93 fix(modules): disable telemetry by default 2021-07-23 17:06:28 +08:00
Shawn 14da108443 fix(mqtt): mqtt5 property session expiry interval not working 2021-07-23 17:06:28 +08:00
Shawn 6710695f9d fix(test): wait a while after kicking out the client 2021-07-23 17:06:28 +08:00
Shawn 0704cbc986 refactor(config): change mqtt.session_expiry_interval to ms 2021-07-23 17:06:28 +08:00
Shawn 684e46c45d refactor(config): change mqtt.await_rel_timeout to ms 2021-07-23 17:06:28 +08:00
Shawn c5bc7e7e57 fix(test): update testcases for retry_interval 2021-07-23 17:06:28 +08:00
Shawn 93e1257045 refactor(config): change mqtt.retry_interval to ms 2021-07-23 17:06:28 +08:00
Shawn 048ba1e067 refactor(config): change global_gc_interval to ms 2021-07-23 17:06:28 +08:00
DDDHuang 2b12fa1c05 chore: api code format; fix: atom refname; update minirest version 2021-07-23 16:40:19 +08:00
DDDHuang e96bac87ce refactor: alarms api; add: alarms format function 2021-07-23 13:56:23 +08:00
DDDHuang 9642bcce88 refactor: listeners api; add: listeners list function; fix: listener
already start error
2021-07-23 13:52:19 +08:00
DDDHuang 0cf4723c73
refactor: sub api; fix: fuzzy function (#5287) 2021-07-23 13:49:51 +08:00
Shawn 419036bd9a fix(test): remove emqx:get_env from lwm2m and telemetry 2021-07-23 10:56:20 +08:00
Shawn 7c5caee89c fix(trie): export set_compact/1 2021-07-23 10:56:20 +08:00
Shawn 327a464844 fix(test): reload emqx_plugins after updating the config 2021-07-23 10:56:20 +08:00
Shawn c2e7acc1f1 fix(test): change application:set_env/3 to emqx_config:put/2 2021-07-23 10:56:20 +08:00
Shawn 5fd54d13d2 fix(test): cannot get trie_compaction config 2021-07-23 10:56:20 +08:00
Shawn f2e62def1b refactor(config): remove emqx:get_env/1,2 from testcases 2021-07-23 10:56:20 +08:00
Shawn 0a3b77f65d fix(config): write configs to emqx_override.conf failed 2021-07-23 10:56:20 +08:00
Shawn 2666c06232 refactor(config): load emqx.conf before all other tasks in emqx_app 2021-07-23 10:56:20 +08:00
Shawn 1433a7e0fe refactor(config): remove emqx:get_env/1,2 2021-07-23 10:56:20 +08:00
JianBo He b28435f811 fix(gw-stomp): fix unknown outgoing packets 2021-07-22 19:56:04 +08:00
JianBo He 0f79ffca01 feat(gw-conn): support the incoming keepalive oct 2021-07-22 19:56:04 +08:00
JianBo He ef6a38bfd2 refactor(gw): unify the connection process module 2021-07-22 19:56:04 +08:00
JianBo He c6b3447598 fix(gw): correct stats/1 for mqttsn&stomp 2021-07-22 19:56:04 +08:00
Turtle 709f6a535b feat(telemetry): telemetry API support swagger 2021-07-22 16:21:05 +08:00
JianBo He 46ae179a7a chore(gw): fix dialyzer warnings 2021-07-22 09:00:20 +08:00
Zaiming (Stone) Shi fd2c3fe37b
Merge pull request #5282 from zmstone/upgrade-ekka-0.10.4
fix(rebar.config): upgrade to ekka 0.10.4
2021-07-21 15:24:28 +02:00
Zaiming Shi 051ac91299 fix(rebar.config): upgrade to ekka 0.10.4 2021-07-21 11:54:32 +02:00
William Yang de387c4c8e chore: gitignore erlang_ls.config 2021-07-21 17:51:49 +08:00
William Yang 7521d09079 feat(quic): toggle QUIC listener and fix ci test 2021-07-21 17:51:49 +08:00
Shawn f913cf9617 fix(rpc): read tcp_client_num from emqx_config 2021-07-21 17:34:01 +08:00
Shawn 29bb4c2a01 fix(configs): correct the default value of some configs 2021-07-21 17:34:01 +08:00
JianBo He 74db04f1c0 chore(emqx): enrich version type 2021-07-21 16:09:48 +08:00
JianBo He 6a99e1535f chore(gw): fix dialyzer warnings 2021-07-21 16:09:48 +08:00
JianBo He 623fc67fc9 chore(gw): uncomment mqttsn confs 2021-07-21 16:09:48 +08:00
JianBo He 9355adae4b fix(gw): fix xrefs 2021-07-21 16:09:48 +08:00
JianBo He f22384669e chore(gw): temporarily comment out asleep/awake tests 2021-07-21 16:09:48 +08:00
JianBo He 61473b8a5b test(gw): fix the mqtt-sn frame tests 2021-07-21 16:09:48 +08:00
JianBo He 18eaadae08 refactor(gw): remove needless modules 2021-07-21 16:09:48 +08:00
JianBo He 21796314f3 test(gw): fix bad test cases 2021-07-21 16:09:48 +08:00
JianBo He 0f9b5ff3a1 refactor(gw): use typical conn&channel to implement mqtt-sn gateway 2021-07-21 16:09:48 +08:00
JianBo He 45912d8a81 fix(gw): fix typos 2021-07-21 16:09:48 +08:00
JianBo He 40d714049e chore(gw): delete needless files 2021-07-21 16:09:48 +08:00
zhanghongtong 32eabf041e chore(authz): update url type for authz schema 2021-07-21 13:47:35 +08:00
JianBo He 26ba1b630c test(session): fix test cases 2021-07-21 09:47:49 +08:00
JianBo He b782d4c53a refactor(emqx): strip the side effects of emqx_session module 2021-07-21 09:47:49 +08:00
DDDHuang 2d4d7b2923 fix: routes api function cause 2021-07-20 13:56:20 +08:00
Shawn 98c7f9edb2 refactor(configs): make mqtt related configs only in zone 2021-07-20 11:41:16 +08:00
Shawn af5470cb30 refactor(configs): make acl related configs only in zone 2021-07-20 11:41:16 +08:00
Shawn e0e9b7ec5b fix(emqx_congestion): read congestion config only from zone 2021-07-20 11:41:16 +08:00
Shawn 2898e9c6dc refactor(config): make rate_limit only in listeners for now 2021-07-20 11:41:16 +08:00
Shawn e6424d63d8 refactor(config): don't allow inheritable config entries 2021-07-20 11:41:16 +08:00
Shawn 32b571091b fix(statsd): remove the extra debug log msg 2021-07-20 11:41:16 +08:00
DDDHuang 746a91efd8
Merge pull request #5263 from DDDHuang/apps_api
refactor: apps api; rename: error response util function
2021-07-20 11:40:59 +08:00
DDDHuang 9a64c9a464
Merge pull request #5261 from DDDHuang/routes_api
refactor: routes api
2021-07-20 09:40:04 +08:00
DDDHuang 51dc9093ed refactor: apps api 2021-07-20 09:35:30 +08:00
DDDHuang 14d9b876e7 refactor: routes api 2021-07-19 17:33:48 +08:00
zhanghongtong 358db0320b fix(authz): fix a re:replace error when username is undefined 2021-07-19 15:31:07 +08:00
DDDHuang 120c2b8cdf chore: add mgmt start listener log 2021-07-19 15:27:12 +08:00
Shawn 31f016fa22 refactor(config): remove emqx_zone 2021-07-19 14:47:43 +08:00
firest 4427ec8155 fix(emqx_retainer): fix remaining quota check error 2021-07-19 08:55:24 +08:00
zhanghongtong 2476664385 chore(release): update emqx release version 2021-07-17 18:12:40 +08:00
Shawn a0f8ca2c3f fix(config): delete the emqx.conf.old 2021-07-17 17:36:01 +08:00
Turtle eadaa9e557 Merge branch 'emqx_config' of https://github.com/terry-xiaoyu/emqx into emqx_config 2021-07-17 17:10:07 +08:00
Turtle 7b38ae7f47 fix(test): fix check paho test cases fail 2021-07-17 17:09:16 +08:00
Shawn 6915d9abeb fix(authz): update testcases for emqx_authz 2021-07-17 16:59:31 +08:00
Shawn 1d2cb6cb81
Merge branch 'master' into emqx_config 2021-07-17 15:53:12 +08:00
zhanghongtong bb417e4498 feat(authz): support http
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-17 15:48:29 +08:00
Turtle 89f10d3902 fix(test): fix check emqx management test cases fail 2021-07-17 15:40:18 +08:00
Shawn c9cf8b66e7 fix(docker): cannot set log_level using os env 2021-07-17 15:25:18 +08:00
Turtle b9e3095ac3 fix(test): fix check emqx management test cases fail 2021-07-17 14:59:52 +08:00
Shawn d047f820e5 fix(test): update testcases for emqx_gateway 2021-07-17 13:19:45 +08:00
lafirest 4c931470d8 feat(eqmx_retainer): let emqx_retainer can support other types of databases 2021-07-17 13:18:03 +08:00
Shawn f68b8c4097 fix(test): update testcases for emqx_gateway 2021-07-17 11:07:46 +08:00
Shawn f7f2523030 fix(dialyzer): handle undefined conf in post_update_config/2 2021-07-17 10:38:30 +08:00
Shawn 7a77f4f54e fix(emqx_schema): start emqx as standalone app failed 2021-07-17 10:19:06 +08:00
Turtle dfa9026ea3 fix(tests): fix check authn test fail 2021-07-17 09:06:05 +08:00
Shawn 4d279e47d8 chore(merge): merge code from master 2021-07-17 01:20:57 +08:00
Shawn b82693cc0b fix(authz): support config hot upgrading 2021-07-17 01:18:14 +08:00
turtleDeng fc13c59d7b
chore: use hocon to replace cuttlefish 2021-07-16 23:52:43 +08:00
DDDHuang 92ae5663a6 feat: update to openapi 3.0.0 2021-07-16 23:26:56 +08:00
Turtle ed1cf33b9d chore: merge coap/lwm2m/exhook/exproto to emqx_gateway dir 2021-07-16 23:24:36 +08:00
turtleDeng 8c9be070b4
chore: update hocon tag 2021-07-16 19:59:06 +08:00
Shawn 6d871cc52f fix(authz): resources not created when authz started 2021-07-16 18:06:10 +08:00
Shawn bb6d7c4e0b
Merge branch 'master' into emqx_config 2021-07-16 16:49:50 +08:00
Shawn c3d24db642 fix(authz): update emqx_authz for new config 2021-07-16 14:07:27 +08:00
k32 9d9d9f2ce3
Merge pull request #5227 from k32/dev/bump_ekka
chore(ekka): Bump version to 0.10.3
2021-07-15 17:09:59 +02:00
Shawn c834494113 fix(cli): CLI of emqx_gateway_cli broken 2021-07-15 20:39:06 +08:00
Shawn 543f2c78c5 fix(ekka): cluster cannot get started with the new config 2021-07-15 20:28:12 +08:00
DDDHuang 1bfa6ead42 refactor: publish api; add: batch schema util function 2021-07-15 19:25:26 +08:00
DDDHuang 187d200cb7 refactor: stats api & metrics api; fix: clients api parameter type lose 2021-07-15 19:19:26 +08:00
Shawn a1488b3946 fix(test): merge conflicts 2021-07-15 18:54:31 +08:00
Shawn ba166967c9
Merge branch 'master' into emqx_config 2021-07-15 18:44:56 +08:00
Shawn a16a15e3a9 fix(test): remove tlsv1.3 provisionally to make test pass 2021-07-15 18:34:27 +08:00
tigercl 4ed14dfdfd
Merge pull request #5228 from tigercl/feat/one-authn
feat(one authn): merge simple authn and enhanced authn
2021-07-15 17:37:50 +08:00
Shawn d5756ecd52 fix(test): update the testcases 2021-07-15 17:19:46 +08:00
zhouzb ddda18bcb8 chore(authn): add jose dep 2021-07-15 17:14:35 +08:00
DDDHuang e838df99a9 fix: api auth header support 2021-07-15 16:20:46 +08:00
Shawn 6fbf20b930 fix(test): update the testcases 2021-07-15 16:19:26 +08:00
zhouzb 07ce636803 feat(authn): support enable authn in config 2021-07-15 16:16:41 +08:00
Shawn 3c47ab92d7 fix(listeners): update the default tls ciphers 2021-07-15 15:11:54 +08:00
Shawn bcae0cbb50 fix(gateways): hardcode the listener and zone names 2021-07-15 14:26:12 +08:00
zhouzb 5ecc992944 chore(authn): fix coap authn and update tag for esasl 2021-07-15 14:25:23 +08:00
Shawn f6702b020e fix(hocon): update hocon version to 0.10.1 2021-07-15 13:57:24 +08:00
Shawn 533f4cf63e fix(dialyzer): some dialyzer complains 2021-07-15 13:52:06 +08:00
Shawn 0cc01c2bee Merge branch 'master' into emqx_config 2021-07-15 13:18:57 +08:00
Shawn 4da59a5785 fix(dialyzer): some dialyzer problems 2021-07-15 11:56:13 +08:00
Shawn 7d66760c1e fix(hocon): start emqx failed using os env configs 2021-07-15 11:55:31 +08:00
zhouzb beecc4c5a2 test(authn): fix test case for authn 2021-07-15 11:36:49 +08:00
JianBo He 980c7d91db chore(gw): fix mqtt-sn test cases 2021-07-15 10:35:28 +08:00
JianBo He fc5baf8fd4 refactor(gw-sn): support mutil-registry process 2021-07-15 10:35:28 +08:00
JianBo He d2430e70a8 refactor(gw): move mqtt-sn to gateway 2021-07-15 10:35:28 +08:00
k32 3bb41ae367 chore(ekka): Bump version to 0.10.3 2021-07-14 17:49:31 +02:00
zhouzb 42c5432514 fix(http authn): fix bugs for http authn and http connector 2021-07-14 18:20:46 +08:00
zhouzb 6a8e35ce3a feat(one authn): merge simple authn and enhanced authn 2021-07-14 16:54:13 +08:00
Shawn 157b97eb8a fix(config): workaround for emqx_sn to use configs of mqtt_tcp listener 2021-07-14 10:09:12 +08:00
Shawn 8e32d5314d
Merge branch 'master' into emqx_config 2021-07-14 09:33:58 +08:00
Shawn 25d7616881 fix(test): update the testcases for emqx_ws_connection_SUITE 2021-07-13 19:58:54 +08:00
Shawn 7d9321a141 fix(test): apply default configs for emqx_session_SUITE 2021-07-13 18:39:57 +08:00
Shawn e4e7eb81e4 fix(test): update the testcases for emqx_mqtt_caps_SUITE 2021-07-13 17:42:44 +08:00
Shawn 3aaf7041a6 fix(test): update the testcases for emqx_os_mon_SUITE 2021-07-13 17:41:15 +08:00
Shawn 01c4c655fb fix(config): make emqx_caps work with the new config struct 2021-07-13 16:42:32 +08:00
Shawn a0bddfc834 fix(config): start quic connection with zone and listener names 2021-07-13 16:41:20 +08:00
Shawn b123299c70 fix(config): make flapping work with the new config 2021-07-13 16:39:59 +08:00
Shawn 871353704a fix(test): update the testcases for emqx_channel_SUITE 2021-07-13 16:38:06 +08:00
Shawn 868b31d123 fix(test): update the testcases for emqx_mqtt_protocol_v5_SUITE 2021-07-13 16:37:18 +08:00
DDDHuang 500047fa30 refactor: nodes api ; add: api test util module 2021-07-13 15:08:28 +08:00
Shawn 6d9918d3e5 fix(test): update the testcases for emqx_vm_mon_SUITE 2021-07-13 13:52:29 +08:00
DDDHuang a8e4ea18ea
Merge pull request #5215 from DDDHuang/clients_api_test
test: add clients api SUITE & add api [delete sub]
2021-07-13 10:38:20 +08:00
Shawn 400e08e229 fix(flapping): make the flapping work with the new config structure 2021-07-12 20:43:11 +08:00
zhanghongtong 9081a22b8c chore(deps): deps in rebar must not be use branch
Can use tags or commit ids in rebar deps

Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-12 18:28:47 +08:00
Shawn 499ab5d9c4 fix(config): configure a plain map for mqueue_priorities 2021-07-12 18:10:47 +08:00
DDDHuang 734a5b9420 test: add clients api SUITE & add delete sub api 2021-07-12 18:10:40 +08:00
zhouzb 5bb55332a5 chore(auhtn): keep one ssl opts checking func 2021-07-12 16:33:52 +08:00
Shawn 88638da287 fix(test): always init session with zone and listener names 2021-07-12 16:00:04 +08:00
Shawn ea68beeef6 fix(test): update test cases for emqx_client_SUITE 2021-07-12 15:41:43 +08:00
tigercl df92a60085
feat(http connector): support http connector (#5192)
- support http connector
- support http authn
2021-07-12 15:35:06 +08:00
DDDHuang d04e1c6f54
refactor: clients api; status api; adapter minirest v1
The serious influence:
authn:
api
authz:
api; api test suit
dashboard:
all closed
lwm2m:
api;
modules:
api(api_topic_metrics, modules_api); test suit(emqx_modules_SUITE)
prometheus:
api
retainer:
api; api test suit
rule_engine:
api: api test suit
telemetry:
api
2021-07-12 10:05:51 +08:00
Shawn 042ff2e0d7 fix(test): update test cases for emqx_connection_SUITE 2021-07-10 18:01:45 +08:00
Shawn 4c122d0722 fix(test): update test cases for emqx_channel_SUITE 2021-07-10 14:29:45 +08:00
Zaiming (Stone) Shi 6b3cfd7c5d
fix(boot): boot exit on config error (#5200)
* fix(hocon): fail on hocon command errors

call_hocon bash function respects exit code

* fix(bin/emax): get dist_port config from hocon

after config file refactoring (to hocon format) the grep pattern
no longer works

* fix(bin/emqx): set -o pipefail

* feat(bin/emqx): add a DEBUG option
2021-07-10 08:51:35 +08:00
Shawn 9cda6ab3c8 feat(alarm): update the validity_period timer 2021-07-09 19:09:44 +08:00
zhanghongtong 3195561a79 feat(authz connector): match directly using the results returned by sql
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-09 18:21:36 +08:00
DDDHuang c11a8c6db6 refactor: clients api; status api; adapter minirest v1
The serious influence:

authn:
    api
authz:
    api; api test suit
dashboard:
    all closed
lwm2m:
    api;
modules:
    api(api_topic_metrics, modules_api); test suit(emqx_modules_SUITE)
prometheus:
    api
retainer:
    api; api test suit
rule_engine:
    api: api test suit
telemetry:
    api
2021-07-09 18:09:07 +08:00
Zaiming (Stone) Shi 088e615818
Merge pull request #5193 from zmstone/fix-emqx-conf-default-wss-max-conn-102400
fix(emqx.conf): default wss max_connection from 16 to 102400
2021-07-09 11:39:34 +02:00
Shawn 14af90d0c3 fix(test): update test cases for emqx_acl_cache_SUITE 2021-07-09 15:38:51 +08:00
Shawn fb78e510ca fix(test): update test cases for emqx_access_control_SUITE 2021-07-09 15:04:54 +08:00
zhanghongtong 178bafbabf chore: rename required function to not_empty
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-09 14:18:41 +08:00
zhanghongtong c10d154dab chore(connector): update schema file
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-09 14:18:41 +08:00
Zaiming Shi e990220e83 fix(emqx.conf): default wss max_connection from 16 to 102400 2021-07-09 07:34:04 +02:00
William Yang 793aa951e3
Merge pull request #5170 from qzhuyan/dev/william/ci-fix-build-package
ci(quic): conditionally quicer build
2021-07-08 17:34:47 +02:00
Shawn 0ac2492b36 fix(config): read app env 'config_files' to get the path to emqx.conf 2021-07-08 19:27:36 +08:00
Shawn 27d5c5b2d9 feat(config): make quic listener start with the new config 2021-07-08 15:05:07 +08:00
Rory Z 6d7424b445 fix(connector): fix mongo connector auth failed 2021-07-08 11:25:18 +08:00
William Yang 79d169b3ff chore(quic): bump emqtt vsn to 1.4.2 2021-07-07 13:41:47 +02:00
William Yang 660d16e84b feat(config): set the endpoint to "" to disable listener 2021-07-07 13:41:47 +02:00
William Yang 1f20bae392 feat(quic): conditionally build/start quicer app 2021-07-07 13:41:47 +02:00
William Yang 6adb76cf27 ci: try 32bit fix from quicer 2021-07-07 13:41:43 +02:00
Shawn 477097c062 chore(project): merge code from master 2021-07-07 19:32:52 +08:00
DDDHuang dc98cff27b
fix: mgmt conf & schema; prepare minirest (#5178) 2021-07-07 17:04:05 +08:00
Shawn 4dd72e59fa feat(listeners): make the APIs and CLIs work with the new listener 2021-07-07 16:22:38 +08:00
Shawn 630b54f6ee feat(acl): make mqtt over websocket work with the new config 2021-07-07 14:43:54 +08:00
Rory Z 612d25fdb3 chore(connector): rename mongo config key 2021-07-07 10:06:10 +08:00
k32 a95b91c005 chore(coap): Fix debug logs 2021-07-06 18:42:39 +02:00
Shawn 707851c36f refactor(force_shutdown): force shutdown the connection if it don't kill itself 2021-07-06 20:11:49 +08:00
Shawn 7c0fd642bb feat(acl): make acl cache work with the new config 2021-07-06 19:24:54 +08:00
Shawn 5efd5c8d3b refactor(emqx_connection): make the mqtt tcp connection work with new config 2021-07-06 18:26:54 +08:00
lafirest 72f9e60d63 feat(emqx_retainer): add simple restapi for emqx_retainer 2021-07-06 18:16:05 +08:00
Rory Z 53df218e6a feat(connector): mongo support replica set 2021-07-06 18:07:06 +08:00
Shawn 969e72c82b refactor(connection): remove active_n from state 2021-07-05 19:13:55 +08:00
Shawn 10b01a34ef refactor(listeners): reformat the code for starting stopping listeners 2021-07-05 19:12:26 +08:00
Shawn 6d92d87ae7 feat(map_lib): support emqx_map_lib:deep_merge/2 2021-07-05 19:11:05 +08:00
Rory Z fd0a211629 chore(authz): mongo connector support ssl 2021-07-05 17:57:03 +08:00
Rory Z 45ee504dc5 chore(authz): rename ACL to AuthZ 2021-07-05 17:57:03 +08:00
Rory Z f733293a8b chore(authz): update apps vsn 2021-07-05 17:57:03 +08:00
Rory Z f92b8bb7fb chore(authz): add test case 2021-07-05 17:57:03 +08:00
Rory Z 694f3bd67f feat(authz): support mongo single 2021-07-05 17:57:03 +08:00
Shawn 807bbb391c feat(map_lib): support emqx_config:get_listener_conf/3,4 2021-07-05 16:40:00 +08:00
Shawn 0aec496886 feat(map_lib): support emqx_map_lib:deep_find/2 2021-07-05 16:02:03 +08:00
Shawn 30c2a76dae refactor(emqx_config): move helper funcs to emqx_map_lib 2021-07-05 15:16:01 +08:00
DDDHuang ce1e6ce89d fix: start jiffy by emqx 2021-07-05 14:41:33 +08:00
Shawn a884d215e1 fix(connection): start connection failed 2021-07-05 13:50:37 +08:00
Shawn fb809a5c08 fix(active_n): revert the changes to active_n 2021-07-05 11:28:21 +08:00
Shawn 8b3fcde380 feat(config): make the listeners up 2021-07-02 22:17:22 +08:00
JianBo He 8ee86f2fbe fix(gw): start emqx-gateway after emqx restarted 2021-07-02 20:41:46 +08:00
JianBo He 56cdd469ff
feat(gateway): The prototype for emqx-gateway application
* feat(gateway): add gateway application

* chore(gateway): add normalize confs function

* refactor: move emqx-stomp to emqx-gateway subdir

* chore(gateway): fix some bad function defination

* chore(gateway): rename type to gwid

* chore(gw-stomp): upgrade the implementation to suppport gateway instance

* feat(gw-stomp): add reconnect mechanism

* refactor(stomp): upgrade connection&channel module to latest

* refactor(stomp): more details for handle_in/out

* refactor(stomp): get it up and running

* chore(gw): load some modules by default

* refactor: upgrade the emqx-gateway schema module

* test(stomp): fix testcases for stomp gateway

* chore(gw): remove needless lines

* chore(gateway): correct a lot of specs

* chore(gw): add a draft for metrics

* chore(gw): add metrics process

* fix(gw): fix cm process monitor

* test(gw): add test cases for gateway-regitry

* feat(gw): add metrics/cli for gateway

* fix(gw): fix xref errors

* chore(gw): pretty gateway metrics print format

* chore(gw-stomp): generate clientid by default

* chore(gw): more reliable

* chore(gw): rename gwid -> type

* chore(gw): impl the update logic

* chore(gw): some format improvement

* chore(gw): adapts the hocon configs

* fix(gw): fix xref errors

* test(gw): update configurations for tests

* chore(gw): ignore diaylzer warnings

* fix(gw): fix bad function call

* chore(gw): remove needless comments
2021-07-02 20:17:40 +08:00
zhanghongtong 4313e37994 chore(release): update emqx release version 2021-07-02 19:11:02 +08:00
Turtle 24292f4f4e chore: delete plugins related configuration 2021-07-02 18:12:06 +08:00
William Yang 5ae8cd2fa3 fix(quic): dialyzer errors 2021-07-02 17:10:56 +08:00
William Yang 72117f3f1d feat(quic): bump emqtt and quicer version
emqtt: 1.4.1
quicer: 0.0.5
2021-07-02 17:10:56 +08:00
William Yang 82d0f2b016 feat(quic): Add tests and support more listener option
- support option `active_n`
- add quic group in emqx_mqtt_protocol_v5_SUITE
- fix rate limit
2021-07-02 17:10:56 +08:00
Turtle 41870a00b3 chore: fix emqx_retainer test cases 2021-07-02 17:01:16 +08:00
Turtle 390b28a25d fix: join cluster fail 2021-07-02 17:01:16 +08:00
Turtle 918a26e921 feat(conf): merge all conf to emqx.conf 2021-07-02 17:01:16 +08:00
Turtle fb2f2741a4 fix: fix test cases fail 2021-07-02 14:41:28 +08:00
Turtle 4b87594839 feat(conf): sys、mon、alarm、plugins、broker、mqtt conf to hocon 2021-07-02 14:41:28 +08:00
zhouzb c7cbe819ed feat(hocon): convert config format of rpc and log to hocon 2021-07-02 14:41:28 +08:00
Shawn 092c5455c8 feat(config): change configs of zone and listener to hocon format 2021-07-02 14:41:28 +08:00
Turtle 8266a79867 feat(conf): cluster/node conf to hocon 2021-07-02 14:41:28 +08:00
DDDHuang 2c7fd0b547
chore: mgmt hoconf support (#5153) 2021-07-02 00:02:09 +08:00
turtleDeng c7e540f4f1
feat(modules): Update the configuration file to hocon (#5151) 2021-07-01 20:08:13 +08:00
zhanghongtong bf4c31b745 chore(authz): use atom key for hocon config 2021-07-01 18:29:32 +08:00
Shawn 8dcb5ceb86 fix(config): get config problems in sysmon 2021-07-01 18:01:38 +08:00
Shawn aad393f8d7 feat(config): apply new config struct to emqx_sys_mon 2021-07-01 16:27:59 +08:00
Shawn db38137d5c feat(config): apply new config struct to emqx_alarm 2021-07-01 15:00:59 +08:00
Shawn 66aaed1f87 feat(config): update emqx_schema for logger 2021-07-01 11:47:33 +08:00
turtleDeng d4f726419f
feat(bridge-mqtt): Update the configuration file to hocon (#5142) 2021-07-01 10:51:59 +08:00
lafirest 860aea50db chore(emqx_retainer): change config of emqx_retainer to use hocon 2021-06-30 21:42:34 +08:00
Shawn d2c50baf93 fix(config): set console_handler.enable to turewhen start from console 2021-06-30 19:24:37 +08:00
zhanghongtong e0f1087490 chore(mgmt): cancel plugins test case 2021-06-30 19:17:38 +08:00
zhouzb b63bba59d5 feat(authn): update schema for mysql and postgresql 2021-06-30 18:57:50 +08:00
tigercl cdcb63374a
refactor(authn): support hocon for authn (#5068)
* refactor(use hocon): rename to authn, , support hocon, support two types of chains and support bind listener to chain
2021-06-30 17:04:28 +08:00
Shawn 02c9a3163b refactor(config): emqx.conf for 5.0 2021-06-30 09:39:03 +08:00
k32 dae4c771d0
Merge pull request #5126 from k32/dev/delayed-mod-shard
chore(mod_delayed): Add RLOG shard
2021-06-29 13:05:41 +02:00
zhanghongtong 2b082f9cf9 chore(connector): update connector ssl schema 2021-06-29 18:22:44 +08:00
zhanghongtong c9acf423ba chore: rename authorze_cache function name to check_authorization_cache 2021-06-29 10:09:15 +08:00
zhanghongtong e1b0f44a8a chore: rename check_authz to authorize 2021-06-29 10:09:15 +08:00
zhanghongtong c63bdc355a chore: rename check_acl to check_authz
update emqx_coap vsn

rename OnClientCheckAcl to OnClientCheckAuthz in exhook
2021-06-29 10:09:15 +08:00
k32 e8e956b074 chore(mod_delayed): Add RLOG shard 2021-06-28 21:35:10 +02:00
k32 2bea95ff6e
Merge pull request #5124 from k32/dev/rule-engine-shard
chore(rule_engine): Add an RLOG shard
2021-06-28 21:27:18 +02:00
k32 73ec8c47cc chore(rule_engine): Add an RLOG shard 2021-06-28 20:29:08 +02:00
k32 9ab5c88d20 chore(retainer): Add RLOG shard 2021-06-28 20:22:06 +02:00
k32 1618a90ddd chore(telemetry): Add an RLOG shard 2021-06-28 18:14:36 +02:00
k32 26b2216e25 chore(shared_sub): Add shared_sub shard 2021-06-28 17:52:57 +02:00
k32 ce4800e6ae chore(alarm): Alarm shard 2021-06-28 17:52:57 +02:00
k32 7c9861dbaa chore(banned): Add banned shard 2021-06-28 14:05:35 +02:00
k32 98739224f6 chore(emqx_sn): Add SN shard 2021-06-28 14:05:30 +02:00
k32 ca1b789ef6
Merge pull request #5100 from k32/dev/authn-shard
Create authN shard
2021-06-28 12:57:36 +02:00
zhanghongtong 64ce0d0e4f chore(acl): delete acl nomatch config item 2021-06-28 17:47:44 +08:00
Turtle faad90c9d4 chore(plugins): rm emqx-web-hook and mv webhook action to emqx_rule_actions 2021-06-28 17:07:46 +08:00
William Yang 5571c54607
Merge pull request #5002 from qzhuyan/dev/william/quic-support-centos7
Quic support part 1
2021-06-28 10:49:44 +02:00
k32 dc1deff3f3 refactor(rlog): Fix initialization of emqx_cm_registry table 2021-06-28 10:35:36 +02:00
Turtle 33036a1a91 chore(plugins): rm emqx-pks-file plugin 2021-06-28 15:57:19 +08:00
Turtle 434beef3ad feat(rule-engine): Update the configuration file to hocon 2021-06-28 14:51:15 +08:00
Turtle 54aeacee14 feat(rule-engine): update the configuration file to hocon 2021-06-28 14:51:15 +08:00
zhanghongtong dd424c7656 build: delete sasl plugin 2021-06-28 11:52:47 +08:00
zhanghongtong d6e531bd8f Merge branch 'master' of https://github.com/emqx/emqx into merge-4.3-to-5.0 2021-06-28 11:46:55 +08:00
zhanghongtong 4e4c1dd17a build: delete needless auth plugins 2021-06-28 11:45:01 +08:00
Turtle d0d14f7a02 chore(plugins): rm emqx-lua-hook plugin 2021-06-28 11:44:01 +08:00
Rory Z 1f7291380b chore: delete internal acl code 2021-06-28 11:44:01 +08:00
Rory Z 1582c07cbe chore: delete import and export feature 2021-06-28 11:44:01 +08:00
Rory Z e949cdca98 chore: delete import and export feature 2021-06-28 11:44:01 +08:00
zhanghongtong 9da51d4b1c build: delete needless auth plugins 2021-06-28 11:44:01 +08:00
zhanghongtong cbc782f5bf build: delete needless auth plugins 2021-06-28 11:43:58 +08:00
Turtle 78cbc2a19d chore: move emqx_recon to emqx_modules plugin 2021-06-28 11:43:48 +08:00
turtleDeng 89529ec4fa chore: reset plugin conf generate (#5094)
* chore: reset plugin conf generate

* fix(plugin): check dialyzer fail

* chore: rm emqx_management_schema.erl file

* fix(plugin): check dialyzer fail

* fix(plugin): fix check ct fail

* fix(plugin): check dialyzer fail
2021-06-28 11:43:48 +08:00
Turtle c9ac851d27 feat(prometheus): Update the configuration file to hocon 2021-06-28 11:43:48 +08:00
Shawn cc1f57ff01 Add some APIs for emqx_config (#5095) 2021-06-28 11:43:48 +08:00
Shawn d77352168f Reference to foreign schema definitions in emqx_schema (#5090) 2021-06-28 11:43:48 +08:00
Rory Z 6f0f670550 feat(redis connector): redis connector support cluster (#5074) 2021-06-28 11:43:48 +08:00
Shawn 36c7785fd0 The config handler phase2 (#5052)
* refator(config_handler): handle and validate the updates to raw_configs

* fix(hocon): update hocon to 0.8.0

* refactor(config_handler): check and apply envs only in top-level handler

* refactor(config_handler): update config from top level to bottom level

* refactor(emqx_data_bridge): move configs to emqx.conf

* fix(emqx_schema): remove the extra config path

* fix(config_handler): load the emqx.conf when starting emqx_config_handler

* fix(data_bridge): API not working

* feat(config_handler): save updated configs to emqx_override.conf

* fix(config_handler): cannot find the emqx.conf and emqx_override.conf

* fix(emqx_config): cannot find the correct path for etc dir

* fix(test): load load emqx_schema foreign refereced apps

* refactor(emqx_plugin): do not generate configs before load plugins

All configs (including the configs for plugins) now should go into
the `emqx.conf`.

* fix(tests): update the test cases for plugins

* fix(tests): don't include schema from apps when testing

* fix(tests): use emqx-ct-helper branch hocon
2021-06-28 11:43:48 +08:00
DDDHuang 44412549ab fix: statsd hocon schema & add test suit (#5060) 2021-06-28 11:43:48 +08:00
k32 b88c71b481 feat(dashboard): Introduce dashboard RLOG shard 2021-06-28 11:43:48 +08:00
k32 198e3c03e0 feat(emqx_management): mqtt_app shard 2021-06-28 11:43:48 +08:00
turtleDeng b4d9af0e85 feat(telemetry): Update the configuration file to hocon (#5064) 2021-06-28 11:43:48 +08:00
Rory Z 39e4d348f6 feat: add authz (#4852)
* feat(authorization): add authorization api

* feat(authorization): add check function

* feat(authorization): use hocon config file

* feat(authz): add mysql connector

* feat(authz): support pgsql

* feat(connector): support redis

* chore(authz): use "publish/subscribe/all" instead of "pub/sub/pubsub"
2021-06-28 11:43:48 +08:00
Zaiming Shi 871f23f047 build: do not allow user override PKG_VSN
We have an assertion in code, allowing user to override
will compile but not run.
2021-06-28 11:43:48 +08:00
Zaiming Shi cd5431e71d chore(emqx_lwm2m): pin lwm2m-coap v2.0.0
v2.0.0 has emqx_http_lib added as a rebar dependency
v1.* is for emqx v4.3.*
2021-06-28 11:43:46 +08:00
DDDHuang 9bc3b4684a refactor(config): support hocon 2021-06-28 11:43:31 +08:00
DDDHuang 8356102450 chore: support statsd 2021-06-28 11:43:31 +08:00
Turtle 205e588b22 fix(plugins): fix load plugin generate hocon configs fail 2021-06-28 11:43:31 +08:00
Shawn e2d96e46a0 change resource,connectors,data_bridges as normal apps (#5034) 2021-06-28 11:43:31 +08:00
Turtle f004e36e28 feat(plugins): Support load plugins of hocon configuration format 2021-06-28 11:43:31 +08:00
Rory Z 87cc94ad28 chore(hooks): update type 2021-06-28 11:43:31 +08:00
Rory Z 0dd068135d chore(hooks): delete is_function() 2021-06-28 11:43:31 +08:00
Rory Z b21959b0c3 test: fix tests error 2021-06-28 11:43:31 +08:00
Rory Z 227c8e626b chore(appup): update appup file 2021-06-28 11:43:31 +08:00
Rory Z 46fe77687c chore(dialyzer): fix dialyzer error 2021-06-28 11:43:31 +08:00
zhanghongtong 64a63ab892 chore(hooks): emqx_hooks no longer accept anonymous functions 2021-06-28 11:43:31 +08:00
zhanghongtong f5c4863420 fix(connector): add nullable for sentinel_name in redis schema 2021-06-28 11:43:31 +08:00
Zaiming Shi 62df9f03ad fix(emqx_schema): add 'sensitive' flag for passowrd configs 2021-06-28 11:43:31 +08:00
Zaiming Shi 1fca3cd1b5 chore(rebar.config): use hocon 0.6.0
hocon 0.6.0 added supports for sensitive config flagging
sub-struct type checking, and remote struct referencing
2021-06-28 11:43:31 +08:00
DDDHuang 22b0fa0b92 chore: more node info 2021-06-28 11:43:31 +08:00
turtleDeng 271869b817 Revert "chore: mv emqx_connector to emqx_data_bridge"
This reverts commit d640e2ccfa.
2021-06-28 11:43:31 +08:00
zhanghongtong 786fd6fe3e feat(connector): mysql and pgsql query support params 2021-06-28 11:43:31 +08:00
Turtle 07ade268f9 chore: mv emqx_connector to emqx_data_bridge 2021-06-28 11:43:31 +08:00
Shawn ff54fbd1d1 fix(shared_sub): discard all unexpected msgs 2021-06-28 11:43:14 +08:00
Shawn 95e7a4dd7b chore(appup): update the appup for 4.3.5 2021-06-28 11:43:13 +08:00
Shawn 8f15a41f54 fix(shared_sub): failed to clean the emqx_shared_subscription tab
A trick that fixes the issue that we demonitored the shared subscriber
too early if it not unsubscribed all of the topics.
2021-06-28 11:42:56 +08:00
Turtle 22f1e8d7ed chore(review): review 4.3.4 2021-06-28 11:42:39 +08:00
Turtle bde9d052a5 feat(lwm2m): fix check dialyzer fail 2021-06-28 11:42:39 +08:00
Turtle 8c0c6974d9 fix: Ignore repeatedly receiving connection packet in the wait_will_msg/wait_will_topic/connected state 2021-06-28 11:42:39 +08:00
JianBo He 8da6d5cf16 fix(emqx_cm): catch noproc exception from rpc_call (#5048) 2021-06-28 11:42:39 +08:00
JianBo He ab75901061 fix(coap): fix coap uri format (#5059) 2021-06-28 11:42:25 +08:00
Zaiming Shi c7fe49c200 test(ci): add plugin list status check after relup new vsn install 2021-06-28 11:42:12 +08:00
JianBo He f3617aa082 chore: upgrade lwm2m_coap to 1.1.4 2021-06-28 11:41:53 +08:00
Turtle c7ebc12ce1 feat(lwm2m): add emqx_lwm2m http API 2021-06-28 11:41:53 +08:00
Shawn 8e08e83090 fix(appup): relup for emqx_rule_registry failed 2021-06-28 11:41:53 +08:00
Shawn c1b2163362 feat(rules): remove stats update from rule_engine_registry (#5029) 2021-06-28 11:41:53 +08:00
Shawn a610c3d1f3 fix(rule): delete resource failed when searching dependent rules (#4996) 2021-06-28 11:40:51 +08:00
Turtle 8a3ac7c878 chore(plugins): rm emqx-sasl plugin 2021-06-28 11:40:49 +08:00
tigercl bcedd7fe9e fix(query string): support query string in path (#4981) 2021-06-28 11:40:44 +08:00
JianBo He 56ac459b7f fix(modules): fix start/stop exhook module failure 2021-06-28 11:40:44 +08:00
JianBo He 2bc586b930 fix(ws): avoid funcation_clause for un-inited websocket 2021-06-28 11:40:43 +08:00
k32 c1d2bae833 fix(auth_ldap): Handle missing attributes
Fixes: #4953
2021-06-28 11:40:42 +08:00
Zaiming Shi 0451f89c22 chore(conf): change default number of gen_rpc connections to 1 2021-06-28 11:40:24 +08:00
JianBo He 8352fa6f31 fix(mqttsn): fix proto_name to MQTT-SN instead of MQTT (#4961) 2021-06-28 11:40:22 +08:00
JianBo He 7af4b80ef4 fix(lwm2m): base64 decode for opaque value 2021-06-28 11:39:29 +08:00
Turtle 1063f2cae5 chore(plugins): rm emqx-lua-hook plugin 2021-06-28 09:44:17 +08:00
k32 6063fc72f7 chore(authentication): Migrate to RLOG 2021-06-25 16:58:50 +02:00
Rory Z c79e478c42 chore: delete internal acl code 2021-06-25 18:45:34 +08:00
Rory Z 55613593f0 chore: delete import and export feature 2021-06-25 18:45:34 +08:00
Rory Z ecc450e942 chore: delete import and export feature 2021-06-25 18:45:34 +08:00
zhanghongtong 09e995a1b2 build: delete needless auth plugins 2021-06-25 18:45:34 +08:00
zhanghongtong c24f3688c4 build: delete needless auth plugins 2021-06-25 18:45:34 +08:00
Turtle 2d1008ceaf chore: move emqx_recon to emqx_modules plugin 2021-06-25 18:45:04 +08:00
turtleDeng c9c6b69cc9
chore: reset plugin conf generate (#5094)
* chore: reset plugin conf generate

* fix(plugin): check dialyzer fail

* chore: rm emqx_management_schema.erl file

* fix(plugin): check dialyzer fail

* fix(plugin): fix check ct fail

* fix(plugin): check dialyzer fail
2021-06-25 17:06:30 +08:00
Turtle 2582fdcfe8 feat(prometheus): Update the configuration file to hocon 2021-06-25 16:31:18 +08:00
Shawn d5eb37c537
Add some APIs for emqx_config (#5095) 2021-06-25 15:40:28 +08:00
Shawn 9977d836bc
Reference to foreign schema definitions in emqx_schema (#5090) 2021-06-25 12:46:57 +08:00
Rory Z 4157524910
feat(redis connector): redis connector support cluster (#5074) 2021-06-25 11:47:57 +08:00
Shawn 704af9f3b1
The config handler phase2 (#5052)
* refator(config_handler): handle and validate the updates to raw_configs

* fix(hocon): update hocon to 0.8.0

* refactor(config_handler): check and apply envs only in top-level handler

* refactor(config_handler): update config from top level to bottom level

* refactor(emqx_data_bridge): move configs to emqx.conf

* fix(emqx_schema): remove the extra config path

* fix(config_handler): load the emqx.conf when starting emqx_config_handler

* fix(data_bridge): API not working

* feat(config_handler): save updated configs to emqx_override.conf

* fix(config_handler): cannot find the emqx.conf and emqx_override.conf

* fix(emqx_config): cannot find the correct path for etc dir

* fix(test): load load emqx_schema foreign refereced apps

* refactor(emqx_plugin): do not generate configs before load plugins

All configs (including the configs for plugins) now should go into
the `emqx.conf`.

* fix(tests): update the test cases for plugins

* fix(tests): don't include schema from apps when testing

* fix(tests): use emqx-ct-helper branch hocon
2021-06-25 11:47:18 +08:00
DDDHuang a42605b27b
fix: statsd hocon schema & add test suit (#5060) 2021-06-25 09:18:52 +08:00
k32 6cb81240d0
Merge pull request #5054 from k32/dev/dashboard-shard
feat(dashboard): Introduce dashboard RLOG shard
2021-06-23 19:55:02 +02:00
k32 a14ab5f90a
Merge pull request #5053 from k32/dev/mgmt-shard
feat(emqx_management): mqtt_app shard
2021-06-23 19:42:47 +02:00
turtleDeng 5a560a153c
feat(telemetry): Update the configuration file to hocon (#5064) 2021-06-23 17:12:24 +08:00
Rory Z 263aaff6d6
feat: add authz (#4852)
* feat(authorization): add authorization api

* feat(authorization): add check function

* feat(authorization): use hocon config file

* feat(authz): add mysql connector

* feat(authz): support pgsql

* feat(connector): support redis

* chore(authz): use "publish/subscribe/all" instead of "pub/sub/pubsub"
2021-06-23 10:55:38 +08:00
Zaiming Shi d7ed66f234 build: do not allow user override PKG_VSN
We have an assertion in code, allowing user to override
will compile but not run.
2021-06-22 18:56:31 +08:00
k32 2d8ebc17cd feat(dashboard): Introduce dashboard RLOG shard 2021-06-21 18:03:51 +02:00
k32 239255f251 feat(emqx_management): mqtt_app shard 2021-06-21 18:02:11 +02:00
Zaiming Shi 291cea0727 chore(emqx_lwm2m): pin lwm2m-coap v2.0.0
v2.0.0 has emqx_http_lib added as a rebar dependency
v1.* is for emqx v4.3.*
2021-06-21 11:54:58 +02:00
DDDHuang 4011aee361 refactor(config): support hocon 2021-06-21 12:20:20 +08:00
DDDHuang b62301c5f4 chore: support statsd 2021-06-21 12:20:20 +08:00
Turtle bc71a1e2c6 fix(plugins): fix load plugin generate hocon configs fail 2021-06-19 16:47:09 +08:00
Shawn 8978464269
change resource,connectors,data_bridges as normal apps (#5034) 2021-06-19 16:27:21 +08:00
Turtle ffcbcaed3c feat(plugins): Support load plugins of hocon configuration format 2021-06-19 13:42:21 +08:00
Rory Z 186094d2ab chore(hooks): update type 2021-06-18 18:59:52 +08:00
Rory Z 1fa55f5a4e chore(hooks): delete is_function() 2021-06-18 18:59:52 +08:00
Rory Z 1a09d636ae test: fix tests error 2021-06-18 18:59:52 +08:00
Rory Z e5447cd6e4 chore(appup): update appup file 2021-06-18 18:59:52 +08:00
Rory Z 536c7256da chore(dialyzer): fix dialyzer error 2021-06-18 18:59:52 +08:00
zhanghongtong bbf6b4e64e chore(hooks): emqx_hooks no longer accept anonymous functions 2021-06-18 18:59:52 +08:00
zhanghongtong abca2938f4 fix(connector): add nullable for sentinel_name in redis schema 2021-06-18 16:11:51 +08:00
Zaiming Shi 36cd03cc98 fix(emqx_schema): add 'sensitive' flag for passowrd configs 2021-06-18 09:02:25 +08:00
Zaiming Shi 6865f36d90 chore(rebar.config): use hocon 0.6.0
hocon 0.6.0 added supports for sensitive config flagging
sub-struct type checking, and remote struct referencing
2021-06-18 09:02:25 +08:00
k32 5b84513e77
Merge pull request #5014 from k32/dev/route_shard
feat(rlog): Introduce routing RLOG shard
2021-06-17 17:00:14 +02:00
DDDHuang 1e0f6f4dea chore: more node info 2021-06-17 21:09:06 +08:00
turtleDeng 54dedc8343 Revert "chore: mv emqx_connector to emqx_data_bridge"
This reverts commit d640e2ccfa.
2021-06-17 19:11:10 +08:00
zhanghongtong d9d5bc4fae feat(connector): mysql and pgsql query support params 2021-06-17 18:50:28 +08:00
Turtle d640e2ccfa chore: mv emqx_connector to emqx_data_bridge 2021-06-17 16:42:41 +08:00
William Yang d1978aaaf2 chore(quic): fix format 2021-06-17 09:03:10 +02:00
William Yang b4a9d663ae feat(quic): quic conn idle_timeout default 1min 2021-06-17 09:03:10 +02:00
William Yang 4e2e2d5635 feat(quic): update emqx_schema for quic 2021-06-17 09:03:10 +02:00
William Yang fd785240f5 feat(quic): bump quicer to 0.0.3 2021-06-17 09:03:10 +02:00
William Yang e34470f9f2 feat(quic): remove unsupported configs. 2021-06-17 09:03:10 +02:00
William Yang af2faed107 feat(quic): switch to deps on emqx quicer repo 2021-06-17 09:03:10 +02:00
k32 6505340cb8 feat(rlog): Introduce routing RLOG shard 2021-06-16 16:05:10 +02:00
Shawn 56c6cf560a fix(dialyzer): guard test can never succeed 2021-06-16 16:02:44 +08:00
Shawn 1e14a6086e fix(dialyzer): invalid type specs 2021-06-16 16:02:44 +08:00
Shawn 134970e7b7 fix(data_bridge): comment out all the connector-config 2021-06-16 16:02:44 +08:00
turtleDeng 0515ef6e45
feat(connector): add more connector (#4985) 2021-06-16 11:28:26 +08:00
Shawn 8b0a6d955b fix(test): ci failed due to existing subscriptions 2021-06-16 11:27:34 +08:00
Shawn 444c721f93 fix(config): change handler name to emqx_data_bridge_config_handler 2021-06-16 11:27:34 +08:00
Shawn b11afc6997 fix(config): start the top level config handler at emqx bootup 2021-06-16 11:27:34 +08:00
Shawn 378a2b7b9e feat(config): update config to the sub config handler 2021-06-16 11:27:34 +08:00
Shawn ccba714cd6 feat(config): add emqx_config_handler 2021-06-16 11:27:34 +08:00
zhanghongtong 4505607c51 chore(tests): update acl mysql test case 2021-06-16 09:42:07 +08:00
zhanghongtong 949e8348fc chore(connector): ensure alllication start in mysql connector 2021-06-16 09:41:52 +08:00
William Yang 68844cefd9 feat(quic): update emqx_schema for quic 2021-06-15 15:36:04 +02:00
William Yang bb6459ba3a build: add quic dep in app/emqx/rebar.config 2021-06-15 15:36:04 +02:00
William Yang 14614fbe33 feat(quic): adapt to new quicer API. 2021-06-15 15:36:04 +02:00
William Yang 5356668eac feat(quic): adapt to hocon schema 2021-06-15 15:36:04 +02:00
William Yang 1ffd2cf245 chore(config): adapt to new config format 2021-06-15 15:36:04 +02:00
William Yang f9a113477e feat(quic): use quicer:getstat instead. 2021-06-15 15:36:04 +02:00
William Yang e062be2b0e feat(quic): reload quicer lib before start listener 2021-06-15 15:36:04 +02:00
William Yang 14057c033d feat(quic): support stop/start quic listeners. 2021-06-15 15:36:03 +02:00
William Yang 06f9674ce3 feat(quic): add quicer to application deps list. 2021-06-15 15:36:03 +02:00
William Yang 9570d01792 fix(quic): error handling for getstats.
- return {error, closed} instead
- quicer demo/3 branch.
2021-06-15 15:36:03 +02:00
William Yang 570e096b56 fix(quic): return empty list for dead 'Socket' 2021-06-15 15:36:03 +02:00
William Yang 087aa1dd53 feat(quic): handle stream close. 2021-06-15 15:36:03 +02:00
William Yang 70f22d2c1b feat(quic): reuse emqx_connection module for quic. 2021-06-15 15:36:03 +02:00
William Yang 899ba579fc feat(quic): compile and start quicer listener. 2021-06-15 15:36:03 +02:00
Zaiming Shi c84af95190 chore: ensure new env override prefix variable 2021-06-15 12:35:08 +02:00
Zaiming Shi 9a78f812e1 fix(emqx_resource): fix schema schema definition 2021-06-15 12:35:08 +02:00
Zaiming Shi bde5d11078 fix(hocon): call new schema definition functions 2021-06-15 12:35:07 +02:00
Zaiming Shi 909814a34d fix(hocon): pin hocon 0.5.1 2021-06-15 12:35:07 +02:00
zhanghongtong 8a368efb95 chore: move lib-ce to apps
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-06-15 17:31:54 +08:00
k32 06dd83c171
Merge pull request #4991 from k32/dev/rlog0
feat(rlog): Add RLOG to EMQX
2021-06-15 10:46:45 +02:00
zhanghongtong c94d4d9a28 chore(data bridge): comment example config
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-06-15 16:45:41 +08:00
k32 13803f9159 feat(rlog): Add RLOG to EMQX 2021-06-14 15:05:36 +02:00
zhanghongtong 496d30be6a chore(appup): add appup for plugin libs 2021-06-11 11:33:57 +08:00
tigercl 55cf74f23a
Merge pull request #4844 from tigercl/feat/new-authentication
feat(new authentication): implement new auth design
2021-06-11 10:59:45 +08:00
zhouzb cbc5c64a16 chore(dialyzer): make code pass dialyzer 2021-06-10 16:18:50 +08:00
zhouzb bb62b44554 feat(auth): support bcrypt 2021-06-09 18:57:08 +08:00
zhouzb ae8be5d66f feat(authentication): add a 16-byte salt in front of the password before hashing 2021-06-09 16:53:40 +08:00
zhouzb d838206a56 chore(code): add type spec 2021-06-09 11:10:03 +08:00
zhouzb 2bfb7f74df fix(jwt): fix chain interruption 2021-06-09 10:36:06 +08:00
Shawn 1de2f5cb2f fix(emqx_data_bridge): update bridge failed 2021-06-08 21:46:52 +08:00
Shawn fdd0233103 feat(emqx_resource): update the demo.md 2021-06-08 21:46:52 +08:00
Shawn 65dc2f2be8 feat(emqx_resource): remove the schema sugar from parse transformed code 2021-06-08 21:46:52 +08:00
zhouzb 0c237bf797 feat(jwt): support based encoded secret 2021-06-08 15:56:13 +08:00
zhouzb f297c36929 feat(jwt auth): support JWT auth 2021-06-08 11:40:46 +08:00
Shawn 2f720f4a17 feat(emqx_data_bridge): add license headers 2021-06-07 22:15:23 +08:00
Shawn bdf6374414 fix(emqx_resource): disable the debug print for parse-transformed code 2021-06-07 22:11:05 +08:00
Shawn 149a54cef4 fix(emqx_resource): dialyzer issues 2021-06-07 22:08:21 +08:00
Shawn 3c1c457697 fix(emqx_resource): call to undefined function hocon:richmap_to_map/1 2021-06-07 21:54:17 +08:00
Shawn 16c0a5b80a fix(emqx_resource): merge conflict 2021-06-07 21:25:19 +08:00
Shawn a37b3957e3
Merge branch 'master' into emqx_connector 2021-06-07 21:12:00 +08:00
Shawn dddab31326 fix(emqx_data_bridge): resource type to bridge type 2021-06-07 20:01:28 +08:00
Shawn e9fe345ac8 fix(emqx_data_bridge): correct the format of HTTP responses 2021-06-07 19:52:08 +08:00
Shawn 4914b003ac feat(emqx_resource): update the unused APIs 2021-06-07 17:20:34 +08:00
Shawn 2ff92d2880 feat(emqx_data_bridge): add HTTP APIs for data bridge 2021-06-07 16:12:06 +08:00
Zaiming Shi 4ee6c82714 test(emqx_rule_engine_SUITE): delegate app start to ct-helper (2.0.0) 2021-06-07 09:09:28 +02:00
Zaiming Shi b92a6837d7 build(emqx): fix emqx standalone dialyzer 2021-06-07 09:09:28 +02:00
Zaiming Shi 7da34b80e5 chore(emqx): bump app version to 5.0.0 2021-06-07 09:09:28 +02:00
Zaiming Shi 13b7dcef4b chore(emqx): emqtt as test dependency 2021-06-07 09:09:28 +02:00
Zaiming Shi 045a944192 chore(ci): check emqx app standalone 2021-06-07 09:09:28 +02:00
Zaiming Shi 36e3675d54 test(emqx_listeners_SUITE): fix etc dir path 2021-06-07 09:09:28 +02:00
Zaiming Shi 311cb7b659 build: relocate BUILT_ON template 2021-06-07 09:09:28 +02:00
Zaiming Shi 1715b87dce chore: move root level src, test, include, priv and etc to apps/emqx 2021-06-07 09:09:28 +02:00
Zaiming (Stone) Shi 729e9697cd
Merge pull request #4943 from emqx/master
Auto-pull-request-on-2021-06-05
2021-06-07 09:05:42 +02:00
Zaiming Shi 536c2ddc0e test(emqx_sn): an attempt to fix flaky tests
Some flaky tests such as t_asleep_test06_to_awake_qos2_dl_msg
and t_asleep_test07_to_connected are likely due to test cases
interfering each other.
This changes the cases to use a unique client ID
2021-06-06 09:03:52 +02:00
Zaiming Shi b6b144fa31 test: expect unsupported_version for now 2021-06-05 15:04:11 +02:00
Zaiming Shi 5ccaff5a86 fix: app versions emqx_auth_jwt and emqx_sn 2021-06-05 13:21:59 +02:00
Zaiming (Stone) Shi 5dab6985c1
Merge branch 'dev/v5.0' into resolve-master-dev/v5.0-conflict-release-version 2021-06-05 11:51:02 +02:00
Zaiming Shi 5795bcca6a chore: fix app versions and check script 2021-06-05 11:09:13 +02:00
Shawn 4f451ee862 feat(emqx_resource): delete API generation from parse transfrom 2021-06-05 15:30:21 +08:00
Shawn f1552f4f4f feat(emqx_data_bridge): create emqx_data_bridge 2021-06-04 23:47:16 +08:00
Turtle f682bfe6e0 fix(api): fix ee call module api 404 2021-06-04 19:47:52 +08:00
Turtle 6f2407d5d9 fix(mqtt-sn): fix mqtt-sn test cases 2021-06-04 10:39:14 +08:00
JianBo He 72602df511
fix(svr): avoid crashed on undefined remote jwks server (#4916) 2021-06-03 14:16:58 +08:00
Shawn 9617b65d52 fix(dialyzer): incorrect function spec 2021-06-03 13:35:57 +08:00
Shawn 03519d7e61 fix(emqx_resource): HTTP APIs for emqx_resource not working 2021-06-03 13:35:57 +08:00
Turtle bfb02fe8c3 fix(mqtt-sn): fix clean session false reconnect topic-id badmatch 2021-06-03 10:08:05 +08:00
Shawn 3da62e59d6 fix(emqx_connector): the HTTP API for emqx_connector_mysql 2021-06-03 01:24:30 +08:00
Shawn bea5966ac8 fix(emqx_connector): remove unrelated files and add license headers 2021-06-02 19:10:24 +08:00
Shawn ebe1228b2c fix(emqx_connector): don't return error when stopping a non-existing pool 2021-06-02 18:41:48 +08:00
Shawn 49c5edce2e fix(emqx_connector): start emqx_connector_mysql failed 2021-06-02 17:28:47 +08:00
zhouzb 661f2de01e feat(authentication): require header in csv file and use new json format 2021-06-02 14:04:38 +08:00
zhouzb 443b83624c fix(webhook): fix bad ssl options 2021-06-02 09:31:28 +08:00
Shawn 5d52ce044d feat(emqx_resource): read and save configs from and to file 2021-06-02 01:58:32 +08:00
z8674558 9cb2facfe1 chore(emqx_resource): unify dependency hocon to root rebar.config 2021-06-01 21:05:04 +09:00
JianBo He 665a9d1dee fix(mgmt): return type conversion error 2021-06-01 17:24:53 +08:00
Turtle 5068678eea fix(mqtt-sn): fix clean session false reconnect topic-id badmatch 2021-06-01 16:22:37 +08:00
zhouzb 72c4696584 chore(newline): insert final newline 2021-06-01 16:11:28 +08:00
z8674558 a9efdaeacd fix(emqx_rule_engine_SUITE): use emqx_ct_helpers:read_schema_configs 2021-06-01 17:06:09 +09:00
Shawn e7ffa07a1a feat(emqx_connector): load connectors from emqx_connector.conf 2021-05-31 22:49:42 +08:00
k32 7dde77bb8a feat(emqx_management): Import content of the HTTP request
Fixes: #4063
2021-05-31 12:06:33 +02:00
Shawn f4bb589079 feat(emqx_mysql_connector): implement the on_query callback 2021-05-31 15:41:22 +08:00
Zaiming (Stone) Shi 913420588d
Merge branch 'dev/v5.0' into resolve-conflict-to-5.0 2021-05-31 09:17:21 +02:00
Shawn 6b33172095 feat(emqx_connector): add first emqx_connector for mysql 2021-05-31 15:14:07 +08:00
JianBo He 3a89b1f00b
chore(action): fix syntax error (#4885) 2021-05-31 15:08:52 +08:00
Rory Z 7040fb7835
Merge pull request #4893 from terry-xiaoyu/emqx_resource
feat(emqx_resource): add behaviour emqx_resource
2021-05-31 14:17:01 +08:00
Shawn 696d4a4e58 fix(emqx_resource): some dialyzer complaints 2021-05-31 12:14:25 +08:00
Shawn d7755df48b feat(emqx_resource): make with emqx 2021-05-31 10:51:27 +08:00
Turtle cf4cbc1677 fix(API): fix get used memory error 2021-05-29 11:42:50 +08:00
zhouzb 9d4af87eb7 feat(authentication): implement http api and change external apis 2021-05-29 09:58:27 +08:00
Shawn bc83bed7e8 feat(emqx_resource): add licence headers to source code files 2021-05-28 22:02:33 +08:00
Shawn 2a31c43e0d feat(emqx_resource): add behaviour emqx_resource 2021-05-28 21:43:54 +08:00
JianBo He 78cdfdf0df fix(exhook): change default value to CONTINUE 2021-05-28 19:28:03 +08:00
Turtle c02a9f0101 fix(appup): update appup 2021-05-27 13:55:07 +08:00
zhouzb 54106790c7 feat(authentication): add new apis 2021-05-27 10:19:38 +08:00
zhouzb c323113068 fix(authentication): fix unhook 2021-05-25 15:02:31 +08:00
zhouzb 3a96aa3db2 test(authentication): add test case and fix some errors 2021-05-25 15:00:34 +08:00
z8674558 31cbb7aa97 Merge branch 'master' of github.com:emqx/emqx into merge-master 2021-05-25 12:50:50 +09:00
Zaiming Shi 4ec1046160 fix: bad test case 2021-05-24 10:45:56 +02:00
Zaiming Shi 8443aa5e21 chore(typo): sepecial -> special 2021-05-24 10:45:56 +02:00
zhouzb c2f14c745b chore(app vsn): update app vsn 2021-05-24 11:38:32 +08:00
k32 1e562d4bc6 chore(rule_engine): Don't import alias/1 BIF
Fixes: #4847
2021-05-22 01:40:07 +02:00
Turtle e8790f6e11 fix(mqtt-sn): Fix stop due to keepAlive at sleep mode 2021-05-21 19:22:32 +08:00
zhouzb 4ad032f25e feat(new authentication): implement new auth design
- Implement auth chain
- Implement Mnesia auth service
- Support importing user credentials from JSON or CSV file to Mnesia
2021-05-21 18:10:33 +08:00
Zaiming Shi ce2739ef3d chore(emqx_management): update appup 2021-05-21 10:38:39 +02:00
Zaiming Shi 5fe395cee5 test: fix emqx_ctl printout test 2021-05-21 10:25:04 +02:00
Zaiming Shi 48c1d0983d chore(emqx_ctl): do not print application 2021-05-21 09:24:39 +02:00
Zaiming Shi c07fe0696b fix(appup): ensure version bump for emqx_management 2021-05-20 09:03:40 +02:00
JianBo He cace9341a0 test(auth-jwt): fix verify_claims not being covered 2021-05-19 10:56:35 +08:00
Shawn 4cd056cab5
fix(rule_engine): update status to false when refresh resource failed (#4821)
* fix(rule_engine): update status to false when refresh resource failed

* fix(dialyzer): ignore import_modules/1 created fun has no local return

* fix(appup): update appup for rule engine
2021-05-17 17:59:01 +08:00
Turtle a7d2f44a5b chore(optimize): optimize MGMT test cases 2021-05-17 14:28:17 +08:00
Szymon Skirgajłło f21ef50938 chore: add missing parameter in available variables 2021-05-17 13:15:04 +08:00
zhouzb 3984f8cd2f chore(log): update log content 2021-05-14 19:27:04 +08:00
zhouzb c6771a57b6 chore(update dep): update dep of ehttpc 2021-05-14 19:27:04 +08:00
Turtle 35c38e7d21 fix(lwm2m): fix check emqx-lwm2m version 2021-05-14 05:41:00 +09:00
Turtle 3e3819905d fix(import): fix import bridge mqtt test cases 2021-05-14 05:41:00 +09:00
JianBo He 7dd107a7cd chore(prom): update grafana templates 2021-05-14 05:41:00 +09:00
JianBo He 13257be6b6 chore(appup): supply the appup instructions 2021-05-14 05:41:00 +09:00
JianBo He 02d9740d14 feat(lwm2m): observe specified object lists 2021-05-14 05:41:00 +09:00
JianBo He 793c813d02 feat(delayed): record the delayed table size by emqx_stats
There are three indictors about delayed module:
- 'messages.delayed': shows the number of delayed msg received
- 'emqx_delayed_count': shows the delayed table size now
- 'emqx_delayed_max': shows the maximum size that the delayed table has reached
2021-05-14 05:41:00 +09:00
JianBo He d317d57f3f fix(metric): incr the messages.retained counter 2021-05-14 05:41:00 +09:00
wwhai 72e9453293 fix(mgmt): fix diylazer warning for function return (#4786) 2021-05-14 05:41:00 +09:00
Zaiming Shi 4577f6653c fix(emqx_rule_engine): add appup 2021-05-14 05:41:00 +09:00
Turtle a58357cfe3 feat(rule_engine): rule sql add null function 2021-05-14 05:41:00 +09:00
Turtle cc6f43aea7 fix(import): fix import bridge mqtt test cases 2021-05-14 05:41:00 +09:00
Turtle 6ba1a525e0 fix(lwm2m): fix check emqx-lwm2m version 2021-05-13 11:20:23 +08:00
Turtle 85937e0007 fix(import): fix import bridge mqtt test cases 2021-05-12 22:46:48 +08:00
JianBo He e0068f6ebe chore(prom): update grafana templates 2021-05-12 22:24:37 +08:00
JianBo He fcf046eec1 chore(appup): supply the appup instructions 2021-05-12 22:23:21 +08:00
JianBo He 36c7258337 feat(lwm2m): observe specified object lists 2021-05-12 22:23:21 +08:00
JianBo He 82330ffa00 feat(delayed): record the delayed table size by emqx_stats
There are three indictors about delayed module:
- 'messages.delayed': shows the number of delayed msg received
- 'emqx_delayed_count': shows the delayed table size now
- 'emqx_delayed_max': shows the maximum size that the delayed table has reached
2021-05-12 22:16:14 +08:00
JianBo He e7252eee81 fix(metric): incr the messages.retained counter 2021-05-12 22:16:14 +08:00
wwhai 09fb1461b7
fix(mgmt): fix diylazer warning for function return (#4786) 2021-05-12 22:13:26 +08:00
Zaiming Shi ded494f544 fix(emqx_rule_engine): add appup 2021-05-11 14:25:46 +02:00
Turtle 80ef076cee feat(rule_engine): rule sql add null function 2021-05-08 17:15:07 +08:00
Turtle c5aeeb3b40 fix(import): fix import bridge mqtt test cases 2021-05-08 15:28:26 +08:00
Zaiming (Stone) Shi 0d9a9fc966
Merge branch 'dev/v5.0' into resolve-conflict-master-to-v5.0 2021-05-07 08:43:26 +02:00
Zaiming Shi f68a89c9ba fix(auth-http): support content-type header env variable override 2021-05-07 10:14:19 +08:00
k32 7cd31028cb fix(dialyzer): Omit `value is unmatched` warning 2021-05-06 23:28:12 +08:00
Turtle 9dc1e162fa fix(sn): fix clean_session=false willmsgs not sent 2021-05-06 19:15:49 +08:00
Zaiming Shi b8e271a588 chore: add more info in test log 2021-05-06 11:03:02 +02:00
Zaiming Shi d904a1048b Merge remote-tracking branch 'origin/master' into merge-master-to-dev/v5.0 2021-04-30 15:09:31 +02:00
wwhai a9b674c587 fix(deps): fix ee430 problem when remove resources 2021-04-30 06:41:37 -05:00
Zaiming Shi 171933301a fix(dashboard): display full Erlang/OTP version 2021-04-30 12:26:59 +02:00
JianBo He 01696ce595 chore(coap): use ~0p to print peername 2021-04-30 15:32:04 +08:00
Shawn cb31d66bf2
Cache publishes before receiving the REGACK (#4695)
* refactor(emqx_sn): return new state from send_message

* fix(emqx_sn): send publish only after regack received
2021-04-30 15:31:34 +08:00
wwhai 54dc75ed79 fix(deps): fix function clause at apply_new_config 2021-04-28 20:39:16 +08:00
Zaiming Shi fbe15859f5 fix(emqx_rule_utils): http connectivity check ipv6 support 2021-04-28 10:43:36 +02:00
Zaiming Shi 078ca67268 test(emqx_auth_http): test ipv6 + hostname resolution 2021-04-28 10:43:36 +02:00
Zaiming Shi a37f47887a fix(ipv6): add ipv6_probe socket option only when supported
ipv6_probe is a socket option supported in EMQ's otp.git fork.
If the target hostname has a ipv6 DNS resolution, gen_tcp
tries to establish a connection on ipv6.
If it fails, then a fallback to default gen_tcp:connection
2021-04-28 10:43:36 +02:00
zhouzb d9c7c72612 feat(ipv6 probe): automatically probe whether it is IPv6 2021-04-28 10:43:36 +02:00
JianBo He 7ae06590de test(auth-mnesia): test the password_hash option 2021-04-27 21:10:33 +08:00
JianBo He d5abfd0caa fix(auth-mnesia): fix env name typos 2021-04-27 21:10:33 +08:00
wwhai 773b8eef2f fix(deps): increase time sleep 2021-04-27 21:04:24 +08:00
Shawn bea28d887c fix(rule_engine): refresh rules and then re-enable it 2021-04-27 15:45:25 +08:00
Shawn 6557b132a2 fix(rule_engine): only refresh enabled rules at bootup 2021-04-27 11:17:12 +08:00
Shawn 7198c018e2 fix(rule_engine): change the rule state when force enabled/disabled 2021-04-27 11:17:12 +08:00
Shawn 18688da0c1 fix(rule_engine): only auto re-enable the rule when it was force disabled 2021-04-27 11:17:12 +08:00
Shawn da81ab7988 fix(rule_engine): remove sleep before refresh rules 2021-04-27 11:17:12 +08:00
Shawn e3501acc02 fix(rule_engine): delete resource crashes when dependent rule exists 2021-04-27 11:17:12 +08:00
Shawn 3646e76a7a fix(rule_engine): re-enable rules after resource started 2021-04-27 11:17:12 +08:00
Shawn 9fd43ef882 fix(rule_engine): reformat some code for dependent rules discovery 2021-04-27 11:17:12 +08:00
Ertan Deniz 07d5c0f9df feat(exhook): add ssl cert info to ClientInfo 2021-04-27 09:20:38 +08:00
JianBo He 910449e67b fix(exhook): allow certificate options absent 2021-04-26 20:27:17 +08:00
Zaiming Shi b97b36d077 test(emqx_coap): publish to non-wildcard topic 2021-04-26 14:18:40 +02:00
DDDHuang 29592fe1b4
Fix rule engine build fail (#4673)
* fix: add rule engine resources time
2021-04-26 15:32:54 +08:00
Shawn dc95c1476a fix(emqx_sn): willmsgs not sent 2021-04-25 09:45:16 +08:00
Zaiming Shi d61b100cc9 chore: more copyright updates 2021-04-23 20:43:00 +02:00
Zaiming Shi 6354e75626 chore: update copyrights 2021-04-23 20:43:00 +02:00
DDDHuang 4178e1a023 fix: disable rule if build fail 2021-04-22 14:46:28 +08:00
Shawn 19a9bab3a4 feat(rule_engine): add rule sql functions for datetime rfc3339 2021-04-22 10:32:44 +08:00
wwhai 73e563c883 test(mgmt): remove macro switch 2021-04-21 09:35:04 +08:00
Zaiming Shi 2ffa71abde test(emqx_bridge_mqtt): fix race condition 2021-04-20 23:17:39 +02:00
Zaiming Shi 186dfd04a7 test(webhook): ignore messages from other clients 2021-04-20 18:29:50 +02:00
Zaiming Shi e59eacb891 test(webhook): test ipv6 for real 2021-04-20 08:13:23 +02:00
zhanghongtong daa3d70ec3 chore(tests): delete enterprise json file 2021-04-19 19:07:49 +08:00
Zaiming Shi 97f2e5d544 test(auth_http): test unset acl_req app env 2021-04-19 08:39:26 +02:00
Zaiming Shi 8eed34c939 chore(auth_http): fix typo 2021-04-19 08:39:26 +02:00
Zaiming Shi e02eb5f939 docs(auth_http): Update config doc 2021-04-19 08:39:26 +02:00
zhanghongtong 8ef4df4592 chore(web hook): fix tests error 2021-04-16 23:27:20 +08:00
zhouzb 3ae8bae9f3 feat(uri): update urldecode/1 2021-04-16 20:19:45 +08:00
Turtle 5009ec0c34 fix(tests): fix ee import auth mnesia fail 2021-04-16 19:47:49 +08:00
Shawn 5896e90235 fix(export): Mod:call/3 not exported 2021-04-16 18:44:28 +08:00
Karol Kaczmarek 7b5422dbae feat: cluster info available in metrics 2021-04-16 11:28:35 +02:00
tigercl 1a630a308a
fix(backup): support minimum version number when import (#4582) 2021-04-16 15:51:36 +08:00
Shawn a09434acd2 fix(emqx_sn): dialyzer problems 2021-04-16 14:04:34 +08:00
Shawn 98edbc39af fix(emqx_sn): race_condition when discarding 2021-04-16 12:38:13 +08:00
zhanghongtong 53992ba138 chore(tests): fix tests error for web hook 2021-04-15 23:07:00 +08:00
zhanghongtong 0090295a17 chore(tests): fix import and export test cases for auth mnesia 2021-04-15 23:05:12 +08:00
wwhai b48c437f97 test(mgmt): add data im/export tests for EE 2021-04-15 21:59:37 +08:00
JianBo He 50f6ff4151 test(proper): avoid to generate any term 2021-04-15 21:49:25 +08:00
JianBo He 36663b9cb1 test(exhook): add tests for exhook cli 2021-04-15 21:48:32 +08:00
JianBo He 6710a508df fix(exhook): correct the exhook server anme 2021-04-15 21:48:32 +08:00
JianBo He 373532f9e4 fix(exhook): fix the match pattern 2021-04-15 21:48:32 +08:00
zhouzb 9bedd1bb4f chore(ehttpc): update tag of ehttpc 2021-04-15 21:47:20 +08:00
Shawn 45626bf96d fix(emqx_coap): return unauthorized when username/password error 2021-04-15 21:47:00 +08:00
JianBo He 9f088bcb7f test(proper): test message hooks 2021-04-15 11:07:55 +08:00
JianBo He b7a8884d4a chore(exhook): add a comment to bool type 2021-04-15 11:07:55 +08:00
zhanghongtong eda783efd0 chore: delete needless ct print 2021-04-14 23:06:34 +08:00
JianBo He c413af5c35 test(proper): track to the lastest code
- use limited atom type
- keep webhook confs testing to lastest schema
2021-04-14 19:38:56 +08:00
JianBo He 1d241bc39c fix(webhook): convert atom to binary to avoid jiffy encoding failure 2021-04-14 19:38:56 +08:00
k32 9ead5c8cfd chore(test): fix shutting down of applications in web hooks suite 2021-04-14 19:18:35 +08:00
k32 8304a96e1d fix(emqx_management): Don't fix broken emqx_auth_mnesia data 2021-04-14 19:18:35 +08:00
Zaiming (Stone) Shi 24fdd7aef5
Merge pull request #4526 from zmstone/fix-mqtt-bridge-retry
fix(emqx_bridge_mqtt): fix retry_inflight
2021-04-13 12:04:14 +02:00
zhanghongtong be36e51f6e feat(redis): redis sentinel support ssl connect 2021-04-13 14:42:08 +08:00
JianBo He 658ed81cfa fix(exhook): fix bad variable name 2021-04-13 10:28:07 +08:00
JianBo He da80343108 fix(exhook): fix module name to emqx_exhook_handler 2021-04-13 10:28:07 +08:00
wwhai 8a6f26d170 test(mgmt): remove unused ct log 2021-04-13 09:54:49 +08:00
z8674558 b0c3c713b5 Merge branch 'master' of github.com:emqx/emqx into merge-master-to-v5 2021-04-13 00:09:17 +09:00
JianBo He 16c999ed9b
Start emqx-modules application by default (#4518)
* fix(modules): start emqx_modules by default

* chore(test): eliminate some compile warnings
2021-04-12 09:45:31 +08:00
Shawn b5edba7729 fix(rule_engine): load hooks to all the nodes in cluster 2021-04-12 09:41:28 +08:00
Shawn f8fbd3e3db fix(lwm2m): decode/encode data as signed integer 2021-04-12 09:34:49 +08:00
wwhai 765d84ef48
test(mgmt): add data import tests (#4481) 2021-04-12 09:06:22 +08:00
zhouzb a712606121 fix(http api): fix badarg caused by acl cache api 2021-04-12 09:05:49 +08:00
Zaiming Shi d8e410e770 fix(emqx_rule_engine): missing calls
some calls are for enterprise only
2021-04-11 22:55:39 +02:00
Zaiming Shi d66f67d411 fix(emqx_bridge_mqtt): fix retry_inflight
The Inflight list should not be used to update State.inflight
2021-04-10 14:16:08 +02:00
Shawn 327b0c0995 fix(mqtt_sn): send pingresp until all pubacks received 2021-04-10 09:36:56 +08:00
Zaiming Shi e4242814f6 fix(emqx_bridge_worker_SUITE): ensure snabbkaffe start stop 2021-04-09 10:18:25 +02:00
Zaiming Shi ae9278a409 fix(bridge_mqtt): push to max-inflight limit
the old pop_and_send implementation may leave inflight queue starving
2021-04-09 10:18:25 +02:00
Zaiming Shi ae688e2c90 fix(bridge_mqtt): fix inflight reference booking
Prior to this change, the inflight batches are referenced
by the last packet ID for non-QoS-0 messages, other packet
IDs sent back from downstream causes an error log:
"Can't be found from the inflight"

Even worse, the batch is appended back to the queue for retry.
2021-04-09 10:18:25 +02:00
Shawn 2b8c1efd1d fix(mqtt_sn): refactor the log using logger.hrl 2021-04-09 16:02:29 +08:00
Shawn 6c57da31cb fix(mqtt_sn): update the testcase for disconn in awake state 2021-04-09 16:02:29 +08:00
Shawn e63b47bd7a fix(mqtt_sn): remove the shutdown/2,3 2021-04-09 16:02:29 +08:00
Shawn b8cb930c89 fix(mqtt_sn): handle disconnect msg in asleep state 2021-04-09 16:02:29 +08:00
Shawn a925395814 fix(mqtt_sn): reformat some code 2021-04-09 16:02:29 +08:00
k32 df3565e23d fix(emqx_management): Import ACLs from the enterprise version 2021-04-08 18:15:43 +08:00
k32 664b9c79fc fix(emqx_management): Add clientid data to the migration suite 2021-04-08 18:15:43 +08:00
Zaiming Shi b3b821e8c4 fix(flase): false 2021-04-08 00:34:43 +02:00
Zaiming Shi a914b191b6 chore(build): Pin poolboy 1.5.2
mongodb-erlang uses a special fork:
https://github.com/comtihon/poolboy.git
(which has overflow_ttl feature added).
However, it references `{branch, "master}`
should be `{ref, "9c06a9a"}` (2021-04-07).
By accident, We have always been using the upstream fork due to
eredis_cluster's dependency getting resolved earlier.
Here we pin 1.5.2 to avoid surprises in the future.
2021-04-08 00:02:27 +02:00
z8674558 490e6198ba fix(apps): typos on schema 2021-04-07 20:51:30 +09:00
z8674558 971e6ca90e Merge branch 'master' of github.com:emqx/emqx into merge-master-to-v5 2021-04-07 20:29:08 +09:00
zhanghongtong d1284cdcbb chore(mgmt import cases): import cases support enterprise 2021-04-07 18:40:42 +08:00
JianBo He 61c677423e test(coap): take a nap for cast operation 2021-04-07 10:48:05 +08:00
zhanghongtong ada36f5d23 chore(mgmt export): use new create time in export data 2021-04-07 10:35:08 +08:00
k32 d54643e9e1
Merge pull request #4453 from k32/fix-auth-mnesia
fix(emqx_auth_mnesia): add missing combinations of permissions
2021-04-06 21:37:50 +02:00
zhanghongtong 15627643e2 chore(mgmt): delete assert in emqx_mgmt_cli 2021-04-06 16:35:44 +08:00
zhanghongtong 0015520a6a chore(mgmt): fix test case failure caused by slow kick 2021-04-06 15:41:59 +08:00
JianBo He cff21ba16e fix(mgmt): exclude telemetry related lines from enterprise 2021-04-06 13:22:23 +08:00
JianBo He bb2033be13 refactor(exhook): remove hook registray 2021-04-06 11:22:30 +08:00
k32 017a07617d fix(emqx_auth_mnesia): Add tests for migrating pubsub access 2021-04-01 18:01:34 +02:00
zhanghongtong ffbc11aeef chore(lua_hook): fix test error for lua_hook 2021-04-01 22:56:21 +08:00
k32 61ad5d718f fix(emqx_acl_mnesia): split pubsub into two different capabilities 2021-04-01 15:08:10 +02:00
zhanghongtong 5e0dfe250d chore: move emqx_telemetry from apps to lib-ce 2021-04-01 14:05:03 +02:00
k32 2c029c0607 fix(emqx_management): Allow to specify credential type during import 2021-03-31 14:45:11 +02:00
k32 830cdffe16 fix(emqx_auth_mnesia): add missing combinations of permissions
Allow to define different access for pub and sub actions
2021-03-31 10:30:08 +02:00
Shawn d19eb05234 fix(emqx_coap): dialyzer failures 2021-03-31 11:23:03 +08:00
Shawn 83b0d444de fix(emqx_coap): return error code forbidden on ACL denied #4456 2021-03-31 11:23:03 +08:00
Shawn 7bf6ee0f4b
fix(mqtt-sn): sleep mode not working #4434 (#4435) 2021-03-29 17:51:49 +08:00
Shawn 583382b8ce refactor(emqx_coap): rename ps to pubsub 2021-03-29 17:43:56 +08:00
wwhai abf26f01d8 fix(mgmt): expose 2 functions to ce 2021-03-25 18:53:17 +08:00
JianBo He 496e5381fb chore(rule-engine): compatible with the lower case hash string 2021-03-25 09:10:05 +08:00
wwhai 3ea8039d90 fix(import): fix import error 2021-03-23 21:57:39 +08:00
wwhai 83b99c09a4 fix(import): add bridge_mqtt compatible <4.2.x 2021-03-23 20:22:22 +08:00
JianBo He f08ddec296
Add server_name_indication and verify option (#4349)
Add server_name_indication and verify option
2021-03-23 19:48:04 +08:00
JianBo He 277cab86d3 refactor: improve the speed of hexstr and binary conversions 2021-03-23 18:25:19 +08:00
Zaiming Shi dcfde3861f feat(ssl): Export a lib function to save key/cert file 2021-03-22 21:15:34 +01:00
Zaiming Shi 5b126d60ad style(elvis): force spaces around | and || 2021-03-22 21:15:16 +01:00
Zaiming Shi 71559dd001 refactor(ssl): Move data dir for ssl certs upload down to lib module 2021-03-22 16:41:01 +01:00
Zaiming Shi 8a41a4ee00 fix(ssl): Fix dir name for uploaded certificates
The dir is "rules" not "rule" in the original code
ref: f1eba1c648/src/emqx_rule_actions_utils.erl
2021-03-22 16:41:01 +01:00
Shawn 817abd7e93 fix(lwm2m): export functions for starting and stopping listeners 2021-03-22 21:13:56 +08:00
Karol Kaczmarek 844a1ba0af feat(acl): cache drain cr fixes 2021-03-20 15:21:31 +01:00
Karol Kaczmarek 87ce9d666f feat(acl): working cache drain cli/rest handlers 2021-03-20 15:21:31 +01:00
Karol Kaczmarek 71a0901c92 feat(acl): CLI and REST handlers for removing acl cache 2021-03-20 15:21:31 +01:00
zhanghongtong 99843e7b4b chore(auth plugins): remove emqx_modules in test case 2021-03-20 09:33:15 +08:00
zhanghongtong beac1f5f59 fix(test cases): fix test case error
ensure emqx_modues loaded before emqx_management in test cases
2021-03-19 17:02:06 +01:00
wwhai 3f2204fb5c fix(backup): add compatible for more lower version 2021-03-19 16:24:13 +08:00
wwhai 109b2f4e90 fix(backup): fix data import/export problem 2021-03-19 16:24:13 +08:00
Karol Kaczmarek 796c071af5 style(api): proplists imports removed 2021-03-19 09:20:25 +08:00
Karol Kaczmarek ea384ec6b5 style(api): minirest imports removed 2021-03-19 09:20:25 +08:00
wwhai 0d75ea874b fix(rule-engine): add 'undefined' type for create time 2021-03-19 08:57:19 +08:00
Zaiming Shi a5f0ed0356 fix(test): Ensure emqx_modules loaded for emqx_management test 2021-03-17 11:46:45 +01:00
zhanghongtong 7a1993f13b chore(auth-mnesia): update cli 2021-03-17 16:29:44 +08:00
Zaiming Shi a1f78b5083 refactor(cli): Print node name version and app name version
So not to confuse application version with node release version
2021-03-16 11:26:17 +01:00
zhanghongtong 98c62df2e4 fix(log): fix web hook print error 2021-03-16 10:22:07 +01:00
Zaiming Shi 3438a0ebca fix(telemetry): get release version, not emqx app version 2021-03-15 16:10:56 +08:00
wwhai f7b34cb098 feat(rule-engine): list rule support order by timestrap 2021-03-12 17:35:13 +08:00
Zaiming Shi 6c106207ff
Merge pull request #4293 from emqx/master
Auto-pull-request-on-2021-03-05
2021-03-10 20:57:45 +01:00
wwhai 1ddb300a56
feat(mgmt): add http listener restart support (#4301) 2021-03-10 17:29:37 +01:00
JianBo He 6bf15c6a2f chore(exhook): deinit registray after application stopped 2021-03-09 11:37:30 +08:00
JianBo He ebffdafe86 fix(exproto): ignore undefined clientid 2021-03-09 11:37:30 +08:00
JianBo He f9d5d3523d chore(exhook): add more option for protobuff 2021-03-09 11:37:30 +08:00
JianBo He 0d8c137cb5 refactor(exhook): load only the necessary hooks 2021-03-09 11:37:30 +08:00
JianBo He 4585306774 chore(exhook): upgrade to 0.6.2 2021-03-09 11:37:30 +08:00
Zaiming Shi c752f3bec5
Refactor http lib add uri parse (#4292)
* feat(http_lib): Add uri parse to emqx_http_lib

* fix(webhook): call emqx_http_lib to parse uri

* fix(auth-http): Call emqx_http_lib to parse uri

* fix(rule-engine): call emqx_http_lib to parse uri
2021-03-06 13:35:02 +08:00
z8674558 efd4ef8091 Merge branch 'dev/v5.0' of private:emqx/emqx into fix-merge-conflict-master-to-5.0 2021-03-04 22:12:09 +09:00
Zaiming Shi 63c001a7aa refactor(http-lib): Add emqx_http_lib
So far only uri_encode and uri_decode APIs
2021-03-03 21:38:10 +01:00
Zaiming Shi eb03c343bc fix(mgmt): Wrong ifdef EMQX_ENTERPRISE compile scope 2021-03-03 19:06:12 +01:00
Zaiming Shi a368453768 fix(mgmt): typo in ifdef macro 2021-03-03 15:15:33 +01:00
z8674558 119bbc4881 chore(emqx_bridge_msg): add empty props 2021-03-03 20:06:31 +09:00
z8674558 71ca1e4d78 chore(emqx_lwm2m_coap_resource): ignore coap_discover/2 from dialyzer 2021-03-03 20:06:31 +09:00
z8674558 117c0cf252 chore(emqx_lwm2m_message): pass integer from list 2021-03-03 20:06:31 +09:00
z8674558 7edd66e9d6 chore(emqx_lwm2m_message): comment out unused clause 2021-03-03 20:06:31 +09:00
z8674558 467569d5ac chore(emqx_lwm2m_protocol): rm unused clause 2021-03-03 20:06:31 +09:00
z8674558 43fc842057 chore(emqx_lwm2m_protocol): default username, password is null -> undefined 2021-03-03 20:06:31 +09:00
z8674558 1f238f4c26 chore(emqx_retainer): avoid race condition 2021-03-03 20:06:31 +09:00
z8674558 70625b1942 chore(emqx_sn_gateway): rm unused clauses 2021-03-03 20:06:31 +09:00
z8674558 1504164933 chore(src): fix dialyzer warnings (match values) 2021-03-03 20:06:31 +09:00
Zaiming Shi 2c5f2a8cdc
Merge pull request #4269 from zmstone/chore-replayq-upgrade-to-0.3.2
chore(deps): upgrade replayq to version 0.3.2
2021-03-03 06:19:52 +01:00
Zaiming Shi 8316f8cc34 fix(rule-engin-api): transform input config for update requests 2021-03-03 09:19:07 +08:00
Zaiming Shi e3407b9556 chore(build): fix rebar dependency and add a script to ensure integrity 2021-03-02 20:30:55 +01:00