Shawn
a9629a931b
chore(test): add coverage generation for make ct
2020-12-23 13:48:49 +08:00
zhanghongtong
a364758e2a
test(emqx_recon): stop emqx correctly in the test case
2020-12-22 13:39:49 +08:00
zhanghongtong
fd6cc1a848
test(CI): update actions
...
add fvt tests
update test cases
2020-12-17 14:23:33 +08:00
Zaiming Shi
1236c1934c
chore(build): refine packages builds
...
This commit merge packages.mk into Makefile
with the complex part moved to shell script ./build.
2020-12-16 09:22:47 +01:00
Rory Z
c0f03ca132
test(CI): add actions for build emqx packages ( #3915 )
2020-12-15 13:34:11 +08:00
Zaiming Shi
8bb5dc5e66
chore(build): Add examples of how to run test cases in README
2020-12-14 00:18:56 +01:00
Zaiming Shi
952c140138
chore(build): Skip relup when there is no upgrade base
2020-12-12 23:02:26 +01:00
Zaiming Shi
075c40aa05
chore(build): Fix relx config for emqx config files overlay
2020-12-12 23:02:26 +01:00
Shawn
10dbb5bc96
Fix testcases warns ( #3906 )
2020-12-11 18:54:48 +08:00
Zaiming Shi
7bdd093ef5
Merge remote-tracking branch 'origin/dev/v4.3.0' into umbrella-fix-build
2020-12-11 08:55:57 +01:00
Zaiming Shi
08d4678ac7
chore(build): Pin rebar3 version 3.14.3-emqx-2
...
Rebar3 3.14.3-emqx-1 always copy non-deps app dirs. i.e. never
try to simlink them.
2020-12-11 08:29:45 +01:00
Zaiming Shi
9fc482e0e5
chore(build): fix duplicated Makefile targets
2020-12-11 08:19:26 +01:00
Zaiming Shi
d67212e7fa
chore(test): Make test profile build
2020-12-11 08:19:26 +01:00
Zaiming Shi
93a35c4814
chore(build): add 'check' profile for xref and dialyzer
2020-12-10 12:03:16 +01:00
Zaiming Shi
ded92cc10b
chore(Makefile): delete stamp clean
2020-12-10 11:42:58 +01:00
Zaiming Shi
558f28ba27
refactor(build): Add dialyzer Makefile target
2020-12-10 09:35:27 +01:00
Shawn
12e0028b77
fix(mgmt): remove schema_registry calls from opensource code
2020-12-10 16:30:48 +08:00
Zaiming Shi
377f01e038
refactor(xref): Add xref Makefile target
2020-12-10 09:22:14 +01:00
JianBo He
49d15d974a
build(make): add xref, dialyzer command
2020-12-09 14:21:54 +08:00
Zaiming Shi
9ecc669f14
chore(rebar3): Upgrade to rebar3 3.14.3-emqx-1
2020-12-06 14:57:51 +01:00
Zaiming Shi
0fb5fb31a5
refactor(proj) sync 4.3.0 plugins with tracked files
2020-12-05 02:43:04 +01:00
Zaiming Shi
ba204b5ab8
chore(build): update rebar3 version
2020-12-02 17:06:26 +01:00
Zaiming Shi
e0123574ed
refactor(build): Ensure depth 1 git clone
2020-12-02 00:06:12 +01:00
Zaiming Shi
4e755d80db
refactor(build): Download rebar3 from github release
2020-11-30 19:48:02 +01:00
Zaiming Shi
dab57b0f0f
chore(build): Update rebar3
...
This rebar3 puts a stamp to app build output dir
skips re-build if alreay built
2020-11-27 21:41:11 +01:00
Zaiming Shi
a6566962e0
refactor(build): simplify version resolution
2020-11-27 01:03:40 +01:00
terry-xiaoyu
151d820058
feature(project): change to rebar3 umbrella project
2020-10-31 11:07:25 +08:00
JianBo He
1700a7a98a
refactor(test): put all property cases to test/props directory
2020-06-18 17:38:34 +08:00
JianBo He
e3489b9d46
refactor(style): improve all types declaration
...
- Add dialyzer for code analysis
- Correct all the module type declarations
- Use `-type()` to declaration a type instead of `-opaque`
(It is advantageous to the code dialyzer)
BROKEN CHANGES:
- Add a ?DEFAULT_SUBOPTS for emqx_broker:subscribe/1,2,3
- Remove the needless internal function `emqx_vm:port_info(PortTerm, Keys)`
2020-06-18 17:38:34 +08:00
JianBo He
e492260fe8
Change travis-ci to github action
2020-03-21 13:40:16 +08:00
JianBo He
40758fb693
Workflow ( #3163 )
...
Add workflows
2020-01-09 11:53:20 +08:00
张奇怪
c713d619da
Add more test cases ( #2992 )
...
* Add more test cases for emqx_stats and emqx_os_mon
Fix test case error for emqx_ws_connection
* Add more test cases for emqx_sys_mon
* Update erlang otp to 22.1 for travis ci
* Delete readable=false for make ct
* Add unset_all_env for emqx_zone and update test cases
2019-10-24 15:41:26 +08:00
Gilbert
79744af681
Wrapper proper test cases into common test cases ( #2785 )
...
* Wrapper proper test cases into common test cases
* Improve test cases for reason code module (#2789 )
* Split 3 proper tests into 3 ct cases
* Improve test cases for client, rpc and request-response
* Add psk suites to increase coverage
* Add sys test cases
2019-08-16 18:07:12 +08:00
Gilbert
96b341fde5
Add proper tests for base62 ( #2761 )
...
* Add proper tests for base62
* Delete useless comment
2019-08-07 09:24:03 +08:00
Feng Lee
c4faeab45a
Move test/run_emqx.escript -> scripts/run_emqx.escript
2019-08-03 14:08:20 +08:00
GilbertWong
22f7280d8e
Make sure the default make behaviour is `make distclean`
2019-06-25 15:27:05 +08:00
GilbertWong
13d33985be
Fix enoent error in run_setup rule of the makefile
...
Prior to this change, if user's computer has no `~/.config/rebar3`
path, `make run` would fail and report enoent error.
This change fix the problem I described above.
2019-06-24 11:42:24 +08:00
Gilbert
20188f9189
Optimize develop workflow and support make run and code hot swapping ( #2644 )
...
* Optimize develop workflow and support make run and code hot swapping
2019-06-21 20:52:27 +08:00
Gilbert
1d23d7de86
Optimize test workflow ( #2642 )
...
* Optimize test suites workflow
* Better format of makefile
* Fix protocol suite
* Add emqx_access_SUITE
2019-06-20 11:44:44 +08:00
Feng Lee
1d88f8fd9e
Improve the emqx_connection, emqx_ws_connection and emqx_frame modules ( #2611 )
...
* Adopt channel architecture and improve the MQTT frame parser
* Update the test cases for emqx_channel, emqx_protocol
- Improve emqx_client to Use the new emqx_frame:parse/2
- Update the ct suites for emqx_channel, emqx_ws_channel
* Fix test case
2019-06-14 12:44:27 +08:00
Gilbert
d3e7d1f0c9
Fix websocket bug ( #2615 )
...
Fix websocket bug.
Prior to this change, websocket connection would be closed directly
without sending connack packet when acl check fails.
This change fix this bug.
2019-06-14 11:33:44 +08:00
Gilbert Wong
3f53c3822d
Fix ct rule in makefile
2019-05-17 10:27:14 +08:00
Gilbert Wong
8065cafe1d
Restore app.confg rule in makefile for debug and test
2019-05-08 21:18:24 +08:00
spring2maz
d0131ec663
Pin emqx-ct-helpers v1.1 ( #2495 )
...
* Pin emqx-ct-helpers v1.1.1
* Fix loaded_plugins touch command
2019-05-04 04:41:08 +08:00
spring2maz
97476b8bde
Build with rebar3 ( #2475 )
...
* Pin cuttlefish rebar3 branch
* No shallow clone for rebar3
* Replace timer:sleep with receive after for deterministic
* Build with only rebar3
* bbmustache as a test dependency
* Change to plain deps
* Use shallow clone by default
* Add ct-helpers as test dep
2019-04-28 09:40:39 +08:00
HeeeJianBo
281fb2d5ec
Depend emqx_ct_helper with tag
2019-04-25 14:30:35 +08:00
Gilbert Wong
b3927ff730
Add emqx_ct_helpers as deps and refactor test suites
2019-04-25 13:41:22 +08:00
Gilbert Wong
bcbb4b68e9
Add flapping detect feature
2019-04-19 16:34:33 +08:00
terry-xiaoyu
8be2defb6b
Update ekka to v0.5.4
2019-03-30 10:41:48 +08:00
Gilbert
2534b8dc64
Support to pass ws compressing options ( #2356 )
...
Add new config entries about websocket
2019-03-27 10:19:35 +08:00
Gilbert Wong
7ff56b55f0
Force makefile to git clone deps
2019-03-16 23:05:15 +08:00
YoukiLin
88c32b2c41
Fix emqx_rpc badargs bug
2019-03-16 21:27:41 +08:00
Shawn
02fe8560e2
Improve emqx_hooks and credentials ( #2309 )
...
* Improve emqx_hooks and credentials
1. Modify the return modes of emqx hooks.
Change the return value of hook functions to:
- ok: stop the hook chain and return ok
- {error, Reason}: stop the hook chain and return error
- continue: continue the hook chain
And the return value of emqx_hooks:run/2 is changed to:
- ok
- {error, Reason}
And the return value of emqx_hooks:run/3:
- {ok, Acc}
- {error, Reason, Acc}
2. Treat password as a member of credentials.
Password should be wrapped in the `credentials` data-structure, as the
username/password pair together consists of an authentication method.
There can be some methods using some other credential data (e.g.
a JWT token), and these credential data should also be wrapped in the
the `credentials` data-structure.
An event `client.authenticate` is triggered when an user logs in:
```erlang
emqx_hooks:run('client.authenticate', [], Credentials)
```
A `default callback` that deny/allow any user (according to the
`allow_anonymous` config) should be appended to the end of the
callback chain.
The `credentails` is passed through all of the callbacks, and
can be changed over in this process.
* Refactor emqx hooks return mode
* Remove password from PState
2019-03-16 10:43:53 +08:00
turtleDeng
b902ff3656
Update gen_rpc to v2.3.1 ( #2315 )
...
Update gen_rpc to v2.3.1
2019-03-15 10:30:14 +08:00
tigercl
da755b88c7
Add monitors and alarm handler ( #2266 )
...
* Add monitors and alarm handler
2019-02-28 18:25:17 +08:00
Gilbert
c26d13b057
Fix test case ( #2275 )
...
* Fix t_rpc test
2019-02-28 18:07:16 +08:00
Gilbert Wong
7efd7b3ec0
Rename portal to bridge
2019-02-28 15:31:54 +08:00
spring2maz
1626cade28
Deleted batch publish support in emqx_portal_client
...
eqmx_portal_mqtt has to do single message publish calls for now
Also fix a bug in emqx_portal_mqtt ack collector
2019-02-28 11:17:27 +08:00
spring2maz
efc9e34033
Make use of BUMP_PACKET_ID the only way to generate packet IDs
2019-02-28 11:17:27 +08:00
spring2maz
6e1d4ec261
Add emqx_portal SUITE to default CT list
2019-02-28 11:17:27 +08:00
spring2maz
2903a810ce
Add emqx_portal:ensure_foreard_present API
2019-02-28 11:17:27 +08:00
spring2maz
fbe67e6784
Introduce new bridge impl
2019-02-28 11:17:27 +08:00
Feng Lee
565c1a8c85
Optimize unset_flag/2 and add some specs
...
- Optimize unset_flag/2
- Add some function specs
- Add emqx_message_SUITE to Makefile
2019-02-22 17:06:52 +08:00
张奇怪
44d3eff094
Auto-pull-request-by-2019-02-19 ( #2232 )
...
* Update Copyright to 2019 (#2191 )
* Disable bridges by default (#2189 )
* Fix warning logger args emqx#2195
* Ambiguity elimination (#2217 )
* Fix emqx_ws_connection: prevent crashes on pong (#2210 )
* Issue#2184 (#2194 )
* Delete dep-vsn-check
* Format app.src
2019-02-19 14:00:34 +08:00
turtleDeng
00863acea3
Merge emqx30 ( #2181 )
...
* Change the reason code in will topic acl check (#2168 )
* Fix bridge bug (#2160 )
* Limit bridge QoS less than 1
* Improve shared sub dispatch implementation. (#2144 )
* Upgrade ekka, esockd libraries
* Improve the 'try_open_session' function
* Reload config (#2180 )
2019-01-25 13:01:48 +08:00
YoukiLin
3748cd434d
Add test case for emqx_sys_mon ( #2150 )
2019-01-12 23:09:39 +08:00
terry-xiaoyu
99f4283458
Update cuttlefish to v2.2.1
2019-01-04 22:55:58 +08:00
YoukiLin
78b3c375d8
Improving 'emqx_ws_connection' coverage ( #2107 )
2019-01-03 12:59:39 +08:00
turtleDeng
6a1ebe299a
Merge emqx32 to emqx30 ( #2112 )
2018-12-28 19:44:41 +08:00
turtled
390fae1134
Rm clique dep
2018-12-21 17:09:15 +08:00
Feng Lee
c93d0fb174
Add test cases for emqx_gc module
2018-12-21 10:28:33 +08:00
Feng Lee
14cffcf7fb
Add the 'emqx_pd' module
...
Add utility functions for erlang process dictionary
Add test cases for emqx_pd
2018-12-20 16:45:25 +08:00
Feng Lee
721b72b96a
Add 'active_n' option to optimize the CPU usage of emqx_connection ( #2060 )
...
* Add 'active_n' option to optimize the CPU usage of emqx_connection
* Supports batch processing 'DOWN' events
2018-12-17 19:53:29 +08:00
terry-xiaoyu
d445c17e6c
Move some vm args to file vm.args
2018-12-14 09:53:13 +08:00
Feng Lee
b4d981daf2
Add a sequence module to generate index for subscription sharding
2018-12-04 15:59:24 +08:00
spring2maz
520a5e0225
Download erlang.mk and use git tag in appfile vsn
2018-12-03 15:16:53 +08:00
spring2maz
b87e72861a
Fallback to git clone -n then checkout if git version is older than 1.8
2018-11-30 11:03:26 +01:00
spring2maz
14dfe03426
Use git tag for app vsn
2018-11-30 11:03:26 +01:00
spring2maz
fe33aeb3dc
For git older than 1.8, there is no shallow clone support
2018-11-30 17:47:59 +08:00
Feng Lee
21ed012a0c
Add an elegant batch module
2018-11-29 10:13:09 +08:00
Feng Lee
309f3560f3
Bump version to 3.0.0
2018-11-28 16:05:17 +08:00
Gilbert Wong
d08ed351be
Do no execute rebar-clean before distclean
...
Prior to this change, this project support to be built with rebar3 and
erlang.mk meanwhile but when we want to make distclean, this project
would execute rebar-clean which would get dependencies via rebar3, it
slow down the procedure of distclean.
2018-11-27 17:00:23 +08:00
Gilbert
d13c5f8ec1
Reduce dep size ( #1981 )
2018-11-26 17:55:48 +08:00
Shawn
93a079752f
Update cuttlefish to v2.1.1 ( #1978 )
2018-11-23 11:04:55 +08:00
tigercl
551d5d99d2
Change 'aquire' to 'acquire' ( #1976 )
...
* Change 'aquire' to 'acquire'
2018-11-23 11:00:30 +08:00
turtled
faeda253e1
Fix conflicts
2018-11-10 11:44:55 +08:00
terry-xiaoyu
f6266eaa93
Bumped the version number of deps
2018-11-02 19:42:51 +08:00
terry-xiaoyu
2a5f3e949c
revert Makefile
2018-11-02 18:38:07 +08:00
terry-xiaoyu
94dbdffd59
New logger formatter with meta-data
2018-11-02 18:38:07 +08:00
terry-xiaoyu
2c63aef3f6
Update schema
2018-11-02 18:32:42 +08:00
spring2maz
28c8f2dd5c
Remove neotoma plugin, build cuttlefish script in sub-dir
2018-10-27 14:21:53 +02:00
tigercl
abb2e5c918
Improve test cases, and fix some bugs ( #1920 )
...
* Improve emqx_banned, emqx_pqueue, emqx_router test cases
* Improve emqx_broker test case, and fix bug in emqx_broker
* Add emqx_hooks to CT_SUITES
2018-10-26 17:27:02 +08:00
Gilbert
0b44c1b75f
improve_test_cases
2018-10-26 17:25:31 +08:00
Gilbert
7544a21e25
Add test cases for emqx_bridge, emqx_mod_rewrite ( #1914 )
2018-10-26 14:04:33 +08:00
tigercl
873a08dc94
Improve coverage for emqx_hooks, and add test case for emqx_mod_sup ( #1892 )
...
Improve coverage for emqx_hooks, and add test case for emqx_mod_sup
2018-10-19 16:21:43 +08:00
huangdan
73658b3953
Merged emqx_misc_SUITE to emqx_misc_tests ( #1890 )
...
* Merged emqx_misc_SUITE to emqx_misc_tests
2018-10-19 09:46:25 +02:00
Gilbert
4c40f75f4b
Request & Response (broker and client) ( #1819 )
...
Add request & response support for CONNECT & CONNACK
Prior to this change, there is no validate and specified process for
Request-Response-Information and Response-Information
Also added basic Request/Response functionality to emqx_client implementation
2018-10-18 19:21:05 +02:00
spring2maz
4082f3ade2
Improve stats test
...
Before this change, the stats callback provided by emqx_broker_helper
was an anonymous function with module local context.
This commit changes it to a full fun M:F/A style callback for:
1. More robust to hot beam reload
2. Faster/smaller variable to construct
3. Easier test
2018-10-19 00:22:29 +08:00
HuangDan
cb85c5fea0
Upgrade the esockd library to v5.4.2
2018-09-29 18:59:35 +08:00
HuangDan
2a0bbd1c37
Fixed errors './cuttlefish: command not found' when running make app.config
2018-09-28 16:52:14 +08:00