Skip to content

Exclude py3.11/Django2.* #110

Exclude py3.11/Django2.*

Exclude py3.11/Django2.* #110

Workflow file for this run

name: Tests
on:
push:
branches: [master]
pull_request:
branches: [master]
workflow_dispatch:
jobs:
notify-build-start:
# Secrets are not available for forks for security reasons, so pull
# request checks will fail when trying to send the Slack notification.
# Unfortunately, there's no way to explicitly check that a secret is
# available, so we check for event_name instead:
# https://github.com/actions/runner/issues/520
if: ${{ github.event_name == 'push' }}
runs-on: ubuntu-latest
steps:
# Send build notifications to Slack
- uses: voxmedia/github-action-slack-notify-build@v1
id: slack
with:
channel_id: C0PT3267R
status: STARTED
color: warning
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
python-version: 3.9
- name: get pip cache dir
id: pip-cache
run: echo "::set-output name=dir::$(pip cache dir)"
- name: cache pip
uses: actions/cache@v2
with:
path: ${{ steps.pip-cache.outputs.dir }}
key: pip|lint
- run: pip install -r requirements-dev.txt
- run: flake8
- run: isort --diff -c .
# Send notification on build failure
- name: Notify slack fail
uses: voxmedia/github-action-slack-notify-build@v1
if: failure()
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
with:
channel_id: C0PT3267R
status: FAILED
color: danger
tests:
needs: lint
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python: [2.7, 3.5, 3.6, 3.7, 3.8, 3.9, "3.10", 3.11]
django: [1.8.*, 1.9.*, 1.10.*, 1.11.*, 2.0.*, 2.1.*, 2.2.*, 3.0.*, 3.1.*, 3.2.*, 4.0.*, 4.1.*, 4.2.*]
exclude:
- python: 2.7
django: 2.0.*
- python: 2.7
django: 2.1.*
- python: 2.7
django: 2.2.*
- python: 2.7
django: 3.0.*
- python: 2.7
django: 3.1.*
- python: 2.7
django: 3.2.*
- python: 2.7
django: 4.0.*
- python: 2.7
django: 4.1.*
- python: 2.7
django: 4.2.*
- python: 3.5
django: 3.0.*
- python: 3.5
django: 3.1.*
- python: 3.5
django: 3.2.*
- python: 3.5
django: 4.0.*
- python: 3.5
django: 4.1.*
- python: 3.5
django: 4.2.*
- python: 3.6
django: 4.0.*
- python: 3.6
django: 4.1.*
- python: 3.6
django: 4.2.*
- python: 3.7
django: 1.11.*
- python: 3.7
django: 4.0.*
- python: 3.7
django: 4.1.*
- python: 3.7
django: 4.2.*
- python: 3.8
django: 1.9.*
- python: 3.8
django: 1.10.*
- python: 3.9
django: 1.9.*
- python: 3.9
django: 1.10.*
- python: "3.10"
django: 1.8.*
- python: "3.10"
django: 1.9.*
- python: "3.10"
django: 1.10.*
- python: "3.10"
django: 1.11.*
- python: "3.10"
django: 2.0.*
- python: 3.11
django: 1.8.*
- python: 3.11
django: 1.9.*
- python: 3.11
django: 1.10.*
- python: 3.11
django: 1.11.*
- python: 3.11
django: 2.0.*
- python: 3.11
django: 2.1.*
- python: 3.11
django: 2.2.*
- python: 3.11
django: 3.0.*
- python: 3.11
django: 3.1.*
- python: 3.11
django: 3.2.*
- python: 3.11
django: 4.0.*
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python }}
- name: update pip
run: |
pip install -U wheel
pip install -U setuptools
python -m pip install -U pip
- name: get pip cache dir
id: pip-cache
run: echo "::set-output name=dir::$(pip cache dir)"
- name: cache pip
uses: actions/cache@v2
with:
path: ${{ steps.pip-cache.outputs.dir }}
key: pip|${{ matrix.python }}|${{ matrix.django }}
- run: pip install PLY
- run: pip install Django==${{ matrix.django }}
- run: pip install -e .
- run: python test_project/manage.py test core.tests
# Send notification on build failure
- name: Notify slack fail
uses: voxmedia/github-action-slack-notify-build@v1
if: failure()
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
with:
channel_id: C0PT3267R
status: FAILED
color: danger
notify-build-success:
if: ${{ github.event_name == 'push' }}
needs: tests
runs-on: ubuntu-latest
steps:
# Send notification on build success
- name: Notify slack success
uses: voxmedia/github-action-slack-notify-build@v1
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
with:
channel_id: C0PT3267R
status: SUCCESS
color: good