diff --git a/build b/build index fd01de2f4..bc2fa4b52 100755 --- a/build +++ b/build @@ -213,37 +213,8 @@ make_elixir_rel() { ## extract previous version .tar.gz files to _build/$PROFILE/rel/emqx before making relup make_relup() { - local rel_dir="_build/$PROFILE/rel/emqx" - local name_pattern - name_pattern="${PROFILE}-$(./pkg-vsn.sh "$PROFILE" --vsn_matcher --long)" - local releases=() - mkdir -p _upgrade_base - while read -r tgzfile ; do - local base_vsn - base_vsn="$(echo "$tgzfile" | grep -oE "[0-9]+\.[0-9]+\.[0-9]+(-(alpha|beta|rc)\.[0-9])?(-[0-9a-f]{8})?" | head -1)" - ## we have to create tmp dir to untar old tgz, as `tar --skip-old-files` is not supported on all plantforms - local tmp_dir - tmp_dir="$(mktemp -d -t emqx.XXXXXXX)" - $TAR -C "$tmp_dir" -zxf "$tgzfile" - mkdir -p "${rel_dir}/releases/" - cp -npr "$tmp_dir/releases"/* "${rel_dir}/releases/" - ## There is for some reason a copy of the '$PROFILE.rel' file to releases dir, - ## the content is duplicated to releases/5.0.0/$PROFILE.rel. - ## This file seems to be useless, but yet confusing as it does not change after upgrade/downgrade - ## Hence we force delete this file. - rm -f "${rel_dir}/releases/${PROFILE}.rel" - mkdir -p "${rel_dir}/lib/" - cp -npr "$tmp_dir/lib"/* "${rel_dir}/lib/" - rm -rf "$tmp_dir" - releases+=( "$base_vsn" ) - done < <("$FIND" _upgrade_base -maxdepth 1 -name "${name_pattern}.tar.gz" -type f) - if [ ${#releases[@]} -eq 0 ]; then - log "No upgrade base found, relup ignored" - return 0 - fi - RELX_BASE_VERSIONS="$(IFS=, ; echo "${releases[*]}")" - export RELX_BASE_VERSIONS - ./rebar3 as "$PROFILE" relup --relname emqx --relvsn "${PKG_VSN}" + ./rebar3 emqx relup_gen --relup-dir=./relup + make rel -C _build/default/plugins/emqx_relup } cp_dyn_libs() { diff --git a/rebar.config.erl b/rebar.config.erl index 5e949ff5a..d01990f33 100644 --- a/rebar.config.erl +++ b/rebar.config.erl @@ -184,7 +184,7 @@ project_app_excluded("apps/" ++ AppStr, ExcludedApps) -> plugins() -> [ - %{relup_helper, {git, "https://github.com/emqx/relup_helper", {tag, "2.1.0"}}}, + {emqx_relup, {git, "https://github.com/emqx/emqx-relup.git", {branch, "main"}}}, %% emqx main project does not require port-compiler %% pin at root level for deterministic {pc, "v1.14.0"}