Feature/add search functionality for models #773
Workflow file for this run
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: ci-tox | |
# Enable Buildkit and let compose use it to speed up image building | |
env: | |
DOCKER_BUILDKIT: 1 | |
COMPOSE_DOCKER_CLI_BUILD: 1 | |
on: | |
pull_request: | |
branches: [ "master", "main" ] | |
paths-ignore: [ "docs/**" ] | |
push: | |
branches: [ "master", "main" ] | |
paths-ignore: [ "docs/**" ] | |
jobs: | |
linter: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Code Repository | |
uses: actions/[email protected] | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.9" | |
cache: pip | |
cache-dependency-path: | | |
requirements/base.txt | |
requirements/dev.txt | |
- name: Run pre-commit | |
uses: pre-commit/[email protected] | |
sqlite: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
max-parallel: 5 | |
matrix: | |
python-version: ["3.8", "3.9", "3.10", "3.11"] | |
steps: | |
- uses: actions/[email protected] | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install --upgrade tox tox-gh-actions | |
- name: Test with tox | |
run: tox | |
env: | |
DBBACKEND: sqlite3 | |
DBNAME: ":memory:" | |
- name: Upload coverage data | |
uses: actions/upload-artifact@v3 | |
with: | |
name: coverage-data | |
path: ".coverage.*" | |
mysql: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
max-parallel: 5 | |
matrix: | |
python-version: ["3.8", "3.9", "3.10", "3.11"] | |
mariadb-version: ["10.3", "10.5"] | |
services: | |
database: | |
image: mariadb:${{ matrix.mariadb-version }} | |
env: | |
MYSQL_ROOT_PASSWORD: rootpw | |
MYSQL_DATABASE: test | |
ports: | |
- 3306:3306 | |
options: --tmpfs /var/lib/mysql | |
steps: | |
- uses: actions/[email protected] | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install --upgrade tox tox-gh-actions | |
- name: Test with tox - 10.3 | |
if: ${{ matrix.mariadb-version == '10.3' }} | |
run: tox --skip-env ".+?-django42-mysql" | |
env: | |
DBBACKEND: mysql | |
DBNAME: test | |
DBUSER: root | |
DBPASSWORD: rootpw | |
DBHOST: 127.0.0.1 | |
- name: Test with tox - not 10.3 | |
if: ${{ matrix.mariadb-version != '10.3' }} | |
run: tox | |
env: | |
DBBACKEND: mysql | |
DBNAME: test | |
DBUSER: root | |
DBPASSWORD: rootpw | |
DBHOST: 127.0.0.1 | |
- name: Upload coverage data | |
uses: actions/upload-artifact@v3 | |
with: | |
name: coverage-data | |
path: ".coverage.*" | |
coverage: | |
name: Check coverage. | |
runs-on: "ubuntu-latest" | |
needs: [sqlite, mysql] | |
steps: | |
- uses: actions/[email protected] | |
- uses: actions/setup-python@v4 | |
with: | |
# Use latest, so it understands all syntax. | |
python-version: "3.10" | |
- run: python -m pip install --upgrade coverage[toml] django==3.2.16 django-coverage-plugin | |
- name: Download coverage data. | |
uses: actions/download-artifact@v3 | |
with: | |
name: coverage-data | |
- name: Combine coverage & check percentage | |
run: | | |
python -m coverage combine | |
python -m coverage xml | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v3 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} |