Skip to content

Refactor Docker Compose workflow for API tests and logs #11

Refactor Docker Compose workflow for API tests and logs

Refactor Docker Compose workflow for API tests and logs #11

name: Docker-Compose Build & Log Test
on: [push]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Start services
run: docker-compose -f docker-compose.yaml up -d
- name: Run API tests and capture logs if fail
run: |
if ! docker-compose exec app python -m pytest -v /app/tests/test_api.py; then
docker-compose logs app > app_service_logs.txt
docker-compose logs minio > minio_logs.txt
docker-compose logs weaviate > weaviate_logs.txt
cat app_service_logs.txt
exit 1
fi
- name: Upload logs as artifacts
if: failure()
uses: actions/upload-artifact@v2
with:
name: service-logs
path: |
app_service_logs.txt
minio_logs.txt
weaviate_logs.txt
- name: Clean up
run: docker-compose down