Merge pull request #7821 from terry-xiaoyu/update_ensure_rebar3

chore: port ensure-rebar3.sh from 4.x
This commit is contained in:
Xinyu Liu 2022-04-29 10:21:48 +08:00 committed by GitHub
commit 635486bbaf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 21 additions and 6 deletions

View File

@ -36,7 +36,7 @@ jobs:
with:
fetch-depth: 0
- name: ensure rebar
run: ./scripts/ensure-rebar3.sh 3.16.1-emqx-1
run: ./scripts/ensure-rebar3.sh
- name: check applications
run: ./scripts/check-elixir-applications.exs
- name: check applications started with emqx_machine

View File

@ -13,7 +13,7 @@ jobs:
- name: Checkout
uses: actions/checkout@v2.4.0
- name: ensure rebar
run: ./scripts/ensure-rebar3.sh 3.16.1-emqx-1
run: ./scripts/ensure-rebar3.sh
- name: setup mix
run: |
mix local.hex --force

View File

@ -1,5 +1,4 @@
$(shell $(CURDIR)/scripts/git-hooks-init.sh)
REBAR_VERSION = 3.16.1-emqx-1
REBAR = $(CURDIR)/rebar3
BUILD = $(CURDIR)/build
SCRIPTS = $(CURDIR)/scripts
@ -36,7 +35,7 @@ all: $(REBAR) $(PROFILES)
.PHONY: ensure-rebar3
ensure-rebar3:
@$(SCRIPTS)/ensure-rebar3.sh $(REBAR_VERSION)
@$(SCRIPTS)/ensure-rebar3.sh
.PHONY: ensure-hex
ensure-hex:

View File

@ -2,7 +2,22 @@
set -euo pipefail
VERSION="$1"
## rebar3 tag 3.18.0-emqx-1 is compiled using otp24.1.5.
## we have to use an otp24-compiled rebar3 because the defination of record #application{}
## in systools.hrl is changed in otp24.
OTP_VSN="${OTP_VSN:-$(./scripts/get-otp-vsn.sh)}"
case ${OTP_VSN} in
23*)
VERSION="3.16.1-emqx-1"
;;
24*)
VERSION="3.18.0-emqx-1"
;;
*)
echo "Unsupporetd Erlang/OTP version $OTP_VSN"
exit 1
;;
esac
# ensure dir
cd -P -- "$(dirname -- "${BASH_SOURCE[0]}")/.."
@ -10,7 +25,8 @@ cd -P -- "$(dirname -- "${BASH_SOURCE[0]}")/.."
DOWNLOAD_URL='https://github.com/emqx/rebar3/releases/download'
download() {
curl --silent --show-error -f -L "${DOWNLOAD_URL}/${VERSION}/rebar3" -o ./rebar3
echo "downloading rebar3 ${VERSION}"
curl -f -L "${DOWNLOAD_URL}/${VERSION}/rebar3" -o ./rebar3
}
# get the version number from the second line of the escript