48 lines
1.0 KiB
Bash
Executable File
48 lines
1.0 KiB
Bash
Executable File
#/!bin/bash
|
|
## PREBUILD PROCESS
|
|
# check dist dir to be present and empty
|
|
if [ ! -d "dist" ]; then
|
|
## MAKE DIR
|
|
mkdir "dist"
|
|
echo "Directory dist created."
|
|
else
|
|
## CLEANUP
|
|
rm -fr dist/*
|
|
fi
|
|
# Install dependencies
|
|
#npm install
|
|
|
|
## PROJECT NEEDS
|
|
echo "Building app... from $(git rev-parse --abbrev-ref HEAD)"
|
|
#npm run-script build
|
|
cp .env.example .env
|
|
cp -r {.env,app.js,package.json,server,public} dist/
|
|
|
|
#Add version control for pm2
|
|
cd dist
|
|
#Add version control for pm2
|
|
version=$(git describe)
|
|
file_pkg="package.json"
|
|
key=" \"version\": \""
|
|
|
|
count=$(echo ${version%%-*} | grep -o "\." | wc -l)
|
|
if (( $count > 1 )); then
|
|
version=${version%%-*}
|
|
else
|
|
version="${version%%-*}.0"
|
|
fi
|
|
if [ -f "$file_pkg" ] && [ ! -z "$version" ]; then
|
|
version=" \"version\": \"$version\","
|
|
sed -i "s|^.*$key.*|${version//\//\\/}|g" $file_pkg
|
|
text=$(cat $file_pkg | grep -c "$version")
|
|
if [ $text -eq 0 ]; then
|
|
echo "Version couldn't be set"
|
|
else
|
|
echo "Version $version successfully applied to App"
|
|
fi
|
|
fi
|
|
|
|
## POST BUILD
|
|
|
|
cd -
|
|
rm .env |