Support more django and python versions #287
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Django Drip Campaigns | |
on: [push, pull_request] | |
jobs: | |
build: | |
strategy: | |
matrix: | |
include: | |
# python 3.4 | |
- python-version: "3.5" | |
django-version: "2.2" | |
# python 3.6 | |
- python-version: "3.6" | |
django-version: "2.2" | |
- python-version: "3.6" | |
django-version: "3.2" | |
# python 3.7 | |
- python-version: "3.7" | |
django-version: "2.2" | |
- python-version: "3.7" | |
django-version: "3.2" | |
# python 3.8 | |
- python-version: "3.8" | |
django-version: "2.2" | |
- python-version: "3.8" | |
django-version: "3.2" | |
- python-version: "3.8" | |
django-version: "4.2" | |
# python 3.9 | |
- python-version: "3.9" | |
django-version: "2.2" | |
- python-version: "3.9" | |
django-version: "3.2" | |
- python-version: "3.9" | |
django-version: "4.2" | |
# python 3.10 | |
- python-version: "3.10" | |
django-version: "2.2" | |
- python-version: "3.10" | |
django-version: "3.2" | |
- python-version: "3.10" | |
django-version: "4.2" | |
- python-version: "3.10" | |
django-version: "5.2" | |
# python 3.11 | |
- python-version: "3.11" | |
django-version: "2.2" | |
- python-version: "3.11" | |
django-version: "3.2" | |
- python-version: "3.11" | |
django-version: "4.2" | |
- python-version: "3.11" | |
django-version: "5.2" | |
# python 3.12 | |
- python-version: "3.12" | |
django-version: "2.2" | |
- python-version: "3.12" | |
django-version: "3.2" | |
- python-version: "3.12" | |
django-version: "4.2" | |
- python-version: "3.12" | |
django-version: "5.2" | |
# pypy3 | |
- python-version: "pypy3" | |
django-version: "2.2" | |
- python-version: "pypy3" | |
django-version: "3.2" | |
- python-version: "pypy3" | |
django-version: "4.2" | |
- python-version: "pypy3" | |
django-version: "5.2" | |
runs-on: ubuntu-latest | |
env: | |
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }} | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python version ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Installing resources | |
run: | | |
pip install --upgrade pip==20.0.2 | |
pip install pipenv | |
- name: Installing requirements pipenv | |
run: | | |
pipenv install --dev | |
- name: Installing Django version ${{ matrix.django-version }} | |
run: | | |
pip install Django==${{ matrix.django-version }} | |
- name: Checking PEP8 code style | |
run: | | |
pipenv run flake8 --count | |
- name: Checking Black code formatter | |
run: | | |
pipenv run black . --check | |
- name: Check typing | |
run: | | |
pipenv run mypy --namespace-packages --explicit-package-bases --ignore-missing-imports --no-warn-unused-ignores . | |
- name: Running tests | |
run: | | |
pipenv run coverage run -m pytest --ds=testsettings | |
- name: Checking coverage | |
run: | | |
pipenv run coverage report --fail-under=90 -m | |
pipenv run coverage xml | |
- name: Setup Code Climate test-reporter | |
run: | | |
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter | |
chmod +x ./cc-test-reporter | |
./cc-test-reporter before-build | |
./cc-test-reporter after-build --coverage-input-type coverage.py --exit-code $? |