Bash · 608 bytes Raw Blame History
1 #!/usr/bin/env bash
2 set -euo pipefail
3
4 STAMP=$(date +%Y-%m-%d-%H%M%S)
5 OUTDIR=~/builds/$STAMP
6 SITE=/var/www/dougk.musicsian.com
7
8 echo "▶ npm ci"
9 npm ci
10
11 echo "▶ npm run build"
12 npm run build
13 mv dist "$OUTDIR"
14
15 echo "▶ copy into releases"
16 sudo mkdir -p "$SITE/releases"
17 sudo rsync -az --delete "$OUTDIR"/ "$SITE/releases/$STAMP/"
18
19 echo "▶ fix selinux context"
20 sudo restorecon -Rv "$SITE/releases/$STAMP"
21
22 echo "▶ flip current symlink"
23 sudo rm -rf "$SITE/current"
24 sudo ln -s "$SITE/releases/$STAMP" "$SITE/current"
25
26 echo "▶ reload nginx"
27 sudo systemctl reload nginx
28
29 echo "✓ Deployed dougk $STAMP"