Files
Jody-Portfolio/.gitea/workflows/deploy.yaml
Ricearoni1245 14333f90d1
All checks were successful
Deploy Jody's App / build-and-deploy (push) Successful in 34s
commit test 6
2026-02-18 22:09:33 -06:00

65 lines
1.8 KiB
YAML

name: Deploy Jody's App
on:
push:
branches:
- main
jobs:
build-and-deploy:
runs-on: vps-host
env:
CONTACT_HEALTH_URL: https://jodyholt.com/api/health
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install Frontend Dependencies
run: npm ci
- name: Build Frontend
run: npm run build
- name: Install Contact API Dependencies
run: npm ci --prefix contact-api
- name: Build Contact API
run: npm run build --prefix contact-api
- name: Sync Frontend Files
run: |
mkdir -p /var/www/jody/dist
rm -rf /var/www/jody/dist/*
cp -r dist/* /var/www/jody/dist/
- name: Sync Contact API Runtime Files
run: |
mkdir -p /var/www/jody/contact-api
rm -rf /var/www/jody/contact-api/dist
cp -r contact-api/dist /var/www/jody/contact-api/
cp contact-api/package.json /var/www/jody/contact-api/
cp contact-api/package-lock.json /var/www/jody/contact-api/
- name: Install Contact API Production Dependencies
run: |
cd /var/www/jody/contact-api
npm ci --omit=dev
- name: Restart Contact API
run: |
set -euo pipefail
SYSTEMCTL_BIN="/usr/bin/systemctl"
if [ ! -x "$SYSTEMCTL_BIN" ]; then
SYSTEMCTL_BIN="/bin/systemctl"
fi
sudo -n "$SYSTEMCTL_BIN" restart jody-contact-api
sudo -n "$SYSTEMCTL_BIN" is-active --quiet jody-contact-api
echo "jody-contact-api service is active"
- name: Health Check Contact API
run: |
curl --fail --show-error --silent \
--retry 8 \
--retry-delay 2 \
--retry-all-errors \
"$CONTACT_HEALTH_URL"