Added postgres to tox and travis and included django 2.2.

pull/57/head
Fabio Caccamo 2019-02-06 16:23:22 +01:00
parent 1870635697
commit 8bffc8f82a
3 changed files with 114 additions and 43 deletions

View File

@ -1,62 +1,105 @@
language: python language: python
python: 3.5 python: 3.5
env: env:
- TOX_ENV=py27-dj17 - TOX_ENV=py27-dj17-sqlite
- TOX_ENV=py27-dj18 - TOX_ENV=py27-dj17-postgres
- TOX_ENV=py27-dj19 - TOX_ENV=py27-dj18-sqlite
- TOX_ENV=py27-dj110 - TOX_ENV=py27-dj18-postgres
- TOX_ENV=py27-dj111 - TOX_ENV=py27-dj19-sqlite
- TOX_ENV=py34-dj17 - TOX_ENV=py27-dj19-postgres
- TOX_ENV=py34-dj18 - TOX_ENV=py27-dj110-sqlite
- TOX_ENV=py34-dj19 - TOX_ENV=py27-dj110-postgres
- TOX_ENV=py34-dj110 - TOX_ENV=py27-dj111-sqlite
- TOX_ENV=py34-dj111 - TOX_ENV=py27-dj111-postgres
- TOX_ENV=py34-dj20 - TOX_ENV=py34-dj17-sqlite
- TOX_ENV=py35-dj18 - TOX_ENV=py34-dj17-postgres
- TOX_ENV=py35-dj19 - TOX_ENV=py34-dj18-sqlite
- TOX_ENV=py35-dj110 - TOX_ENV=py34-dj18-postgres
- TOX_ENV=py35-dj111 - TOX_ENV=py34-dj19-sqlite
- TOX_ENV=py35-dj20 - TOX_ENV=py34-dj19-postgres
- TOX_ENV=py35-dj21 - TOX_ENV=py34-dj110-sqlite
- TOX_ENV=py35-djmaster - TOX_ENV=py34-dj110-postgres
# - TOX_ENV=py36-dj111 - TOX_ENV=py34-dj111-sqlite
# - TOX_ENV=py36-dj20 - TOX_ENV=py34-dj111-postgres
# - TOX_ENV=py36-dj21 - TOX_ENV=py34-dj20-sqlite
# - TOX_ENV=py36-djmaster - TOX_ENV=py34-dj20-postgres
# - TOX_ENV=py37-dj20 - TOX_ENV=py35-dj18-sqlite
# - TOX_ENV=py37-dj21 - TOX_ENV=py35-dj18-postgres
# - TOX_ENV=py37-djmaster - TOX_ENV=py35-dj19-sqlite
- TOX_ENV=py35-dj19-postgres
- TOX_ENV=py35-dj110-sqlite
- TOX_ENV=py35-dj110-postgres
- TOX_ENV=py35-dj111-sqlite
- TOX_ENV=py35-dj111-postgres
- TOX_ENV=py35-dj20-sqlite
- TOX_ENV=py35-dj20-postgres
- TOX_ENV=py35-dj21-sqlite
- TOX_ENV=py35-dj21-postgres
- TOX_ENV=py35-dj22-sqlite
- TOX_ENV=py35-dj22-postgres
matrix: matrix:
include: include:
- python: "3.6" - python: "3.6"
env: TOX_ENV=py36-dj111 env:
- TOX_ENV=py36-dj111-sqlite
- TOX_ENV=py36-dj111-postgres
- python: "3.6" - python: "3.6"
env: TOX_ENV=py36-dj20 env:
- TOX_ENV=py36-dj20-sqlite
- TOX_ENV=py36-dj20-postgres
- python: "3.6" - python: "3.6"
env: TOX_ENV=py36-dj21 env:
- TOX_ENV=py36-dj21-sqlite
- TOX_ENV=py36-dj21-postgres
- python: "3.6" - python: "3.6"
env: TOX_ENV=py36-djmaster env:
- TOX_ENV=py36-dj22-sqlite
- TOX_ENV=py36-dj22-postgres
- python: "3.6"
env:
- TOX_ENV=py36-djmaster-sqlite
- TOX_ENV=py36-djmaster-postgres
- python: "3.7" - python: "3.7"
env: TOX_ENV=py37-dj20 env:
- TOX_ENV=py37-dj20-sqlite
- TOX_ENV=py37-dj20-postgres
dist: xenial dist: xenial
language: python language: python
sudo: required sudo: required
- python: "3.7" - python: "3.7"
env: TOX_ENV=py37-dj21 env:
- TOX_ENV=py37-dj21-sqlite
- TOX_ENV=py37-dj21-postgres
dist: xenial dist: xenial
language: python language: python
sudo: required sudo: required
- python: "3.7" - python: "3.7"
env: TOX_ENV=py37-djmaster env:
- TOX_ENV=py37-dj22-sqlite
- TOX_ENV=py37-dj22-postgres
dist: xenial
language: python
sudo: required
- python: "3.7"
env:
- TOX_ENV=py37-djmaster-sqlite
- TOX_ENV=py37-djmaster-postgres
dist: xenial dist: xenial
language: python language: python
sudo: required sudo: required
allow_failures: allow_failures:
- env: TOX_ENV=py35-djmaster - env:
- env: TOX_ENV=py36-djmaster - TOX_ENV=py36-djmaster-sqlite
- env: TOX_ENV=py37-djmaster - TOX_ENV=py36-djmaster-postgres
- env:
- TOX_ENV=py37-djmaster-sqlite
- TOX_ENV=py37-djmaster-postgres
install: install:
- pip install tox - pip install tox
services:
- postgresql
before_script:
- psql -c 'create database admin_interface;' -U postgres
script: script:
- tox -e $TOX_ENV - tox -e $TOX_ENV
sudo: false sudo: false

View File

@ -62,13 +62,34 @@ TEMPLATES = [{
}, },
},] },]
DATABASES = { database_engine = os.environ.get('DATABASE_ENGINE', 'sqlite')
'default': { database_config = {
'sqlite': {
'ENGINE': 'django.db.backends.sqlite3', 'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), 'NAME': ':memory:',
},
# 'mysql': {
# 'ENGINE': 'django.db.backends.mysql',
# 'NAME': 'admin_interface',
# 'USER': 'mysql',
# 'PASSWORD': 'mysql',
# 'HOST': '',
# 'PORT': '',
# },
'postgres': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'admin_interface',
'USER': 'postgres',
'PASSWORD': 'postgres',
'HOST': '',
'PORT': '',
} }
} }
DATABASES = {
'default': database_config.get(database_engine),
}
MEDIA_ROOT = os.path.join(BASE_DIR, 'admin_interface/public/media/') MEDIA_ROOT = os.path.join(BASE_DIR, 'admin_interface/public/media/')
MEDIA_URL = '/media/' MEDIA_URL = '/media/'

17
tox.ini
View File

@ -1,10 +1,10 @@
[tox] [tox]
envlist = envlist =
py27-{dj17,dj18,dj19,dj110,dj111}, py27-{dj17,dj18,dj19,dj110,dj111}-{sqlite,postgres},
py34-{dj17,dj18,dj19,dj110,dj111,dj20}, py34-{dj17,dj18,dj19,dj110,dj111,dj20}-{sqlite,postgres},
py35-{dj18,dj19,dj110,dj111,dj20,dj21,djmaster}, py35-{dj18,dj19,dj110,dj111,dj20,dj21,dj22}-{sqlite,postgres},
py36-{dj18,dj19,dj110,dj111,dj20,dj21,djmaster}, py36-{dj18,dj19,dj110,dj111,dj20,dj21,dj22,djmaster}-{sqlite,postgres},
py37-{dj20,dj21,djmaster}, py37-{dj20,dj21,dj22,djmaster}-{sqlite,postgres},
[testenv] [testenv]
passenv = CI TRAVIS TRAVIS_* passenv = CI TRAVIS TRAVIS_*
deps = deps =
@ -15,9 +15,16 @@ deps =
dj111: Django >= 1.11, < 1.12 dj111: Django >= 1.11, < 1.12
dj20: Django >= 2.0, < 2.1 dj20: Django >= 2.0, < 2.1
dj21: Django >= 2.1, < 2.2 dj21: Django >= 2.1, < 2.2
dj22: Django >= 2.2, < 2.3
djmaster: https://github.com/django/django/archive/master.tar.gz djmaster: https://github.com/django/django/archive/master.tar.gz
# mysql: mysqlclient
postgres: psycopg2-binary
coverage coverage
codecov codecov
setenv =
sqlite: DATABASE_ENGINE=sqlite
# mysql: DATABASE_ENGINE=mysql
postgres: DATABASE_ENGINE=postgres
commands = commands =
coverage run --append --source=admin_interface setup.py test coverage run --append --source=admin_interface setup.py test
coverage report -m coverage report -m