54 lines
1.5 KiB
Bash
Executable File
54 lines
1.5 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
SkipCheckRepo=false
|
|
|
|
if [ -z "$SkipCheckRepo" ] && [ -n "$(git status --porcelain)" ]; then
|
|
echo "Repo is dirty. Aborting..."
|
|
exit 1
|
|
fi
|
|
|
|
BUILT_TIME=$(date +'%B-%d,-%Y-@-%T')
|
|
BUILD_HASH=$(git rev-parse HEAD)
|
|
if [ "$CI_COMMIT_BRANCH" ]; then
|
|
HOSTNAME="GitLab"
|
|
BUILD_BRANCH=$CI_COMMIT_BRANCH
|
|
else
|
|
HOSTNAME=$(hostname -f)
|
|
BUILD_BRANCH=$(git rev-parse --abbrev-ref HEAD)
|
|
fi
|
|
|
|
# This allow to set the default path, if script used outside makefile
|
|
if [ -z "$OUT_PATH" ]; then
|
|
OUT_PATH="./build/out/distribution"
|
|
fi
|
|
|
|
mkdir -p "$OUT_PATH"
|
|
|
|
go generate ./...
|
|
|
|
# Generate the native version
|
|
env CGO_ENABLED=0 go build -mod vendor -o ${OUT_PATH}/qfixpt -ldflags "-X quantex.com/qfixpt/src/app/version.hostname=${HOSTNAME} -X quantex.com/qfixpt/src/app/version.builtTime=${BUILT_TIME} -X quantex.com/qfixpt/src/app/version.buildHash=${BUILD_HASH} -X quantex.com/qfixpt/src/app/version.buildBranch=${BUILD_BRANCH}" *.go
|
|
|
|
gzip -kf "${OUT_PATH}"/qfixpt
|
|
|
|
# if no environment argument, set to default value dev
|
|
if [ -z "$1" ]; then
|
|
ENV="dev"
|
|
else
|
|
ENV="$1"
|
|
fi
|
|
|
|
if COMMIT_MSG=$(QUANTEX_ENVIRONMENT=$ENV "${OUT_PATH}/qfixpt" -v 2>/dev/null); then
|
|
echo "$COMMIT_MSG"
|
|
else
|
|
echo "---------------------------------"
|
|
echo "QFIXPT"
|
|
echo "Built at: ${BUILT_TIME}"
|
|
echo "Branch: ${BUILD_BRANCH}"
|
|
echo "SHA: ${BUILD_HASH}"
|
|
echo "Built from ${HOSTNAME}"
|
|
echo "Powered by Quantex Technologies"
|
|
echo "---------------------------------"
|
|
fi
|
|
|