Skip to content

Update api-tests.yml #13

Update api-tests.yml

Update api-tests.yml #13

Workflow file for this run

name: Tests API
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
jobs:
tests:
runs-on: ubuntu-latest
env:
SECRET_KEY: ${{ secrets.SECRET_KEY }}
POSTGRES_USER: ${{ secrets.POSTGRES_USER }}
POSTGRES_PASSWORD: ${{ secrets.POSTGRES_PASSWORD }}
POSTGRES_DB: ${{ secrets.POSTGRES_DB }}
POSTGRES_SERVER: postgres
POSTGRES_PORT: 5432
POSTGRES_TEST_DB: ${{ secrets.POSTGRES_DB }}
FRONTEND_URL: ${{ secrets.FRONTEND_URL }}
EMAIL_USERNAME: ${{ secrets.EMAIL_USERNAME }}
EMAIL_ADDRESS: ${{ secrets.EMAIL_ADDRESS }}
EMAIL_PASSWORD: ${{ secrets.EMAIL_PASSWORD }}
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Build the Docker containers
run: docker-compose -f "test-docker-compose.yaml" build
- name: Run Application with Docker Compose
run: docker-compose -f "test-docker-compose.yaml" up -d
- name: Wait for PostgreSQL to start
run: |
# Wait for the PostgreSQL container to be ready
while ! docker-compose -f "test-docker-compose.yaml" exec postgres pg_isready -U $POSTGRES_USER -d $POSTGRES_DB -h postgres -p $POSTGRES_PORT -t 1; do
echo "Waiting for PostgreSQL to start..."
sleep 5
done
- name: Run the tests
run: docker-compose -f "test-docker-compose.yaml" run api pytest tests/