Skip to content

Adds support for Django 5 and Moves to Github Actions for core CI/CD #224

Adds support for Django 5 and Moves to Github Actions for core CI/CD

Adds support for Django 5 and Moves to Github Actions for core CI/CD #224

Workflow file for this run

name: Lint, Build and Test
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
lint:
runs-on: ubuntu-latest
name: Lint
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Python 3.8
uses: actions/setup-python@v5
with:
python-version: 3.8
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install flake8
- name: Lint
run: flake8 dj_rest_auth/ --append-config ./.flake8
build:
runs-on: ubuntu-latest
name: Build
needs: [lint]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Python 3.8
uses: actions/setup-python@v5
with:
python-version: 3.8
- name: Install dependencies
run: |
python -m pip install --upgrade pip
- name: Build
run: python3 setup.py sdist
- name: Store artifacts
uses: actions/upload-artifact@v4
with:
name: dist
path: dist/
test:
runs-on: ubuntu-20.04
name: Test Python ${{ matrix.python-version }} + Django ~= ${{ matrix.django-version }}
needs: [build]
strategy:
matrix:
python-version: ['3.8', '3.9', '3.10', '3.11']
django-version: ['3.2', '4.2', '5.0']
exclude:
- python-version: '3.8'
django-version: '5.0'
- python-version: '3.9'
django-version: '5.0'
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
pip install -r dj_rest_auth/tests/requirements.pip
pip install "Django~=${{ matrix.django-version }}.0"
- name: Run Tests
run: |
echo "$(python --version) / Django $(django-admin --version)"
coverage run ./runtests.py
- name: Generate Coverage Report
run: |
mkdir -p test-results/
coverage report
coverage xml
- name: Code Coverage Summary Report
uses: irongut/CodeCoverageSummary@v1.3.0
with:
filename: coverage.xml
- name: Store test results
uses: actions/upload-artifact@v4
with:
name: results-${{ matrix.python-version }}-${{ matrix.django-version }}
path: test-results/