Commit Graph

2557 Commits

Author SHA1 Message Date
Ilya Averyanov
0baec8e27d chore(authn): unify Mongo type parameter naming 2021-11-29 21:39:28 +03:00
Ilya Averyanov
390575eafb chore(authn): add MongoDB backend tests 2021-11-29 21:17:56 +03:00
Ilya Averyanov
4580c03ebc chore(authn): add SCRAM mechanism tests 2021-11-29 20:49:45 +03:00
JianBo He
581cb6ac5d
Merge pull request #6268 from HJianBo/reduce-case-logs
test(gw): reduce useless log print
2021-11-29 11:03:40 +08:00
Ilya Averyanov
726e25d6ae chore(authn): add JWKS backend tests 2021-11-26 18:40:21 +03:00
Thales Macedo Garitezi
284619ef86
Merge pull request #6310 from emqx/test-fix-possible-flakiness
test(flakiness): prevent possible flakiness in test

If the spawned process doesn't have enough time to be properly set up,
the returned stacktrace may be empty, making the test fail. By
synchronizing the startup, we know that the process will have a proper
stacktrace by the time of the assertion.
2021-11-26 08:09:05 -03:00
Ilya Averyanov
759b03a6ad
Merge pull request #6306 from savonarola/ct-output
chore(ct): remove verbose output during tests
2021-11-26 12:54:21 +03:00
JimMoen
1d3558ebe0 style: make elvis happy 2021-11-26 17:46:38 +08:00
zhongwencool
f697028b70
Fix ping not return pong (#6285)
* fix: ./bin/emqx ping return pong

* chore: waiting longer for logger flush log to disk

* fix: change swagger page's limit from 100 to 1000

* chore: type wrong

* fix: sync log to disk by logger_disk_log_h:filesync
2021-11-26 17:02:45 +08:00
JimMoen
b41c41570a fix(authz): placehodler regular escape 2021-11-26 15:39:42 +08:00
tigercl
124ba7a071
Merge pull request #6311 from emqx/release-5.0-beta.2
Sync bug fixes
2021-11-26 14:24:19 +08:00
tigercl
12d8ebcc15
Merge pull request #6303 from tigercl/fix/authn-jwt
fix(authn): fix jwt authn
2021-11-26 13:36:01 +08:00
zhouzb
349fd1608b style(authn): improve code formatting 2021-11-26 10:29:57 +08:00
Thales Macedo Garitezi
d6288a0b70
test(flakiness): prevent possible flakiness in test
If the spawned process doesn't have enough time to be properly set up,
the returned stacktrace may be empty, making the test fail.  By
synchronizing the startup, we know that the process will have a proper
stacktrace by the time of the assertion.
2021-11-25 17:15:07 -03:00
Ilya Averyanov
ea0fa24ce5 chore(ct): remove verbose output during tests 2021-11-25 18:30:50 +03:00
Ilya Averyanov
e6c2600718 chore(authn): add HTTP backend tests 2021-11-25 15:09:13 +03:00
zhouzb
ecd3c9f85c test(authn): add test cases for jwt authn 2021-11-25 19:03:11 +08:00
zhouzb
15654b5b28 fix(authn): add handling of invalid secret 2021-11-25 17:17:44 +08:00
zhouzb
d88bfdfe14 fix(authn): verify claims type is wrong 2021-11-25 16:42:08 +08:00
JimMoen
f74e34b6a5 fix(conf): change max_topic_levels default configuration 2021-11-25 10:11:24 +08:00
Thales Macedo Garitezi
db3f7ff749
feat(sys_mon): remove current_function
Since we now output `current_stacktrace`, `current_function` is now
redundant.
2021-11-24 12:16:16 -03:00
Thales Macedo Garitezi
a41d0d49bd
test(impossible_case): remove impossible case test
Since `emqx_vm:get_process_info/1` only accepts PIDs as arguments,
it's impossible for `emqx_sys_mon:procinfo/1` to return after
receiving the atom `undefined`.
2021-11-24 11:34:36 -03:00
Thales Macedo Garitezi
75a17431d5
feat(sys_mon): Add proc_lib:initial_call/1 and current_stacktrace
This adds the information from `proc_lib:initial_call/1` and the
current stacktrace from the process info to `emqx_sys_mon:procinfo/1`
to aid in debugging some warnings with no context such as the
following:

```
2021-11-23T12:33:59.387818+00:00 [warning] info: [{old_heap_block_size,45988046},{heap_block_size,22177879},{mbuf_size,0},{stack_size,40},{old_heap_size,22354134},{heap_size,7106339}], line: 130, mfa: emqx_sys_mon:handle_info/2, msg: large_heap, procinfo: [{pid,<0.2667.0>},{memory,579763664},{total_heap_size,68510672},{heap_size,22177879},{stack_size,40},{min_heap_size,233},{initial_call,{proc_lib,init_p,5}},{current_function,{gen,do_call,4}},{registered_name,[]},{status,running},{message_queue_len,360945},{group_leader,<0.1660.0>},{priority,normal},{trap_exit,false},{reductions,16493271},{last_calls,false},{catchlevel,4},{trace,0},{suspending,[]},{sequential_trace_token,[]},{error_handler,error_handler}]
```
2021-11-24 11:24:27 -03:00
Ilya Averyanov
3400a3b978
Merge pull request #6288 from savonarola/handle-authn-backends-own-validations
fix(authn): handle authn backends own validations
2021-11-24 15:18:11 +03:00
Ilya Averyanov
ac3707e4a9 fix(authn): handle authn backends own validations 2021-11-24 14:05:46 +03:00
zhouzb
fb6ab93f47 fix(dialyzer): fix redundant cases 2021-11-24 18:21:08 +08:00
zhouzb
261ca3d625 fix(connector): fix crash in health checking of mongo connection 2021-11-24 16:48:35 +08:00
Tobias Lindahl
ca89a8da61
Merge pull request #6274 from emqx/persistent-sessions-ram-backend
feat(persistent_sessions): add choice between ram or disc backends in…
2021-11-24 09:25:14 +01:00
JimMoen
d7c7292321 fix(authz): placeholder regular replace 2021-11-24 11:10:30 +08:00
Ilya Averyanov
9f04ac5bfd
Merge pull request #6269 from savonarola/test-authn-resources-mysql-pgsql
chore(authn): add MySQL & PostgreSQL backend tests
2021-11-23 20:03:52 +03:00
Spycsh
fda2e86187
Merge pull request #6107 from Spycsh/slog
chore: refactor slog under emqx, conf and exhook
2021-11-23 16:39:06 +01:00
Tobias Lindahl
9a97a7a1c7 chore(persistent_session): remove quotes around boolean in config 2021-11-23 16:24:40 +01:00
Tobias Lindahl
df2dda2e10 chore(persistent_session): make more table creation parameterized 2021-11-23 16:23:47 +01:00
Tobias Lindahl
9eaedbf246 test(persistent_sessions): add back test groups lost in refactoring 2021-11-23 16:17:27 +01:00
Tobias Lindahl
46788ad31b chore(persistent_sessions): add descriptions of persistent session configs 2021-11-23 13:53:04 +01:00
Tobias Lindahl
0865fc6e57 test(persistent_sessions): increase wait time for cm unregister in test 2021-11-23 13:52:02 +01:00
Tobias Lindahl
6eb4a617bc test(persistent_sessions): make another attempt at fixing flaky test 2021-11-23 13:29:47 +01:00
zhouzb
4d92e2b6af fix(connector): fix options handling for mongo connector 2021-11-23 20:01:21 +08:00
Tobias Lindahl
08acb5d435 feat(persistent_sessions): add choice between ram or disc backends in mnesia 2021-11-23 11:51:21 +01:00
Ilya Averyanov
8cc0b43de7 chore(authn): add MySQL & PostgreSQL backend tests 2021-11-23 11:52:51 +03:00
JianBo He
27270ca679 test(gw): fix elvis warnings 2021-11-23 16:36:11 +08:00
JianBo He
5204a1c6d4 test(gw): reduce useless log print 2021-11-23 16:01:40 +08:00
zhongwencool
ef0e440d27
feat: http trace api for 5.0 (#6200)
* feat: port log trace http api for 5.0

* fix: name must printable unicode len<256

* fix: check-nl-at-eof warning

* fix: handler_id always atom
2021-11-23 13:49:12 +08:00
DDDHuang
6a60c17970
fix: add lw gateway endpoint placeholder support (#6267) 2021-11-23 12:08:45 +08:00
Shawn
af5002733b
Merge pull request #6256 from terry-xiaoyu/resource_metrics2
Add metrics to emqx_resource and emqx_bridges
2021-11-23 11:14:25 +08:00
Thales Macedo Garitezi
d7725f799c
fix(flaky_test): improve live connection count test on CI (#6257)
* fix(flaky_test): improve live connection count test on CI

It seems that a race condition that is triggered more often in CI can
make the test fail, possibly due to the ETS write not being seen by
the subsequent read in the test.

* style(elvis): fix NL in emqx_connector.conf
2021-11-23 11:12:45 +08:00
DDDHuang
21bd9bba55
fix: generate palce holder (#6250)
* fix: generate place holder

* style: whitespace cleanup

* refactor(authz): placeholder for athuz

* test: authz test suite for placeholder

* fix: lw place holder suite

* fix: auth n redis suite

Co-authored-by: JimMoen <LnJimMoen@outlook.com>
2021-11-23 10:56:43 +08:00
Shawn
46838a08cc fix(resource): update testcases for after_query functions 2021-11-23 10:41:45 +08:00
Shawn
6fb464fc05
Merge pull request #6059 from tigercl/fix/ssl
fix(ssl): fix API returns the certificate file name instead of the certificate content
2021-11-23 10:38:12 +08:00
Shawn
9aa63358e6 fix(resource): type spec for resource_data() 2021-11-23 10:04:31 +08:00
Shawn
29ad6d215e feat(resource): add metrics to emqx_resource 2021-11-23 10:04:31 +08:00
Shawn
4c149f92c1 feat(bridge): support metrics for bridges 2021-11-23 09:36:10 +08:00
JianBo He
50542ec441
Merge pull request #6248 from HJianBo/gw-improve-apis-1
Add authentication data management APIs for gateway
2021-11-23 09:12:04 +08:00
zhouzb
5aa8ba45d3 fix(authn): add the case when the instance does not exist 2021-11-22 23:30:05 +01:00
zhouzb
2b282b9666 fix(ssl): Return the content of certificates in HTTP response 2021-11-22 23:30:05 +01:00
zhouzb
81d425cb27 fix(ssl): fix the issue that the content of TLS certificate is not converted to path 2021-11-22 23:30:05 +01:00
Spycsh
c89a663b53 chore: refactor slog under emqx, conf and exhook 2021-11-22 23:12:17 +01:00
Zaiming (Stone) Shi
c202688abf
Merge pull request #6258 from tigercl/chore/dashboard
chore(dashboard): disable by default
2021-11-22 22:34:26 +01:00
Ilya Averyanov
071c2c99e8 refactor(authn resources): add emqx_resource and emqx_authn tests 2021-11-22 21:08:04 +03:00
Zaiming (Stone) Shi
b59ad6b186
Merge pull request #6252 from JimMoen/fix-clients-cluster-query
fix(mgmt): fix broken `ets:continuation` been sent between nodes
2021-11-22 15:28:16 +01:00
zhouzb
63f1d88ed3 chore(dashboard): disable by default 2021-11-22 22:23:06 +08:00
Shawn
a0e81226d7 fix(elvis): improve some code format 2021-11-22 19:10:00 +08:00
Shawn
37aeb28a79 fix(connector): test case conflict 2021-11-22 18:52:43 +08:00
JianBo He
1e2eac0fce test(gw): add tests for authm data-mgmt 2021-11-22 17:38:59 +08:00
JianBo He
4eb27ce25b fix(gw): fix bad paging params 2021-11-22 17:38:59 +08:00
JianBo He
7d9930b64e feat(gw): support data-management apis gw's authn 2021-11-22 17:38:59 +08:00
JianBo He
4f752fb5ab chore(gw): fix elvis warnings 2021-11-22 17:38:59 +08:00
JianBo He
f033fad7b3 refactor(gw): deps on emqx_dasboard_swagger 2021-11-22 17:38:59 +08:00
Shawn
f0c61068e8 fix(authn): test cases issues 2021-11-22 17:35:33 +08:00
Shawn
ea3c809287 fix(emqx_conf): merge issues 2021-11-22 17:35:33 +08:00
Shawn
07e3e43a21 fix(authn): xref issues 2021-11-22 17:35:33 +08:00
Shawn
9c93ea0338 feat(connector): add API for /connectors_test 2021-11-22 17:35:33 +08:00
Shawn
c66c6b53b2 feat(connector): add APIs for connector 2021-11-22 17:35:33 +08:00
Shawn
bcf5f499da feat(connector): add APIs for connector 2021-11-22 17:35:33 +08:00
Shawn
4dac90f4a7 refactor(bridges): add POST /bridges for creating 2021-11-22 17:35:32 +08:00
Shawn
c4668b4047 fix(bridge): load emqx_conf in testcases 2021-11-22 17:35:32 +08:00
Shawn
339749764d fix(bridge): update the testcases for HTTP bridges 2021-11-22 17:35:32 +08:00
Shawn
7d64013edd refactor(connector): add connector configs 2021-11-22 17:35:32 +08:00
Shawn
cf3f2c3057 fix(dialyzer): remote the extra str/1 2021-11-22 17:35:32 +08:00
Shawn
e41736f5cb fix(bridge): update testcases for bridge APIs 2021-11-22 17:35:32 +08:00
Shawn
7996d8f709 refactor(bridge): rename the APIs for emqx_bridge 2021-11-22 17:35:32 +08:00
Shawn
1e6884ee7d fix(bridge): convert confs for http bridge when creating 2021-11-22 17:35:32 +08:00
Shawn
f01f9632c1 fix(bridge): cannot start mqtt bridge from config 2021-11-22 17:35:32 +08:00
Shawn
63f942a1b8 feat(bridge): add descriptions to the mqtt bridge schema 2021-11-22 17:35:32 +08:00
Shawn
0cbdaa0f40 refactor(bridge): update config struct for mqtt bridge 2021-11-22 17:35:32 +08:00
Shawn
d046f9c6e7 fix(bridge): improve the schema of connector_http 2021-11-22 17:35:32 +08:00
Shawn
dd9e2c4b24 refactor(bridge): the configs for http bridges 2021-11-22 17:35:32 +08:00
Zaiming (Stone) Shi
90a65b8d04
Merge pull request #6242 from emqx/update-otp-version-and-pkg-name-scheme
Update otp version and pkg name scheme
2021-11-22 10:34:24 +01:00
JimMoen
08899552fe fix(mgmt): fix broken ets:continuation been sent between nodes 2021-11-22 17:16:12 +08:00
tigercl
6da039cf4f
Merge pull request #6231 from tigercl/fix/http-authn
fix(authn): fix pick worker error and match more http response
2021-11-22 09:10:44 +08:00
Ilya Averyanov
3d449b5acf fix(authn): create authn chain tab in start_link 2021-11-21 19:52:29 +03:00
Zaiming Shi
6ca6d60858 fix(dashboard): change hash from sha3_256 to sha256
old version os has no support for it
2021-11-20 21:21:11 +01:00
Zaiming Shi
a705bc1fc7 build: change package name scheme
`${PROFILE}-${PKG_VSN}-otp${OTP_VSN}-${SYSTEM}-${ARCH}.zip`
2021-11-20 20:44:48 +01:00
Zaiming Shi
f84d1aa75e style: fix some elvis style check 2021-11-20 20:41:06 +01:00
Zaiming Shi
6edd862dd5 refactor: no more EMQX_ENTERPRISE compile flag
The compile flag was introduced in EQM X 4.3 series
where CE and EE code was diverged large enough which made
non-practicle to determin edition at runtime.

such approach made testing quite challenging as we'll have to
build with different compile flags inorder to run per-edition
test cases

In this commit, we try to retrieve edition info from EMQX's
description text, (put to PT for fast access) at runtime
so we can test ALL editions from a super-set edition (EE).
2021-11-20 20:41:06 +01:00
Ilya Averyanov
8621257809
Merge pull request #6240 from savonarola/reinit-authn-1
fix(authn): transfer chain tab to emqx_authentication_sup
2021-11-19 19:57:14 +03:00
Ilya Averyanov
c86887491c fix(authn): transfer chain tab to emqx_authentication_sup
To preserve configuration after emqx_authentication crashes.
2021-11-19 16:41:22 +03:00
k32
c9a59968ef refactor(emqx_schema): Code style 2021-11-19 11:41:29 +01:00
k32
deccba3406 fix(schema): Improve configuration of the internal DB 2021-11-19 11:41:08 +01:00
tigercl
a074cf24d0
Merge pull request #6219 from tigercl/fix/authz-certs
fix(authz): fix badmatch when reading certs
2021-11-19 11:25:29 +08:00