build: fix build order of release and relup
This commit is contained in:
parent
88df1713b1
commit
396cae26fe
31
Makefile
31
Makefile
|
@ -111,30 +111,33 @@ xref: $(REBAR)
|
||||||
dialyzer: $(REBAR)
|
dialyzer: $(REBAR)
|
||||||
@$(REBAR) as check dialyzer
|
@$(REBAR) as check dialyzer
|
||||||
|
|
||||||
.PHONY: $(REL_PROFILES:%=relup-%)
|
## rel target is to create release package without relup
|
||||||
$(REL_PROFILES:%=relup-%): $(REBAR)
|
.PHONY: $(REL_PROFILES:%=%-rel) $(PKG_PROFILES:%=%-rel)
|
||||||
ifneq ($(OS),Windows_NT)
|
$(REL_PROFILES:%=%-rel) $(PKG_PROFILES:%=%-rel): $(REBAR) get-dashboard $(CONF_SEGS)
|
||||||
@$(BUILD) $(@:relup-%=%) relup
|
@$(BUILD) $(subst -rel,,$(@)) rel
|
||||||
endif
|
|
||||||
|
|
||||||
.PHONY: $(REL_PROFILES:%=%-tar) $(PKG_PROFILES:%=%-tar)
|
## relup target is to create relup instructions
|
||||||
$(REL_PROFILES:%=%-tar) $(PKG_PROFILES:%=%-tar): $(REBAR) get-dashboard $(CONF_SEGS)
|
.PHONY: $(REL_PROFILES:%=%-relup)
|
||||||
@$(BUILD) $(subst -tar,,$(@)) tar
|
define gen-relup-target
|
||||||
|
$1-relup: $1-rel
|
||||||
|
@$(BUILD) $1 relup
|
||||||
|
endef
|
||||||
|
ALL_ZIPS = $(REL_PROFILES)
|
||||||
|
$(foreach zt,$(ALL_ZIPS),$(eval $(call gen-relup-target,$(zt))))
|
||||||
|
|
||||||
## zip targets depend on the corresponding relup and tar artifacts
|
## zip target is to create a release package .zip with relup
|
||||||
.PHONY: $(REL_PROFILES:%=%-zip)
|
.PHONY: $(REL_PROFILES:%=%-zip)
|
||||||
define gen-zip-target
|
define gen-zip-target
|
||||||
$1-zip: relup-$1 $1-tar
|
$1-zip: $1-relup
|
||||||
@$(BUILD) $1 zip
|
@$(BUILD) $1 zip
|
||||||
endef
|
endef
|
||||||
ALL_ZIPS = $(REL_PROFILES) $(PKG_PROFILES)
|
ALL_ZIPS = $(REL_PROFILES)
|
||||||
$(foreach zt,$(ALL_ZIPS),$(eval $(call gen-zip-target,$(zt))))
|
$(foreach zt,$(ALL_ZIPS),$(eval $(call gen-zip-target,$(zt))))
|
||||||
|
|
||||||
## A pkg target depend on a regular release profile zip to include relup,
|
## A pkg target depend on a regular release
|
||||||
## and also a -pkg suffixed profile tar (without relup) for making deb/rpm package
|
|
||||||
.PHONY: $(PKG_PROFILES)
|
.PHONY: $(PKG_PROFILES)
|
||||||
define gen-pkg-target
|
define gen-pkg-target
|
||||||
$1: $(subst -pkg,,$1)-zip $1-tar
|
$1: $1-rel
|
||||||
@$(BUILD) $1 pkg
|
@$(BUILD) $1 pkg
|
||||||
endef
|
endef
|
||||||
$(foreach pt,$(PKG_PROFILES),$(eval $(call gen-pkg-target,$(pt))))
|
$(foreach pt,$(PKG_PROFILES),$(eval $(call gen-pkg-target,$(pt))))
|
||||||
|
|
10
build
10
build
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
# This script helps to build release artifacts.
|
# This script helps to build release artifacts.
|
||||||
# arg1: profile, e.g. emqx | emqx-edge | emqx-pkg | emqx-edge-pkg
|
# arg1: profile, e.g. emqx | emqx-edge | emqx-pkg | emqx-edge-pkg
|
||||||
# arg2: artifact, e.g. tar | relup | zip | pkg
|
# arg2: artifact, e.g. rel | relup | zip | pkg
|
||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
|
@ -62,7 +62,7 @@ log() {
|
||||||
echo "===< $msg"
|
echo "===< $msg"
|
||||||
}
|
}
|
||||||
|
|
||||||
make_tar() {
|
make_rel() {
|
||||||
./rebar3 as "$PROFILE" tar
|
./rebar3 as "$PROFILE" tar
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -117,8 +117,8 @@ make_zip() {
|
||||||
log "building artifact=$ARTIFACT for profile=$PROFILE"
|
log "building artifact=$ARTIFACT for profile=$PROFILE"
|
||||||
|
|
||||||
case "$ARTIFACT" in
|
case "$ARTIFACT" in
|
||||||
tar)
|
rel)
|
||||||
make_tar
|
make_rel
|
||||||
;;
|
;;
|
||||||
relup)
|
relup)
|
||||||
make_relup
|
make_relup
|
||||||
|
@ -132,8 +132,6 @@ case "$ARTIFACT" in
|
||||||
log "Skipped making deb/rpm package for $SYSTEM"
|
log "Skipped making deb/rpm package for $SYSTEM"
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
# build the tar which is going to be used as the base of deb and rpm packages
|
|
||||||
make_tar
|
|
||||||
make -C "deploy/packages/${PKGERDIR}" clean
|
make -C "deploy/packages/${PKGERDIR}" clean
|
||||||
EMQX_REL="$(pwd)" EMQX_BUILD="${PROFILE}" SYSTEM="${SYSTEM}" make -C "deploy/packages/${PKGERDIR}"
|
EMQX_REL="$(pwd)" EMQX_BUILD="${PROFILE}" SYSTEM="${SYSTEM}" make -C "deploy/packages/${PKGERDIR}"
|
||||||
;;
|
;;
|
||||||
|
|
Loading…
Reference in New Issue