cookiecutter-django/{{cookiecutter.project_slug}}/.gitlab-ci.yml

53 lines
1.2 KiB
YAML
Raw Normal View History

2019-12-06 10:55:00 +03:00
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 %}
2019-12-06 10:55:00 +03:00
flake8:
stage: lint
image: python:3.10-alpine
2019-12-06 10:55:00 +03:00
before_script:
- pip install -q flake8
script:
- flake8
pytest:
stage: test
{% if cookiecutter.use_docker == 'y' -%}
image: docker/compose:1.29.2
2019-12-06 10:55:00 +03:00
tags:
- docker
services:
2020-05-30 01:05:44 +03:00
- 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
2021-03-30 13:26:12 +03:00
{%- else -%}
image: python:3.10
tags:
- python
2019-12-06 10:55:00 +03:00
services:
- postgres:{{ cookiecutter.postgresql_version }}
2019-12-06 10:55:00 +03:00
variables:
DATABASE_URL: pgsql://$POSTGRES_USER:$POSTGRES_PASSWORD@postgres/$POSTGRES_DB
before_script:
- pip install -r requirements/local.txt
script:
- pytest
{%- endif %}
2019-12-06 10:55:00 +03:00