45 lines
910 B

  1. name: Tests
  2. on:
  3. push:
  4. branches: [master, features]
  5. pull_request:
  6. branches: [master, features]
  7. schedule:
  8. # Run the tests every day at 6:00 AM.
  9. # This allows to run the tests against the relative dates
  10. - cron: "0 6 * * *"
  11. jobs:
  12. e2e-tests:
  13. runs-on: ${{ matrix.os }}
  14. strategy:
  15. fail-fast: false
  16. matrix:
  17. os:
  18. - ubuntu-latest
  19. - macos-latest
  20. python-version:
  21. - '3.12'
  22. - '3.13'
  23. name: Python ${{ matrix.python-version }} on ${{ matrix.os }}
  24. steps:
  25. - uses: actions/checkout@v4
  26. - name: Set up Python
  27. uses: actions/setup-python@v5
  28. with:
  29. python-version: ${{ matrix.python-version }}
  30. - name: Install dependencies
  31. run: |
  32. pip install -U pip poetry
  33. poetry env use $(which python)
  34. poetry install
  35. - name: E2E tests
  36. run: |
  37. make tests