Commit Graph

347 Commits

Author SHA1 Message Date
Thales Macedo Garitezi 62ff6a8b30
chore(update_appup): rm unused value 2021-12-20 13:41:14 -03:00
Thales Macedo Garitezi b2396438a0
chore(update_appup): add expected versions check
For apps inside emqx umbrella, we try to bump only the patch part of
their version numbers, and use only 3-part version
numbers (`Major.Minor.Patch`).  With those assumptions, we may infer
all versions that need to be covered in a given upgrade, and check if
those are covered in regexes.
2021-12-20 13:38:08 -03:00
Thales Macedo Garitezi ce4a193cbb
chore(update_appup): rm unused fn 2021-12-20 13:21:01 -03:00
Thales Macedo Garitezi af3a1326d1
chore(update_appup): bugfix: variable not pinned in lambda 2021-12-20 13:21:01 -03:00
Thales Macedo Garitezi fef8a18bfb
chore(update_appup): insert `load_module`s after `application:stop`
If there is already any `application:stop(Application)` call in the
appup instructions, we prefer to add `load_module` instructions after
it, so we can be sure that the load is replaced safely.
2021-12-17 16:53:56 -03:00
Thales Macedo Garitezi 42ca5ab5a9
chore(update_appup): do not force appup render if contents are the same
To avoid losing comments and/or manual indentation in appup files that
are already up to date, we now check whether the contents have the
exact same terms as those we are about to write to an existint .appup
file.
2021-12-17 16:53:56 -03:00
Thales Macedo Garitezi e1e72c144a
chore(update_appup): do not use load_module if restart_application
Since the appup instruction `restart_application` already loads all
modules of a given application, there is no need to introduce those
instructions if a restart is already present.
2021-12-17 16:53:56 -03:00
Thales Macedo Garitezi 3ff6661a58
chore(update_appup): take regexes into account when comparing vsns
This change makes the `update_appup.escript` check whether the new
version of an application (the _current_ one) is already contained in
entries in the _new_ .appup file for that application if such .appup
file contains regexes.

NOTE: this does not cover the case in which we calculate the
difference between _old_ and _new_ appup entries, and those consist of
regexes.  In such case, we would need to check if one regex is
"contained" in the other, which is not currently supported by this
patch.
2021-12-17 16:53:55 -03:00
zhongwencool 2c2145dfe6 Merge branch 'main-v4.3' into sync-from-4.3 2021-12-07 23:20:01 +08:00
Thales Macedo Garitezi 93caddd448
refactor(review): factor out common functionality 2021-11-29 10:23:54 -03:00
Thales Macedo Garitezi 0932920d36
chore(appup): make update_appup.escript output only differences for
external dependencies

Currently, the update_appup.escript outputs as an error the full appup
file for external dependencies, even if all the changes are already
contained in the depency.  Here, we make it only output the missing
actions to be inserted, to aid in seeing what are the differences.
2021-11-25 15:21:25 -03:00
Thales Macedo Garitezi 29f982385d
chore(appup): remove old file extension and preserve dirname for apps 2021-11-24 15:09:25 -03:00
Thales Macedo Garitezi c950566294
chore(appup): minor fixes to update_appup.escript
- Fixes clause error on `create_stub/1`.
- Small optimization: do not download the same file multiple times
  with `wget`.
2021-11-24 14:22:51 -03:00
Zaiming (Stone) Shi 2514f474b0
Sync v4.3 to v4.4 (#6262)
* fix(http): fix duplicate http headers

* chore(appup): add appup.src

* fix(appup): fix multiply defined module in appup

* chore(appup): fix wrong version

* chore(ekka): Bump version to 0.8.1.5

* fix(update_appup): Fix warnings, add support for external repos

* build: use find command's -delete option

* ci: do not sync master branch

* build: ensure openssl11

* build: copy only libcrypto and libtinfo

* fix(trace): handler_id now always return atom

Co-authored-by: zhouzb <zhouzb@emqx.io>
Co-authored-by: k32 <10274441+k32@users.noreply.github.com>
2021-11-23 09:33:20 +08:00
k32 113cfa6422 fix(update_appup): Fix warnings, add support for external repos 2021-11-18 12:31:02 +01:00
zhanghongtong af5f93d81a build: show macos version 2021-11-17 14:43:03 +08:00
Zaiming Shi ced2429011 fix: bump new feature lib-ce apps to 4.4 2021-11-16 16:08:36 +01:00
Zaiming Shi b68f01e7e7 build: do not print 'otp' prefix for otp version 2021-11-15 23:42:19 +01:00
zhanghongtong 454f609aa6 build: emqx package name scheme include otp version 2021-11-15 10:45:27 +08:00
Zaiming Shi 6222e1b0eb Merge remote-tracking branch 'origin/main-v4.3' into sync-v4.3-to-v4.4 2021-11-08 21:01:14 +01:00
k32 7d07e8d948 chore(emqx): Update version and appup file 2021-11-08 14:24:37 +01:00
Zaiming Shi 37edb03866 build: fix elvis check and ensure newline at EOF 2021-11-04 21:07:45 +01:00
lafirest f8acb31f89 feat: add slow topics statistics plugin 2021-11-03 17:20:07 +08:00
Zaiming Shi 9832a2ed00 build: show linux distro in BUILT_ON info 2021-10-31 17:21:47 +01:00
Spycsh ec30fb346a chore: add cluster script for local machine 2021-10-28 12:07:23 +08:00
Zaiming Shi 08c2907d44 chore: skip appup file in vsn check script 2021-10-15 12:10:37 +02:00
Zaiming Shi 51bc9c83c3 fix: ignore unused var 2021-10-15 15:49:26 +08:00
k32 14aaa4affe fix(update_appup): Fix dependency check 2021-10-14 14:18:09 +02:00
k32 cb5db8059b fix(update_appup): Use a different syntax for substitution 2021-10-14 13:47:04 +02:00
k32 703f52cec7 feat(update_appup): Support binary releases (.zip) 2021-10-13 17:25:29 +02:00
k32 4643415b0b chore(appup): Update appup scripts 2021-10-12 17:45:10 +02:00
k32 668bcad4e0 fix(update_appup): Add forgotten CLI parameter 2021-10-07 09:59:32 +02:00
k32 20ee42be87 chore(update-appup): s/Pred/Prev/g 2021-10-06 23:45:52 +02:00
k32 29ad2c04da fix: Use application version instead of the release version 2021-10-06 23:45:52 +02:00
k32 ecf4d196eb feat(update_appup): Return error when missing appup.src 2021-10-06 23:45:52 +02:00
k32 89fbf5fea2 feat(update_appup): Add a warning message 2021-10-06 23:45:52 +02:00
k32 ca77749281 feat(update_appup): Add a full description of the algorithm 2021-10-06 23:45:52 +02:00
k32 6bee6279f8 feat(update_appup): Make the script more generic 2021-10-06 23:45:52 +02:00
k32 c50c72b18e fix(update_appup): Fix downgrade module loading 2021-10-06 23:45:52 +02:00
k32 f793883e35 refactor(update_appup): Minor code cleanup 2021-10-06 23:45:52 +02:00
k32 aca6367561 feat(update_appup): Create stubs 2021-10-06 23:45:52 +02:00
k32 4020db8fc1 feat(update_appup): Compare beam files 2021-10-06 23:45:52 +02:00
Zaiming Shi 1d9f5ea133 chore: force appup for emqx_dashboard app in each release 2021-10-06 22:19:05 +02:00
Turtle efa71d12fe chore(minirest): Upgrade minirest version to 0.3.7 2021-08-05 14:19:53 +08:00
Turtle a7d67eb862 fix(script): fix emqx-ee get dashboard src fail 2021-08-03 12:17:35 +08:00
tigercl fee3462603
fix(http pipelining): support to switch http pipelining (#5279) 2021-07-27 17:32:56 +08:00
Zaiming Shi 49a78c8ef2 fix(script): exclude non-edge apps in relup dependency 2021-06-23 21:30:59 +08:00
Zaiming Shi f17962e79a chore: add more info in error message 2021-06-23 19:40:12 +08:00
Turtle 98c4fff43f chore: fix inject deps notfound emqx_reloader 2021-06-23 19:03:06 +08:00
Zaiming Shi b92940af29 test(ci): add plugin list status check after relup new vsn install 2021-06-22 08:54:55 +08:00
Zaiming Shi bed45417dc chore(relup): add relup dependency injection 2021-06-22 08:54:55 +08:00
zhanghongtong 1098df815a chore(CI): fix relup error 2021-06-10 09:25:37 +08:00
Zaiming Shi 54458e3924 chore(appup): ensure emqx_app alwasy loaded in appup 2021-06-03 13:02:49 +02:00
Tobias Lindahl 981364341e chore(appup): load emqx_channel in appup
Note that the large whitespace diff on the appup file is because this
is the first time the new script for modifying appup files is used.
2021-06-03 12:22:58 +02:00
k32 4f425828d6 feat(scripts): Add an appup helper script 2021-06-02 11:50:49 +02:00
Zaiming Shi 1ab5909be3 build: use direct download link to get opensource dashboard 2021-05-27 16:18:17 +08:00
Zaiming Shi 0ac3e6e0ce build: ensure rebar3 in PATH 2021-05-27 16:18:17 +08:00
zhanghongtong f61397fe9a chore(script): update app vsn check script 2021-05-27 13:36:06 +08:00
Rory-Z 9698933f83 chore(CI): ignore changes to the etc directory when checking the app version 2021-05-14 17:35:45 +08:00
Rory-Z 0bf76adfd5 chore(CI): fix app version check 2021-05-12 10:34:54 +08:00
zhanghongtong bb490e7d6e chore(CI): add apps version check 2021-05-11 09:07:48 +08:00
JianBo He 4f6216b812 build(test): add proper checking targets for each application 2021-04-13 18:10:21 +08:00
JianBo He bd8cde3479 build(test): add emqx-ct target support 2021-04-13 18:10:21 +08:00
zhanghongtong 06b4da8269 chore(script): update find apps script, delete needless "/" 2021-04-02 17:21:09 +02:00
JianBo He f08ddec296
Add server_name_indication and verify option (#4349)
Add server_name_indication and verify option
2021-03-23 19:48:04 +08:00
Zaiming Shi 749f8ff156 chore(build): exclude broken symlinks in find-apps.sh 2021-03-23 09:26:09 +08:00
Zaiming Shi dc510fb572 chore(build): Upgrade to elvis 1.0.0-emqx-2
This version ensures spaces around '|' and '||'
2021-03-22 21:15:16 +01:00
Zaiming Shi 507a6ee1c0 docs(lib-extra/README): Add more details on how to run the code 2021-03-22 14:53:32 +01:00
Zaiming Shi 45dfc8a2fa chore(test): make app-ct run easier 2021-03-20 11:20:48 +01:00
Zaiming Shi 2c0c69142d chore(script): Delete CRLF from jq print-outs 2021-03-15 08:04:39 +01:00
Zaiming Shi 0fead391d2 chore(script): no -r option for rm command when delete a file 2021-03-15 08:04:39 +01:00
zhanghongtong c5f0194af7 chore(CI): fix build error on windows 2021-03-15 07:31:53 +01:00
turtleDeng d54410e560
chore(script): split-config optimize include position (#4322) 2021-03-12 14:21:20 +01:00
Zaiming Shi 4373367c15 chore(script): Add a script to split emqx.conf 2021-03-10 17:39:45 +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
zhanghongtong 059d9fcaeb build(dashboard): get dashboard script support enterprise 2021-03-04 19:50:10 +08:00
zhanghongtong f0d42bc6f5 build(CI): fix build error on windows in github actions 2021-03-03 19:48:34 +08:00
Zaiming Shi bd3bd906ca
Merge pull request #4272 from zmstone/chore-build-remove-env-var-for-ce-ee
chore(build): use only mark file to tell apart ce ee
2021-03-03 11:13:33 +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 e3407b9556 chore(build): fix rebar dependency and add a script to ensure integrity 2021-03-02 20:30:55 +01:00
Zaiming Shi 6c21a9473a chore(build): Fail fast on old version OTP 2021-03-01 19:48:27 +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 82d14df3e7 Merge remote-tracking branch 'origin/master' into dev/v4.3.0 2021-02-23 14:27:54 +01:00
Zaiming Shi 6f736a79b7 chore(script): Allow compare base to be a commit sha1 hash 2021-02-11 16:44:12 +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 64e7056f3f chore(script): Add a help script to test clustering with docker 2021-01-29 15:30:32 +08:00
Zaiming Shi ed25c62fed chore(elvis): Add usage print 2021-01-21 21:05:56 +01:00
Zaiming Shi ca32ac310f chore(style): make elvis happy 2021-01-21 21:05:56 +01:00
zhanghongtong 3ef08f9ce3 test(meck): add meck unload after meck load 2020-12-22 13:39:49 +08:00
Zaiming Shi fe675905a6 chore(elvis): Skip deleted files and non .erl files 2020-12-19 08:01:40 +01:00
Zaiming Shi 824cf26185 chore(elvis): Move elvis-check.sh to scripts dir 2020-12-19 08:01:40 +01:00
terry-xiaoyu 7bea9920b5 feature(project): point header to emqx_libs 2020-10-31 11:00:12 +08:00
Feng Lee c4faeab45a Move test/run_emqx.escript -> scripts/run_emqx.escript 2019-08-03 14:08:20 +08:00
Feng Lee 721d48857d scripts 2015-04-24 15:44:27 +08:00
Feng Lee f3057c08e4 0.3.0 changes 2015-01-18 12:57:33 +08:00