Commit Graph

276 Commits

Author SHA1 Message Date
Zaiming Shi 562ce1a81b feat: bin/emqx pass down DEBUG if su exec 2021-08-08 11:14:20 +02:00
Zaiming Shi bc23ff5e47 feat: add graceful shutdown
prior to this cahnge emqx node shutdown is done by init:stop
which might have undesired stop order of the applications

in this change, emqx_machine_terminator is added to stop apps
in defined order and then terminate the node in infinite loop
2021-08-05 14:11:58 +02:00
Zaiming Shi 522d8e0a4a refactor(config): split config and schema 2021-08-04 08:36:10 +02:00
Zaiming (Stone) Shi 3d0cb11682
Merge pull request #5374 from zmstone/chore-delete-emqx-name-and-emqx-host-env-var
chore: delete EMQX_NAME and EMQX_HOST env variables
2021-08-03 17:08:50 +02:00
Zaiming Shi 2fd0742d2b refactor(emqx_ctl): simplify emqx_ctl 2021-08-02 20:35:24 +02:00
Zaiming Shi 8d687e50fd chore: delete EMQX_NAME and EMQX_HOST env variables 2021-07-31 12:02:38 +02:00
Zaiming (Stone) Shi cb2909dfbf
Merge pull request #5369 from zmstone/fix-boot-log
fix(bin/emqx): fix boot log
2021-07-31 08:53:15 +02:00
Zaiming Shi 2e3c98dd55 fix(bin/emqx): fix boot log
prior to this fix the logger message (syslog) has the name and pid
missing.
with this change, the programe name, and its boot command is logged
to syslog, so the console boot is cleaner
2021-07-31 00:29:53 +02:00
Zaiming Shi d68589e0cb feat(boot): make possible to boot on short name 2021-07-27 22:16:10 +02:00
Zaiming Shi 02206dd428 fix(bin/emqx): delete stale todo 2021-07-27 20:33:29 +02:00
Shawn f8f7493352 fix(test): set RETRY_INTERVAL and MAX_TOPIC_ALIAS for paho test 2021-07-17 17:36:01 +08:00
Shawn 4d279e47d8 chore(merge): merge code from master 2021-07-17 01:20:57 +08:00
William Yang 3a7d0c3e84 fix(script): emqx die if call_hocon failed 2021-07-16 23:16:51 +08:00
Shawn 8e32d5314d
Merge branch 'master' into emqx_config 2021-07-14 09:33:58 +08:00
zhanghongtong 54c776ebdf fix(emqx-edge): fix sed error when emqx-edge start 2021-07-12 14:22:47 +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 0ac2492b36 fix(config): read app env 'config_files' to get the path to emqx.conf 2021-07-08 19:27:36 +08:00
Shawn db38137d5c feat(config): apply new config struct to emqx_alarm 2021-07-01 15:00:59 +08:00
Shawn d2c50baf93 fix(config): set console_handler.enable to turewhen start from console 2021-06-30 19:24:37 +08:00
Zaiming Shi 2919623563 chore(bin/emqx): print env override when generating config 2021-06-18 09:02:25 +08:00
Zaiming Shi 6edfb9a6c5 fix(nodetool): add_pathz -> add_patha 2021-06-15 14:48:09 +02:00
Zaiming Shi c3bbe2c6b6 refactor(bin/emqx): invoke hocon_cli from nodetool
nodetool has all lib paths set up correctly by reading the
persisted RELEASES file

calling hocon escript directly has two problems:
1. it may not be able to find the beams compiled
2. if we use ERL_LIBS, it may find the version after hot beam upgrade
2021-06-15 14:12:34 +02:00
Zaiming Shi 855705d830 chore(emqx_ctl): delete stale env variable 2021-06-15 12:35:08 +02:00
Zaiming Shi 49f844b1dd feat(bin/emqx): simlified config generation commands 2021-06-15 12:35:08 +02:00
Zaiming (Stone) Shi 65a660aaea
Merge pull request #4903 from emqx/resolve-master-dev/v5.0-conflict-release-version
Auto-pull-request-on-2021-05-31
2021-06-05 15:31:21 +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
Turtle 99c22eb2a8 fix(relup): fix relup badfun 2021-06-05 13:56:27 +08:00
z8674558 9c6276a654 chore(bin/emqx): support license conf option 2021-06-04 22:10:16 +09:00
z8674558 b4eb0c4df6 chore(bin/emqx): use hocon get 2021-06-03 17:03:08 +09:00
z8674558 47f7b35a60 chore(bin/emqx): add todo on hocon 2021-06-01 17:06:09 +09:00
Zaiming Shi 5546d24b6d refactor: always use hocon to generate config
previously we supports skipping config generation if USE_CUTTLEFISH
not set to true.
it has never been tested (at least not in automated tests)
now it's time to drop it.
2021-06-01 17:06:09 +09:00
z8674558 4b174b0277 feat(conf): use hocon schema 2021-06-01 17:05:52 +09:00
Zaiming Shi d4dcf94da6 fix(emqx.cmd): windows boot 2021-05-18 20:30:48 +08:00
Zaiming Shi a1162249b5 fix(nodetool): find release in releases 2021-05-13 22:57:44 +02:00
Zaiming Shi 53291ac3ff fix(nodetool): add path from RELEASES file 2021-05-13 21:59:08 +08:00
Zaiming Shi 873459a07f fix(emqx_ctl): ensure env variables are exported 2021-05-11 14:25:46 +02:00
Zaiming Shi 3aba50605a chore(nodetool): ensure correct lib dirs
Prioro to this change, ekka lib dir was added by inspecting
the ekka lib version in persisted RELEASES file.
However, this file may not be the true version if a hot
upgrade failed in the middle.
In this fix, it reads the per-version emqx.rel file
content to load lib paths.
2021-05-10 12:04:22 +02:00
k32 eb0488828b fix(node_dump): Remove bashisms from node_dump script 2021-05-06 14:19:09 +02:00
k32 cb3dce598c feat(node_dump): Add an option to set max log file age 2021-05-06 14:19:09 +02:00
k32 5302459a36 fix(node_dump): Please shellcheck 2021-05-06 14:19:09 +02:00
k32 f3083601ff fix(node_dump): Avoid collecting old log files 2021-05-06 14:19:09 +02:00
k32 1db8483bb3 feat(node_dump): Hide `secret' configuration keys
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2021-05-06 14:19:09 +02:00
k32 e6c85dfb04 fix(node_dump): Attempt to censor passwords 2021-05-06 14:19:09 +02:00
k32 d913a7d20d feat(node_dump): Create a node dump script 2021-05-06 14:19:09 +02:00
Zaiming Shi 2a9a5e74d7 fix(bin/emqx): print cuttlefish error 2021-04-10 08:48:13 +00:00
Yudai Kiyofuji e3a5f65c88
feat(config): print override env (#4517) 2021-04-09 16:28:01 +02:00
Zaiming Shi a8a9bda484 chore(bin/emqx): Fix typo 2021-04-02 15:53:19 +08:00
z8674558 299d489ef9 refactor(bin/emqx): use cuttlefish `get` to get values from .conf 2021-04-02 08:42:58 +02:00
Zaiming Shi d4c6b6b926 chore(scripts): ensure no space in cookie 2021-03-29 09:40:10 +02:00
Zaiming Shi a898f6be1e chore(scripts): boot commands also need node name and cookie 2021-03-24 16:21:15 +01:00
Zaiming Shi 6476a5ea92 fix(script): nodetool use remsh prefixed node name 2021-03-24 16:21:15 +01:00
Zaiming Shi 4ee0dbdea4 fix(scripts): Finds node name and cookie from vm.args
For node name and cookie overriden from environment variable
the only way to find it from another shell is to inspect
the vm.args file.

For node boot commands, the vm.args file may not have been created
yet, so we need to inspect node name in emqx.conf
2021-03-24 16:21:15 +01:00
zhanghongtong b732d87da9 chore(script): delete emqx_env 2021-03-23 23:08:56 +08:00
zhanghongtong 106b738a89 chore(script): make emqx work with docker entrypoint 2021-03-23 23:08:56 +08:00
Zaiming Shi 78afdd8b57 chore(script): make emqx_ctl work with docker entrypoint 2021-03-23 22:44:37 +08:00
Zaiming Shi 09c4f6eef0 chore(boot): Do not ps -ef inspect node name
In case there are multiple nodes running
the current code (before this commit) will fail

If we choose to fix, it may stop the wrong node
2021-03-23 14:48:03 +01:00
Zaiming Shi 178404c821 chore(build): add rebar_mix plugin 2021-03-19 12:22:43 +01:00
Zaiming Shi 96bd561790 feat(windows): Support environment variable override for windows 2021-03-16 11:26:17 +01:00
Zaiming Shi b629a6c58c chore(scripts): fix typo for var names 2021-03-09 20:22:48 +01:00
turtleDeng 115397523d
chore(build): add more enterprise build support (#4302) 2021-03-08 20:47:31 +08:00
Zaiming Shi 5d71e51985 fix(config): Do not allow customizing cuttlefish env override prefix
We have quite a few EMQX_ prefixed variables used in bash scripts
having to meta-programming bash is not quite readable
2021-03-02 15:29:44 +01:00
Zaiming Shi fc03d7aea9 fix(config): use config value default log.to for daemon mode 2021-03-02 15:28:13 +01:00
Zaiming Shi 6b2949e2c1 chore(config): Change default log_to config
By default log to file.
When start from console or forgreground, only log to console.
Only log to file for package builds.
2021-03-02 14:05:04 +01:00
Zaiming Shi 7bf5bb26e7 fix(scripts): Ensure ekka in ERL_LIBS for remote nodes 2021-03-02 18:55:55 +08:00
Zaiming Shi 98b319a0c0
Merge pull request #4190 from zmstone/refactor-assing-names-to-listeners
feat(listeners): Add identifier to listeners
2021-02-19 07:50:27 +01:00
Zaiming Shi 64cfaf4385 improve(print): io:format error message without indentation
Avoid squeezing lines to the right.
2021-02-19 07:45:37 +01:00
z8674558 74b7ea34d9 feat(bin): let cuttlefish read env var 2021-02-19 01:09:06 +09:00
Yudai Kiyofuji aadd1ba11a
add shellcheck to ci (#4126)
* chore(shell): disable some shellcheck

* refactor(shell): fix shellcheck

* test(ci): add shellcheck
2021-02-04 16:51:48 +09:00
Zaiming Shi d13a33463f chore(bin/emqx): set program name 2021-01-29 09:42:35 +08:00
Zaiming Shi cf23d9efe9 chore(bin/emqx): Do not rely on beam.smp program name 2021-01-29 09:42:35 +08:00
Zaiming Shi cbc07d9937 fix(bin/emqx): Fix the boot file path for start_clean 2021-01-15 09:31:01 +01:00
Zaiming Shi 084ce97d41 fix(rel): rel_vsn renamed to release_version 2020-12-08 22:28:46 +01:00
terry-xiaoyu 151d820058 feature(project): change to rebar3 umbrella project 2020-10-31 11:07:25 +08:00
Ery Lee 1e02cd1363 rm bin and fix README 2012-12-26 14:44:19 +08:00
erylee 425bc2157e add auth support 2012-12-22 16:42:32 +08:00
erylee efc1d9f424 add bin/ and some files 2012-12-21 17:33:21 +08:00