cookiecutter-django/{{cookiecutter.project_slug}}/.travis.yml
2024-03-18 20:07:24 +01:00

46 lines
1.5 KiB
YAML

dist: focal
language: python
python:
- "3.12"
services:
- {% if cookiecutter.use_docker == 'y' %}docker{% else %}postgresql{% endif %}
jobs:
include:
- name: "Linter"
before_script:
- pip install -q ruff
script:
- ruff check .
- name: "Django Test"
{%- if cookiecutter.use_docker == 'y' %}
before_script:
- docker compose -v
- docker -v
- docker compose -f local.yml build
# Ensure celerybeat does not crash due to non-existent tables
- docker compose -f local.yml run --rm django python manage.py migrate
- docker compose -f local.yml up -d
script:
- docker compose -f local.yml run django pytest
after_failure:
- docker compose -f local.yml logs
{%- else %}
before_install:
- sudo apt-get update -qq
- sudo apt-get install -qq build-essential gettext python-dev zlib1g-dev libpq-dev xvfb
- sudo apt-get install -qq libjpeg8-dev libfreetype6-dev libwebp-dev
- sudo apt-get install -qq graphviz-dev python-setuptools python3-dev python-virtualenv python-pip
- sudo apt-get install -qq firefox automake libtool libreadline6 libreadline6-dev libreadline-dev
- sudo apt-get install -qq libsqlite3-dev libxml2 libxml2-dev libssl-dev libbz2-dev wget curl llvm
language: python
python:
- "3.12"
install:
- pip install -r requirements/local.txt
script:
- pytest
{%- endif %}