Skip to content

Updated workflow

Updated workflow #24

Workflow file for this run

name: FastAPI CI
on: [push, pull_request]
jobs:
FastApi-backend:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
cache: 'pip'
- name: Install dependencies
run: |
cd backend
pip install -r requirements.txt
- name: Start FastAPI app
run: |
cd backend
nohup fastapi dev > /dev/null 2>&1 &
echo $! > uvicorn.pid
sleep 10
- name: Check FastAPI /health endpoint
run: |
response=$(curl -s http://127.0.0.1:8000/health)
echo "Response: $response"
if [ "$response" == '{"status":"Active"}' ]; then
echo "Health check passed"
else
echo "Health check failed"
exit 1
fi
Vue-frontend:
runs-on: ubuntu-latest
needs: FastApi-backend
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '20'
- name: Install frontend dependencies
run: |
cd frontend
npm install
- name: Run frontend development server
run: |
cd frontend
nohup npm run dev > /dev/null 2>&1 &
echo $! > npm.pid
sleep 10
- name: Verify frontend server is running
run: |
response=$(curl -s http://localhost:9000/2)
echo "Response: $response"
if [[ $response == *"expected content"* ]]; then
echo "Frontend is running"
else
echo "Frontend is not running or did not return expected content"
exit 1
fi