update install/deploy
This commit is contained in:
parent
fc0a19c45d
commit
bbff3324f3
|
|
@ -4,3 +4,4 @@
|
||||||
# You also need to manually update the nose-pluto.service file.
|
# You also need to manually update the nose-pluto.service file.
|
||||||
HOST="${HOST:-chris@nose-pluto.local}"
|
HOST="${HOST:-chris@nose-pluto.local}"
|
||||||
DEST="${DEST:-~/pluto}"
|
DEST="${DEST:-~/pluto}"
|
||||||
|
REPO="${REPO:-https://git.nose.space/defunkt/nose-pluto}"
|
||||||
|
|
@ -1,39 +1,8 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
##
|
##
|
||||||
# deploys from your dev machine to your NOSEputer
|
# deploys to your NOSEputer from git
|
||||||
|
|
||||||
set -euo pipefail
|
source ./app/scripts/config.sh
|
||||||
|
|
||||||
source ./scripts/config.sh
|
ssh $HOST "cd $DEST && git pull && bun install && sudo systemctl restart nose-pluto.service"
|
||||||
SOCK="$HOME/.ssh/cm-%r@%h:%p"
|
|
||||||
|
|
||||||
# 1) Open a master connection (prompts once)
|
|
||||||
ssh -MNf -o ControlMaster=yes -o ControlPersist=120 \
|
|
||||||
-o ControlPath="$SOCK" "$HOST"
|
|
||||||
|
|
||||||
# 2) rsync (reuses the connection)
|
|
||||||
|
|
||||||
# ensure our directory exists
|
|
||||||
ssh -o ControlPath="$SOCK" "$HOST" "mkdir -p $DEST/app"
|
|
||||||
|
|
||||||
# destructive sync for /app
|
|
||||||
rsync -az --delete \
|
|
||||||
-e "ssh -o ControlPath=$SOCK" \
|
|
||||||
--exclude 'node_modules/' \
|
|
||||||
--exclude '.git/' \
|
|
||||||
../app/ "$HOST:$DEST/app/"
|
|
||||||
|
|
||||||
# additive sync for root, /bin, /www
|
|
||||||
rsync -az \
|
|
||||||
-e "ssh -o ControlPath=$SOCK" \
|
|
||||||
--exclude 'node_modules/' \
|
|
||||||
--exclude '.git/' \
|
|
||||||
--exclude 'app/' \
|
|
||||||
../ "$HOST:$DEST/"
|
|
||||||
|
|
||||||
# 3) remote deploy (reuses the connection)
|
|
||||||
ssh -o ControlPath="$SOCK" "$HOST" "cd $DEST && bun install --frozen-lockfile && sudo systemctl restart nose-pluto.service"
|
|
||||||
|
|
||||||
# 4) close the master connection
|
|
||||||
ssh -O exit -o ControlPath="$SOCK" "$HOST"
|
|
||||||
|
|
@ -24,6 +24,9 @@ else
|
||||||
echo "bun already available at $BUN_SYMLINK"
|
echo "bun already available at $BUN_SYMLINK"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
echo ">> Clong git repository"
|
||||||
|
git clone $REPO $DEST
|
||||||
|
|
||||||
echo ">> Setting CAP_NET_BIND_SERVICE on $BUN_REAL"
|
echo ">> Setting CAP_NET_BIND_SERVICE on $BUN_REAL"
|
||||||
sudo setcap 'cap_net_bind_service=+ep' "$BUN_REAL"
|
sudo setcap 'cap_net_bind_service=+ep' "$BUN_REAL"
|
||||||
getcap "$BUN_REAL" || true
|
getcap "$BUN_REAL" || true
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user