diff options
-rw-r--r-- | .github/workflows/run-on-pr.yaml | 50 | ||||
-rw-r--r-- | .github/workflows/run-test.yaml | 59 |
2 files changed, 109 insertions, 0 deletions
diff --git a/.github/workflows/run-on-pr.yaml b/.github/workflows/run-on-pr.yaml new file mode 100644 index 0000000..4943b3e --- /dev/null +++ b/.github/workflows/run-on-pr.yaml @@ -0,0 +1,50 @@ +name: Run tests on a pr + +on: + # run on pull request to master excluding changes that are only on doc or example folders + pull_request: + branches: + - master + paths-ignore: + - "docs/**" + +env: + # global env to all steps + TOX_WORKERS: -n2 + +jobs: + run-test-amd64: + name: ${{ matrix.python-version }}-${{ matrix.sqlalchemy }}-${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + # run this job using this matrix, excluding some combinations below. + matrix: + os: + - "ubuntu-latest" + python-version: + - "3.9" + sqlalchemy: + - sqla13 + - sqlamaster + # abort all jobs as soon as one fails + fail-fast: true + + # steps to run in each job. Some are github actions, others run shell commands + steps: + - name: Checkout repo + uses: actions/checkout@v2 + + - name: Set up python + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + architecture: ${{ matrix.architecture }} + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install --upgrade tox setuptools + pip list + + - name: Run tests + run: tox -e py-${{ matrix.sqlalchemy }} diff --git a/.github/workflows/run-test.yaml b/.github/workflows/run-test.yaml new file mode 100644 index 0000000..3afb260 --- /dev/null +++ b/.github/workflows/run-test.yaml @@ -0,0 +1,59 @@ +name: Run tests + +on: + # run on push in master or rel_* branches excluding changes are only on doc or example folders + push: + branches: + - master + - "rel_*" + # branches used to test the workflow + - "workflow_test_*" + paths-ignore: + - "docs/**" + +env: + # global env to all steps + TOX_WORKERS: -n2 + +jobs: + run-test: + name: ${{ matrix.python-version }}-${{ matrix.sqlalchemy }}-${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + # run this job using this matrix, excluding some combinations below. + matrix: + os: + - "ubuntu-latest" + - "windows-latest" + - "macos-latest" + python-version: + - "2.7" + - "3.6" + - "3.7" + - "3.8" + - "3.9" + sqlalchemy: + - sqla13 + - sqlamaster + + fail-fast: false + + # steps to run in each job. Some are github actions, others run shell commands + steps: + - name: Checkout repo + uses: actions/checkout@v2 + + - name: Set up python + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + architecture: ${{ matrix.architecture }} + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install --upgrade tox setuptools + pip list + + - name: Run tests + run: tox -e py-${{ matrix.sqlalchemy }} |