lemo-crm/web/deploy
2017-10-17 11:58:23 +08:00

64 lines
1.5 KiB
Bash
Executable File

#!/bin/sh
# get real path of softlink
get_real_path() {
local f="$1"
while [ -h "$f" ]; do
ls=`ls -ld "$f"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
f="$link"
else
f=`dirname "$f"`/"$link"
fi
done
eval "$2"="'$f'"
}
currDir=$(pwd)
get_real_path "$0" prg_path
echo "Script Path [$prg_path]"
# Service Home
pushd $(dirname "$prg_path") > /dev/null
PROJECT_HOME=$(dirname $(pwd))
popd > /dev/null
# ember build
cd "$PROJECT_HOME/web"
if [ "$1" = "prod" ]; then
SERVER=lemo@116.62.189.211
else
# SERVER=ambition@101.236.35.13
SERVER=lemo@116.62.189.211
fi
projName="lemo-crm-web"
targetPath="/data/program"
tgzFile="${projName}.tgz"
backupDir="${projName}_prev"
ember b -prod -o "${projName}"
# package dist
echo "tar czf ${tgzFile} ${projName}"
tar czf "${tgzFile}" "${projName}"
# remove backup
echo "ssh ${SERVER} rm -rf ${targetPath}/${backupDir} && mv ${targetPath}/${projName} ${targetPath}/${backupDir}"
ssh "${SERVER}" "rm -rf ${targetPath}/${backupDir} && mv ${targetPath}/${projName} ${targetPath}/${backupDir}"
# copy pakage to server
echo "scp ${tgzFile} ${SERVER}:${targetPath}/"
scp "${tgzFile}" "${SERVER}:${targetPath}/"
# extract package
ssh "${SERVER}" "tar xzf ${targetPath}/${tgzFile} -C ${targetPath} && rm -rf ${targetPath}/${tgzFile}"
# clean up
echo "rm -rf ${projName} ${tgzFile}"
rm -rf "${projName}" "${tgzFile}"
cd "$currDir"