From cafa5479962debe45cb3c10e8ed45a25ccaf7049 Mon Sep 17 00:00:00 2001 From: Zaiming Shi Date: Mon, 30 Nov 2020 19:48:31 +0100 Subject: [PATCH] refactor(build): Get rebar3 version from escript header comments The command rebar3 --version loads rebar config and prints logs --- ensure-rebar3.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ensure-rebar3.sh b/ensure-rebar3.sh index 626dd1bc1..0d77be44a 100755 --- a/ensure-rebar3.sh +++ b/ensure-rebar3.sh @@ -5,12 +5,16 @@ set -euo pipefail VERSION="$1" DOWNLOAD_URL='https://github.com/emqx/rebar3/releases/download' + download() { curl -L "${DOWNLOAD_URL}/${VERSION}/rebar3" -o ./rebar3 } +# get the version number from the second line of the escript +# because command `rebar3 -v` tries to load rebar.config +# which is slow and may print some logs version() { - ./rebar3 -v | grep -v '===' | grep 'rebar.*Erlang' | awk '{print $2}' + head -n 2 ./rebar3 | tail -n 1 | tr ' ' '\n' | grep -E '^.+-emqx-.+' } if [ -f 'rebar3' ] && [ "$(version)" == "$VERSION" ]; then