Commit Graph

1159 Commits

Author SHA1 Message Date
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