forked from Qortal/qortal
3a18599d85
The `start.sh` & `stop.sh` scripts have already been marked as executables in the source folder... But since we have only piped their contents, we need to set correct file permissions again.
70 lines
1.6 KiB
Bash
Executable File
70 lines
1.6 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
|
|
# Optional git tag?
|
|
if [ $# -ge 1 ]; then
|
|
git_tag="$1"
|
|
shift
|
|
fi
|
|
|
|
saved_pwd=$PWD
|
|
|
|
# Check we are within a git repo
|
|
git_dir=$( git rev-parse --show-toplevel )
|
|
if [ -z "${git_dir}" ]; then
|
|
echo "Cannot determine top-level directory for git repo"
|
|
exit 1
|
|
fi
|
|
|
|
# Change to git top-level
|
|
cd ${git_dir}
|
|
|
|
# Check we are in 'master' branch
|
|
# branch_name=$( git symbolic-ref -q HEAD ) || echo "Cannot determine branch name" && exit 1
|
|
# branch_name=${branch_name##refs/heads/}
|
|
# echo "Current git branch: ${branch_name}"
|
|
# if [ "${branch_name}" != "master" ]; then
|
|
# echo "Unexpected current branch '${branch_name}' - expecting 'master'"
|
|
# exit 1
|
|
# fi
|
|
|
|
# Determine project name
|
|
project=$( perl -n -e 'if (m/<artifactId>(\w+)<.artifactId>/) { print $1; exit }' pom.xml $)
|
|
if [ -z "${project}" ]; then
|
|
echo "Unable to determine project name from pom.xml?"
|
|
exit 1
|
|
fi
|
|
|
|
# Extract git tag
|
|
if [ -z "${git_tag}" ]; then
|
|
git_tag=$( git tag --points-at HEAD )
|
|
if [ -z "${git_tag}" ]; then
|
|
echo "Unable to extract git tag"
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
build_dir=/tmp/${project}
|
|
commit_ts=$( git show --no-patch --format=%cI )
|
|
|
|
/bin/rm -fr ${build_dir}
|
|
mkdir -p ${build_dir}
|
|
|
|
cp target/${project}*.jar ${build_dir}/${project}.jar
|
|
|
|
git show HEAD:log4j2.properties > ${build_dir}/log4j2.properties
|
|
|
|
git show HEAD:start.sh > ${build_dir}/start.sh
|
|
git show HEAD:stop.sh > ${build_dir}/stop.sh
|
|
|
|
chmod +x ${build_dir}/start.sh
|
|
chmod +x ${build_dir}/stop.sh
|
|
|
|
printf "{\n}\n" > ${build_dir}/settings.json
|
|
|
|
gtouch -d ${commit_ts%%+??:??} ${build_dir} ${build_dir}/*
|
|
|
|
rm -f ${saved_pwd}/${project}.zip
|
|
(cd ${build_dir}/..; 7z a -r -tzip ${saved_pwd}/${project}.zip ${project}/)
|