1+ name :Core e2e Tests
2+ on :[push]
3+ jobs :
4+ run-core-e2e-tests :
5+ runs-on :ubuntu-latest
6+ env :
7+ host :${{ secrets.E2E_TEST_HOST }}
8+ http_path :${{ secrets.E2E_TEST_HTTP_PATH }}
9+ access_token :${{ secrets.E2E_TEST_TOKEN }}
10+ steps :
11+ # ----------------------------------------------
12+ # check-out repo and set-up python
13+ # ----------------------------------------------
14+ -name :Check out repository
15+ uses :actions/checkout@v2
16+ -name :Set up python
17+ id :setup-python
18+ uses :actions/setup-python@v2
19+ with :
20+ python-version :3.7
21+ # ----------------------------------------------
22+ # ----- install & configure poetry -----
23+ # ----------------------------------------------
24+ -name :Install Poetry
25+ uses :snok/install-poetry@v1
26+ with :
27+ virtualenvs-create :true
28+ virtualenvs-in-project :true
29+ installer-parallel :true
30+
31+ # ----------------------------------------------
32+ # load cached venv if cache exists
33+ # ----------------------------------------------
34+ -name :Load cached venv
35+ id :cached-poetry-dependencies
36+ uses :actions/cache@v2
37+ with :
38+ path :.venv
39+ key :venv-${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ github.event.repository.name }}-${{ hashFiles('**/poetry.lock') }}
40+ # ----------------------------------------------
41+ # install dependencies if cache does not exist
42+ # ----------------------------------------------
43+ -name :Install dependencies
44+ if :steps.cached-poetry-dependencies.outputs.cache-hit != 'true'
45+ run :poetry install --no-interaction --no-root
46+ # ----------------------------------------------
47+ # install your root project, if required
48+ # ----------------------------------------------
49+ -name :Install library
50+ run :poetry install --no-interaction
51+ # ----------------------------------------------
52+ # run test suite
53+ # ----------------------------------------------
54+ -name :Run tests
55+ run :poetry run python -m pytest tests/e2e/driver_tests.py::PySQLCoreTestSuite