Skip to content

modifyed workflow

modifyed workflow #2

name: Laravel and React Test
on:
push:
branches:
- main
- develop
pull_request:
branches:
- main
- develop
jobs:
laravel-tests:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v3
- name: Install Docker Compose
run: |
sudo curl -L "https://github.com/docker/compose/releases/download/v2.12.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version
- name: Set up Docker Compose
run: docker-compose up -d
- name: Wait for Backend to Start
run: |
echo "Waiting for backend to become healthy..."
timeout 90s bash -c 'until docker-compose exec backend curl -f http://localhost:8000; do sleep 5; done'
- name: Install Backend Dependencies
run: |
docker-compose exec backend composer install
docker-compose exec backend php artisan key:generate
docker-compose exec backend php artisan migrate
- name: Run Laravel Tests
run: |
docker-compose exec backend php artisan test
- name: Verify Frontend
run: |
docker-compose exec frontend npm install
docker-compose exec frontend npm test
docker-compose exec frontend npm run build
- name: Check Backend Logs (if failure)
if: failure()
run: docker-compose logs backend
- name: Tear Down Docker Compose
if: always()
run: docker-compose down