test.yml 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. name: Tests
  2. on:
  3. workflow_dispatch:
  4. push:
  5. branches:
  6. - main
  7. - dev
  8. paths-ignore:
  9. - 'LICENSE'
  10. - '**.md'
  11. pull_request:
  12. paths-ignore:
  13. - 'LICENSE'
  14. - '**.md'
  15. jobs:
  16. unit:
  17. name: Unit Tests
  18. runs-on: ubuntu-latest
  19. strategy:
  20. matrix:
  21. base_docker_image: [alpine, debian]
  22. steps:
  23. - uses: actions/checkout@v2
  24. - name: Set up Python 3.9
  25. uses: actions/setup-python@v2
  26. with:
  27. python-version: 3.9
  28. - name: Install dependencies
  29. run: |
  30. python -m pip install --upgrade pip
  31. pip install -r python-requirements.txt
  32. working-directory: test/requirements
  33. - name: Build Docker web server image
  34. run: make build-webserver
  35. - name: Build Docker nginx proxy test image
  36. run: make build-nginx-proxy-test-${{ matrix.base_docker_image }}
  37. if: |
  38. ( github.event_name == 'push' && github.ref != 'refs/heads/dev' ) ||
  39. ( github.event_name == 'pull_request' && github.base_ref != 'dev' )
  40. - name: Build Docker nginx proxy dev test image
  41. run: make build-nginx-proxy-test-${{ matrix.base_docker_image }}-dev
  42. if: |
  43. ( github.event_name == 'push' && github.ref == 'refs/heads/dev' ) ||
  44. ( github.event_name == 'pull_request' && github.base_ref == 'dev' )
  45. - name: Run tests
  46. run: pytest
  47. working-directory: test