Skip to content
Snippets Groups Projects
.gitlab-ci.yml 1.77 KiB
Newer Older
  • Learn to ignore specific revisions
  • Barnabás Czémán's avatar
    Barnabás Czémán committed
    # This file is a template, and might need editing before it works on your project.
    # Official framework image. Look for the different tagged releases at:
    # https://hub.docker.com/r/library/python
    image: python:latest
    
    # Pick zero or more services to be used on all builds.
    # Only needed when using a docker container to run your tests in.
    # Check out: http://docs.gitlab.com/ce/ci/docker/using_docker_images.html#what-is-a-service
    services:
      - mysql:latest
      - postgres:latest
    
    variables:
      POSTGRES_DB: database_name
    
    # This folder is cached between builds
    # http://docs.gitlab.com/ce/ci/yaml/README.html#cache
    cache:
      paths:
      - ~/.cache/pip/
    
    # This is a basic example for a gem or script which doesn't use
    # services such as redis or postgres
    before_script:
      - python -V                                   # Print out python version for debugging
      # Uncomment next line if your Django app needs a JS runtime:
      # - apt-get update -q && apt-get install nodejs -yqq
      - pip install -r requirements/development.txt
    # To get Django tests to work you may need to create a settings file using
    # the following DATABASES:
    
    Barnabás Czémán's avatar
    Barnabás Czémán committed
    # DATABASES = {
    #     'default': {
    #        'ENGINE': 'django.db.backends.postgresql_psycopg2',
    #        'NAME': 'ci',
    #        'USER': 'postgres',
    #        'PASSWORD': 'postgres',
    #        'HOST': 'postgres',
    #        'PORT': '5432',
    #    },
    # }
    #
    # and then adding `--settings app.settings.ci` (or similar) to the test command
    
    stages:
      - lint
      - test
      - coverage
    
    flake8:
      stage: lint
      script:
        - flake8 --max-line-length=125 --exclude=src/kszkepzes,migrations
    
    test:
      variables:
        DATABASE_URL: "postgresql://postgres:postgres@postgres:5432/$POSTGRES_DB"
    
        SECRET_KEY: "secret"
        AUTHSCH_KEY: "secret"
        AUTHSCH_SECRET: "secret"
    
    Barnabás Czémán's avatar
    Barnabás Czémán committed
      script:
      - python src/manage.py test