56 lines
1.7 KiB
Bash
Executable File
56 lines
1.7 KiB
Bash
Executable File
#!/bin/bash
|
|
APP=bordroesleme
|
|
PRJ_ROOT=${HOME}/prj/notitek/bordro-esleme
|
|
SVC_ROOT=${PRJ_ROOT}/svc
|
|
UI_ROOT=${PRJ_ROOT}/ui
|
|
DEST_IP=37.27.82.185
|
|
|
|
echo "Building ${APP} executable"
|
|
cd ${SVC_ROOT}
|
|
if [[ $OSTYPE == 'darwin'* ]]; then
|
|
GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -ldflags="-w -s" -o ./$APP ./main.go
|
|
else
|
|
GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -ldflags="-w -s" -o ./$APP ./main.go
|
|
fi
|
|
|
|
echo "Building SPA"
|
|
cd ${UI_ROOT}
|
|
version="0.alfa"
|
|
dt=$(date +%y%m%d-%H%M)
|
|
# gt=$(git rev-parse --short HEAD)
|
|
|
|
echo "
|
|
const vdata = {
|
|
version: '${version}',
|
|
build: '$dt'
|
|
}
|
|
export default vdata" > ./version.js
|
|
quasar build
|
|
|
|
echo "Copying executables"
|
|
scp ${SVC_ROOT}/${APP} root@${DEST_IP}:/opt/${APP}/${APP}.new
|
|
# scp ${SVC_ROOT}/upgrader/upgrader root@${DEST_IP}:/opt/${APP}/upgrader
|
|
|
|
echo "Transferring additional files"
|
|
#rsync -azP ${SVC_ROOT}/templates/ root@${DEST_IP}:/opt/${APP}/templates --delete
|
|
rsync -azP ${PRJ_ROOT}/db/sqls root@${DEST_IP}:/opt/${APP} --delete
|
|
#rsync -azP ${SVC_ROOT}/fonts/ root@${DEST_IP}:/opt/${APP}/fonts --delete
|
|
rsync -azP ${PRJ_ROOT}/db/migration/base root@${DEST_IP}:/opt/${APP}/migrate --delete
|
|
rsync -azP ${UI_ROOT}/dist/spa/ root@${DEST_IP}:/opt/${APP}/ui --delete
|
|
|
|
echo "Migrating database"
|
|
ssh root@${DEST_IP} "/opt/migrater -folder /opt/${APP}/migrate/base -db ${APP} -host 10.0.0.2 -tracker base -migrate-table symigrate -password tesnos.+ed"
|
|
|
|
echo "Updating system"
|
|
ssh root@${DEST_IP} "sudo systemctl stop ${APP}.service"
|
|
ssh root@${DEST_IP} "sudo rm /opt/${APP}/${APP}"
|
|
ssh root@${DEST_IP} "sudo mv /opt/${APP}/${APP}.new /opt/${APP}/${APP}"
|
|
|
|
ssh root@${DEST_IP} "chown -R ${APP}.${APP} /opt/${APP}"
|
|
|
|
ssh root@${DEST_IP} "sudo systemctl start ${APP}.service"
|
|
|
|
# remove compiled binary
|
|
cd ${SVC_ROOT}
|
|
rm -rf ./$APP
|