Commit Graph

143 Commits

Author SHA1 Message Date
Ivan Dyachkov
fb244464d7 feat: release windows binaries as zip 2023-02-21 08:38:20 +01:00
Ivan Dyachkov
739455d844 ci: test docker images and packages in the same way 2023-02-17 17:42:46 +01:00
Ivan Dyachkov
b90d371836 ci: export docker image in build-slim-packages 2023-02-17 16:43:49 +01:00
Ivan Dyachkov
202f6d0181 ci: stop building alpine docker image 2023-02-09 14:19:35 +01:00
Zaiming (Stone) Shi
2416aeebc7 build: allow user-specified image tag for make docker build 2023-01-24 20:35:02 +01:00
Zaiming (Stone) Shi
b80325f988 build: delete rebar.lock before making rebar release 2023-01-09 14:06:08 +01:00
Ivan Dyachkov
eaf2a0bdfd chore: fail build if apple notarization failed 2022-12-17 12:00:07 +01:00
Zaiming (Stone) Shi
09455edae8 Merge tag 'v5.0.10' into dev/ee5.0 2022-11-16 16:20:30 +01:00
Thales Macedo Garitezi
4e2aba33aa feat(mix): set snk_kind from $kind to msg in Mix build
Log before:

```
2022-09-26T15:51:30.982183-03:00 [warning] '$kind': last_will_testament_publish_denied, clientid: myclient, line: 2132, mfa: emqx_channel:publish_will_msg/2, peername: 127.0.0.1:35228, topic: $SYS/lwt
```

Log after:

```
2022-09-26T16:25:50.799914-03:00 [warning] clientid: myclient, line: 2132, mfa: emqx_channel:publish_will_msg/2, msg: last_will_testament_publish_denied, peername: 127.0.0.1:47080, topic: $SYS/lwt
```
2022-09-26 16:26:16 -03:00
Shawn
4135910b42 chore: merge master into dev/ee5.0 2022-09-26 09:52:33 +08:00
Ivan Dyachkov
501667dc1f chore: skip signing macos binaries when dev cert of pw are not set 2022-09-15 10:27:09 +02:00
Zaiming (Stone) Shi
4534966e36 Merge remote-tracking branch 'origin/master' into dev/ee5.0 2022-09-13 12:16:54 +02:00
Ivan Dyachkov
7cfca31aaf build: sign binary files in macos package 2022-09-12 21:50:00 +02:00
Thales Macedo Garitezi
7898867c68 chore(mix): guard enterprise-only dependencies
Avoid downloading enterprise-only dependencies in community edition.
2022-09-08 14:56:03 -03:00
Zaiming (Stone) Shi
85cb552e53 chore: ensure no 'find' command error
the _upgrade_base dir must exist
2022-09-06 18:58:35 +02:00
Xinyu Liu
84a8f8b218
Merge branch 'dev/ee5.0' into copy-of-master 2022-08-15 21:46:42 +08:00
Zaiming (Stone) Shi
f7d3f13dab build: fix profile check in build script 2022-08-15 09:08:59 +02:00
Shawn
b3162fe5ff fix: conflicts between master and ee5.0 2022-08-14 22:24:09 +08:00
Zaiming (Stone) Shi
c93829c784 build: pass build profile as environment variable 2022-08-13 19:09:41 +02:00
Zaiming (Stone) Shi
fbb97b16be ci: test all apps with dual profile
no need to test emqx-enterprise profile if the
EMQX_RELEASE_EDITION compilation flag is not used though
2022-08-12 16:21:22 +02:00
Zaiming (Stone) Shi
c82a05a0e7 refactor(Makefile): support download enterprise dashboard download 2022-08-12 14:36:31 +02:00
JimMoen
10b19acd35 chore: module and fun call rename 2022-08-02 16:59:56 +08:00
ieQu1
5a7d0fff88 fix(windows): Build without rocksdb on windows 2022-07-27 17:04:34 +02:00
Zaiming (Stone) Shi
73f49ca6e5 refactor: move inject-relup.escript to a sub-dir 2022-07-01 07:43:03 +02:00
Zhongwen Deng
92019e4d4c chore: don't copy i18n.conf 2022-07-01 09:33:35 +08:00
Zaiming (Stone) Shi
b467e11b2e fix(appup): fixed appup and version check scripts for 5.0 2022-06-20 22:20:31 +02:00
Zaiming (Stone) Shi
c76d5c0181 build(mix): copy generated docs to release 2022-06-12 21:18:00 +02:00
Zaiming (Stone) Shi
265c3303d9 build: build docs in a separate step
prior to this commit, docs are built as a rebar3 post-compile hook
and the docs are generted directy into the _build dir.

the advanage was: so there is no need for a separate step to
build docs.
however this giving makeing Elixir build a hard time.

With this change, the steps are moved to build script
* compile
* make_docs
* assemble release
2022-06-12 19:16:46 +02:00
Rory Z
d5704c2c48 build(docker): change docker base image to debian, and add new tag for alpine image 2022-06-07 06:15:15 +02:00
Zaiming (Stone) Shi
1492fa72ec build: use /usr/bin/tar in windows build 2022-05-28 11:57:28 +02:00
Zaiming (Stone) Shi
ebe4d7c3fb refactor: stop releasing edge edition
Prior to EMQX 5.0, the edge edition's main difference comaring
to standard edition are:
* Less number of plugins in the release (smaller package size)
* Smaller number is vm.args (for lower memory usage)

Starting from 5.0 most of the plugins are included as features,
the tuned vm.args arguments does not justify a special release edition.

Also as nanomq is getting mature,
EMQ's recommendtation for MQTT broker in edge is https://nanomq.io/
2022-05-26 20:05:46 +02:00
Shawn
3d7cab4288 fix: porting emqx_relup.erl from 4.4 2022-05-25 12:37:03 +08:00
Shawn
40ad23ee74 fix(relup): create tmp dir to preserve current files 2022-05-25 11:12:13 +08:00
Shawn
eea9bd90b4 fix: remove the extra level of 'emqx' dir from .tar.gz 2022-05-25 02:00:01 +08:00
Zaiming (Stone) Shi
ce902b5405 refactor(bin/emqx): speed up boot
The main slow-down is the overheads of booting up beam with the
'start_clean' boot file (which loads all modules).

Prior to this change, beam is started multiple times in order to
resolve configuration values.

After this change:
* For boot commands such as 'start', 'console' and
  'foreground', it starts beam twice:
  - 1st is to check platform compatibility
  - 2nd is to resolve all configs required for boot in a batch
* For non-boot commands, such as 'ctl' and 'ping', it does not
  require to start beam for config resolution at all
2022-04-22 11:35:50 +02:00
Zhongwen Deng
700c2cfb39 feat: move *i18n.conf from etc to i18n dir 2022-04-15 10:43:37 +08:00
Zaiming (Stone) Shi
822a4f9f73 feat: parameterise EMQX_ETC_DIR
both at build time and at runtime
2022-04-05 16:36:13 +02:00
ieQu1
fff6bffa0c docs(schema): Add descriptions of the records 2022-03-29 14:09:32 +02:00
ieQu1
aecfa77985 chore(hocon): Bump version 2022-03-29 14:09:32 +02:00
Zaiming (Stone) Shi
b49df4599a build: use latest builder images (alpine 3.15.1)
OpenSSL-1.1.1n
2022-03-25 07:38:39 +01:00
Zaiming (Stone) Shi
4e64010a3b build: more structured build info 2022-03-02 21:22:03 +01:00
Thales Macedo Garitezi
c9058121a1
chore: add gpb check to elixir build 2022-03-02 14:57:39 -03:00
Zaiming (Stone) Shi
d029a73b99 refactor: make release edition static info at compile time 2022-02-28 16:37:47 +01:00
Zaiming (Stone) Shi
b68cb96bd2 refactor: make pkg-vsn.sh able to report both short and long version 2022-02-26 01:38:10 +01:00
Zaiming (Stone) Shi
2d3859a79a build: get full version from pkg-full-vsn.sh
this is due to the mapping of :
centos7 -> el7
and rockylinux8 -> el8

with this fix, there is no need to repeat such mapping
in many differennt places
2022-02-25 11:33:01 +01:00
Zaiming (Stone) Shi
fa91c7491f build: rockylinux 2022-02-25 09:09:30 +01:00
Zaiming (Stone) Shi
a4e48b197c build: create sha256 sum right after package is built 2022-02-22 22:33:33 +01:00
zhanghongtong
093e7c3282 build(relup): add new script for download relup base packages 2022-02-16 18:23:02 +01:00
Zaiming (Stone) Shi
2e94880bb6 docs: More EMQ X -> EMQX rename in descriptive strings 2022-02-15 22:39:11 +01:00
Thales Macedo Garitezi
9021b7e9b8
fix(mix): set enterprise compile flag 2022-02-04 14:17:53 -03:00
Thales Macedo Garitezi
88ae489219
fix(mix): set emqx_vsn compile info
Currently, `emqx_release.erl` depends on the `erl_opts` option
`compile_info` being set by Rebar3 to include `{emqx_vsn, $PKG_VSN}`
to report the version, for instance, in `emqx ctl status`.

Since Mix does not provide a simple way to pass `erl_opts` to Rebar3
dependencies without creating a `mix.exs` file, the workaround is to
set the environment variable `ERL_COMPILER_OPTIONS` to include that
value before invoking the Erlang compiler on the Rebar3 dependencies.
2022-02-03 17:31:47 -03:00
William Yang
5c36143186 ci: remove centos8 support
due to centos8 EOL
2022-02-01 15:22:41 +01:00
Zaiming (Stone) Shi
507952c473 feat: dump schema json file to dashbarod static dir 2022-01-31 16:38:41 +01:00
Thales Macedo Garitezi
a597e92576
chore(mix): use MIX_ENV to define build profile and edition 2022-01-28 17:24:35 -03:00
Thales Macedo Garitezi
9c68f4bd11
fix(tgz): replace zip with tgz after rebase 2022-01-26 16:59:49 -03:00
Thales Macedo Garitezi
59f0d5f537
chore(mix): use flag instead of elixirpkg to denote package type
Also, add Makefile target to build zip files with Elixir.
2022-01-26 16:59:49 -03:00
Thales Macedo Garitezi
ba6d4e4a19
fix(ci): raspbian arch is arm, not arm64 2022-01-26 16:59:49 -03:00
Thales Macedo Garitezi
6dd11665bb
ci(mix): build emqx packages with elixir 2022-01-26 16:59:48 -03:00
Zaiming (Stone) Shi
f3fe3db771 build: fix shellcheck 2022-01-26 14:25:59 +01:00
Zaiming (Stone) Shi
391e480824 build: parameterise package version
so that community and enterprise edition can be built from the
same branch
2022-01-26 14:25:59 +01:00
Zaiming (Stone) Shi
dcb7977338 feat: show config doc in dashboard 2022-01-14 11:56:10 +01:00
Zaiming (Stone) Shi
638a9d1af7 build: change to build .tar.gz instead of zip 2022-01-13 18:54:01 +01:00
Zaiming (Stone) Shi
3643a55c10 build: copy libatomic 2022-01-13 13:20:01 +01:00
Zaiming (Stone) Shi
b2684b995d build: doc for win 2022-01-10 12:30:01 +01:00
Zaiming (Stone) Shi
68eb13d478 fix: portable shebang 2021-12-27 15:45:12 +01:00
Zaiming (Stone) Shi
a1ad6098b3 build: generate document to dashboard priv dir 2021-12-06 08:52:10 +01:00
Zaiming (Stone) Shi
bfc36efa0e fix: pin hocon 0.21.1 2021-12-06 08:00:37 +01:00
Zaiming (Stone) Shi
682b672b87 build: rebar3 no need to release before tar 2021-11-30 17:57:58 +01:00
Zaiming Shi
e2d7ff2b0f build: rename emqx-ee to emqx-enterprise 2021-11-29 14:53:47 +01:00
Zaiming Shi
79d9f55dd6 build: copy only libcrypto and libtinfo 2021-11-22 15:46:38 +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
fdc4bb06d3 build: copy dynamic libs for zip package 2021-11-08 17:16:05 +01:00
zhanghongtong
f817ba0075 chore(CI): rename image 2021-10-22 13:40:01 +08:00
zhanghongtong
ece97aa679 chore(CI): fix build docker error 2021-10-22 13:40:01 +08:00
zhanghongtong
b2d80125b6 build(docker): use ghcr image for build docker 2021-10-22 13:40:01 +08:00
zhongwencool
d784e63b9f
emqx_conf (#5939)
* feat(emqx_conf): move conf manager for emqx_machine to emqx_conf

* chore(emqx_conf): change emqx:get_config/2 to emqx_conf:get/2

* fix: common test failed

* fix: badmatch by typo wrong key

* fix(emqx_conf): get the wrong core nodes

* fix(emqx_conf): get core node's tnx_id not latest tnx_id

* fix: add ro_transation when copy conf file

* fix: delete debug info

* fix: change ekka_rlog to mria_rlog

* fix: remove cluster_rpc from emqx_machine.

* fix: don't call ekka:start/0 explicitly

* fix: ekka should be start in emqx_machine
2021-10-21 18:08:51 +08:00
zhanghongtong
f091858a27 chore(CI): add macos 11 for build workflows
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-09-26 12:33:59 +08:00
Zaiming Shi
9430f70dd8 chore(build): directly generate doc from build script 2021-09-10 07:28:12 +02:00
Zaiming Shi
cca3a4414f fix(bin/emqx): do not try to find vm.args file for cold_eval 2021-09-10 07:28:12 +02:00
Zaiming Shi
01166a8bfb feat(schema): generate document when building the release 2021-09-10 07:27:02 +02:00
Zaiming Shi
5602cfc223 chore(build): ensure no gpb in release 2021-09-08 21:04:56 +02:00
zhanghongtong
41f2b77ec3 chore(CI): update workflows
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-24 15:04:27 +08:00
zhanghongtong
b69059d442 build: easier build docker
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-04 09:31:02 +08:00
Zaiming Shi
5be3288cff fix(build): fix relup base version grep pattern 2021-07-26 09:11:48 +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
zhanghongtong
934d3c405d chore(CI): update build workflows 2021-05-08 13:57:02 +08:00
Zaiming Shi
1ddcffa32d build: zip for macos
previsouly zip was built before pkg (as makefile dependency)
since pkg's only depend on rebar3 release tarball (not .zip)
makefile was updated but forgot to update the pkg build for macos
2021-05-07 22:40:25 +02:00
zhanghongtong
6595d53962 build(relup): update build script for support relup 2021-05-07 21:25:10 +02:00
Zaiming Shi
396cae26fe build: fix build order of release and relup 2021-05-07 17:58:32 +08:00
zhanghongtong
622edcd536 chore(CI): rename arch package name 2021-03-23 19:49:54 +08:00
Zaiming Shi
73500a0983 chore(build): inject product description from makefile 2021-03-06 08:41:50 +01: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
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