Zaiming Shi
5f064a8e42
chore(test): enable cover only when necessary
...
So that ad-hoc ./rebar3 eunit and ct can run faster
2021-03-11 19:06:03 +01:00
Zaiming Shi
e1979bf488
chore(build): Single source of EMQX_DESCRIPTION
2021-03-09 20:22:48 +01:00
Zaiming Shi
7eb6588cc9
Chore build update rebar3 version ( #4303 )
...
* chore(Makefile): Delete unnecessary exports for deps-get
* chore(rebar3): upgrade to rebar3 version 3.14.3-emqx-5
This rebar3 version does not copy .git directory.
Before this, if a plugin repo clone is placed in lib-extra,
rebar2 ct or eunit commnad may fail at source code copy step.
2021-03-09 08:50:24 +08:00
Zaiming Shi
b7bde35b51
chore(Makefile): delete .o .d files when make clean
2021-03-08 11:35:15 +01:00
Zaiming Shi
625755ea33
chore(Makefile): refine 'make clean'
2021-03-07 09:49:11 +01:00
Zaiming Shi
73500a0983
chore(build): inject product description from makefile
2021-03-06 08:41:50 +01:00
Zaiming Shi
3e3c06118c
chore(build): Ensure git hooks from Makefile
2021-03-06 08:41:50 +01:00
Zaiming Shi
609b015f93
chore(build): Use different env variable for dashboard version
2021-03-05 10:51:50 +01:00
Zaiming Shi
cd0890796d
chore(build): use only mark file to tell apart ce ee
2021-03-02 23:38:10 +01:00
Zaiming Shi
b166ee5651
Merge pull request #4254 from zmstone/chore-build-fail-fast-if-otp-is-too-old
...
chore(build): Fail fast on old version OTP
2021-03-01 20:28:56 +01:00
Zaiming Shi
6c21a9473a
chore(build): Fail fast on old version OTP
2021-03-01 19:48:27 +01:00
Zaiming Shi
11ad9caeda
chore(dashboard): Pin dashboard frontend tag v4.3.0-beta.1
2021-03-01 16:34:37 +01:00
Zaiming Shi
30293b602a
chore(build): move rebar3 download script to scripts dir
2021-03-01 21:00:17 +08:00
Zaiming Shi
534b6c0062
chore(scripts): get-dashboard.sh accepts URL as arg
...
Also move it to scripts dir
2021-03-01 21:00:17 +08:00
Zaiming Shi
7afeadd6fc
chore(ci): run eunit test in github action
2021-02-26 20:50:07 +01:00
Zaiming Shi
e7785a63ee
fix(scripts): update scripts to work with new lib-opensource dir
2021-02-11 17:22:20 +01:00
JianBo He
045bc02ec9
test(ci): add proptests chekcing to the makefile
2021-02-04 14:22:17 +08:00
JianBo He
52c747ca6b
chore(cover): add coverall back
2021-02-04 14:22:17 +08:00
zhanghongtong
ca1e78677e
chore(dashboard): delete static files
...
delete static files of dashboard and download them during build
2021-01-05 17:22:19 +08:00
Shawn
1887dfa8a4
fix(test): set node name to 'test@127.0.0.1' when run ct
2020-12-28 16:02:04 +08:00
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