Skip to content

test onboarding (attemp to fix) #22

test onboarding (attemp to fix)

test onboarding (attemp to fix) #22

Workflow file for this run

name: Deploy Backend
on:
push:
branches: [back]
jobs:
deploy-backend:
runs-on: self-hosted
steps:
- uses: actions/checkout@v4
with:
ref: back
- name: Write .env
run: |
{
echo "PROJECT_NAME=HackathonBack"
echo "VERSION=0.1.0"
echo "DEBUG=false"
echo "ALLOWED_ORIGINS=${{ secrets.ALLOWED_ORIGINS }}"
echo "AI_SERVICE_URL=${{ secrets.AI_SERVICE_URL }}"
echo "CA_CERT_PATH=${{ secrets.CA_CERT_PATH }}"
echo "MONGODB_URI=${{ secrets.MONGODB_URI }}"
echo "MONGODB_DB_NAME=${{ secrets.MONGODB_DB_NAME }}"
} > /var/www/myapp/backend/.env
- name: Write CA certificate
run: |
mkdir -p /var/www/myapp/backend/certs
echo "${{ secrets.CA_CERT_B64 }}" | base64 -d > /var/www/myapp/backend/certs/ca.crt
- name: Copy backend to app directory
run: |
rsync -a --exclude='.env' --exclude='venv' --exclude='__pycache__' \
$GITHUB_WORKSPACE/ /var/www/myapp/backend/
- name: Install backend dependencies
run: |
source /var/www/myapp/backend/venv/bin/activate
pip install -r /var/www/myapp/backend/requirements.txt
- name: Restart FastAPI
run: sudo systemctl restart myapp
- name: Wait for FastAPI to start
run: |
for i in {1..15}; do
curl -sf http://127.0.0.1:8000/api/v1/health > /dev/null && exit 0
echo "Attempt $i: not ready yet..."
sleep 2
done
echo "=== Service status ==="
sudo systemctl status myapp --no-pager
echo "=== Last 50 log lines ==="
sudo journalctl -u myapp -n 50 --no-pager
exit 1