Skip to content

infra: Move unit tests to a subdirectory to allow space for integration tests #7

infra: Move unit tests to a subdirectory to allow space for integration tests

infra: Move unit tests to a subdirectory to allow space for integration tests #7

name: Backend integration tests
on:
push:
branches: [main]
pull_request: {}
jobs:
pytest:
permissions: write-all
environment: development
runs-on: ubuntu-latest
env:
COHERE_API_KEY: ${{ secrets.COHERE_API_KEY }}
DATABASE_URL: ${{ secrets.DATABASE_URL }}
NEXT_PUBLIC_API_HOSTNAME: ${{ secrets.NEXT_PUBLIC_API_HOSTNAME }}
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Setup Docker
run: docker compose up test_db -d
- name: Run integration tests
if: github.actor != 'dependabot[bot]'
run: |
mkdir -p coverage
docker compose build --build-arg INSTALL_COMMUNITY_DEPS=true backend
docker compose run --name backend-container -v $(pwd)/coverage:/app/coverage -e COHERE_API_KEY=$COHERE_API_KEY backend poetry run pytest --cov=src/backend --cov-report=xml:/app/coverage/coverage.xml src/backend/tests/integration
- name: Upload coverage reports to Codecov
uses: codecov/[email protected]
with:
token: ${{ secrets.CODECOV_TOKEN }}
file: coverage/coverage.xml