NextZen-UserService/Makefile
2024-11-22 17:29:12 +07:00

53 lines
1.8 KiB
Makefile

GORELEASER=goreleaser
GORELEASERBUILD=$(GORELEASER) build
GIT=git
GIT_REMOTE?=origin
SERVICE = casaos-user-service
ARCHITECHTURE= amd64
OS=linux
VERSION=v1
BIN_PATH=build/sysroot/usr/bin
BUILD_PATH=build
CUR_DIR=$(PWD)
CUR_TAG ?= $(shell git describe --tags --match '*.*.*' | sort -V | tail -n1 | sed 's/-[0-9]*-g[0-9a-f]*//')
PREV_TAG ?= $(shell git describe --tags --match '*.*.*' | sort -V | head -n2 | tail -n1 | sed 's/-[0-9]*-g[0-9a-f]*//')
ARCHIVE_PATH=buildzip
ifeq ($(TAG),)
PACKAGE_NAME := $(OS)-$(ARCHITECHTURE)-nextzenos-user-service
else
PACKAGE_NAME := $(OS)-$(ARCHITECHTURE)-nextzenos-user-service-$(TAG)
endif
COMMIT_MESSAGE ?="update"
build_service:
$(GORELEASERBUILD) --clean --snapshot -f .goreleaser.debug.yaml --id $(SERVICE)-$(ARCHITECHTURE)
package:
cp $(CUR_DIR)/dist/$(SERVICE)-$(ARCHITECHTURE)_$(OS)_$(ARCHITECHTURE)_$(VERSION)/$(BIN_PATH)/$(SERVICE) $(CUR_DIR)/$(BIN_PATH) \
&& tar -czvf $(PACKAGE_NAME).tar.gz $(BUILD_PATH)
archive_package:
@mkdir -p $(CUR_DIR)/$(ARCHIVE_PATH)/$(CUR_TAG)
@mv $(PACKAGE_NAME).tar.gz $(CUR_DIR)/$(ARCHIVE_PATH)/$(CUR_TAG)/
remove_package:
rm $(PACKAGE_NAME).tar.gz
clear_archive:
@rm -rf $(CUR_DIR)/$(ARCHIVE_PATH)
#make create_tag CUR_TAG=x.x TAG_MESSAGE="this is tag message"
create_tag:
@${GIT} tag -a ${CUR_TAG} -m "${TAG_MESSAGE}" || { echo "Failed to create tag"; exit 1; }
@${GIT} push ${GIT_REMOTE} ${CUR_TAG} || { echo "Failed to push tag"; exit 1; }
#make remove_tag CUR_TAG=x.x
remove_tag:
@${GIT} tag -d ${CUR_TAG}
@${GIT} push ${GIT_REMOTE} -d ${CUR_TAG}
check_tag:
@echo "Current tag: $(CUR_TAG)";
push_release_all:
${GORELEASER} release --clean -f .goreleaser.yaml
push_release:
${GORELEASER} release --single-target
push_git:
@${GIT} pull ${GIT_REMOTE}
@${GIT} add .
@${GIT} commit -m "${COMMIT_MESSAGE}"
@${GIT} push ${GIT_REMOTE}