mirror of
https://github.com/cookiecutter/cookiecutter-django.git
synced 2024-11-14 05:36:58 +03:00
53 lines
1.2 KiB
YAML
53 lines
1.2 KiB
YAML
stages:
|
|
- lint
|
|
- test
|
|
|
|
variables:
|
|
POSTGRES_USER: '{{ cookiecutter.project_slug }}'
|
|
POSTGRES_PASSWORD: ''
|
|
POSTGRES_DB: 'test_{{ cookiecutter.project_slug }}'
|
|
POSTGRES_HOST_AUTH_METHOD: trust
|
|
{% if cookiecutter.use_celery == 'y' -%}
|
|
CELERY_BROKER_URL: 'redis://redis:6379/0'
|
|
{%- endif %}
|
|
|
|
flake8:
|
|
stage: lint
|
|
image: python:3.10-alpine
|
|
before_script:
|
|
- pip install -q flake8
|
|
script:
|
|
- flake8
|
|
|
|
pytest:
|
|
stage: test
|
|
{% if cookiecutter.use_docker == 'y' -%}
|
|
image: docker/compose:1.29.2
|
|
tags:
|
|
- docker
|
|
services:
|
|
- docker:dind
|
|
before_script:
|
|
- 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
|
|
{%- else -%}
|
|
image: python:3.10
|
|
tags:
|
|
- python
|
|
services:
|
|
- postgres:{{ cookiecutter.postgresql_version }}
|
|
variables:
|
|
DATABASE_URL: pgsql://$POSTGRES_USER:$POSTGRES_PASSWORD@postgres/$POSTGRES_DB
|
|
|
|
before_script:
|
|
- pip install -r requirements/local.txt
|
|
|
|
script:
|
|
- pytest
|
|
{%- endif %}
|
|
|