Overhaul of the unit test jobs and tox environments

Since Rocky, horizon depends on Django 2.0 when Python 3 is used.
The old sahara-dashboard-tox-py35dj20 and the py35dj20 tox environments
are thus no longer needed.
Add few more jobs:
- the py36 and py37 jobs and the related tox environments;
- a py3/django 1.11 job and tox environment, and set is a voting
  like its Horizon counterpart;
- the tox environment for a django 2.1 job (Horizon provides one as well.)

Finally, don't require the last version of horizon for the py3/django 1.11,
but relies on the stable version (which should provide the proper library
interface, as it happen with the other unit test jobs.)

Change-Id: Ic76b454f36d81a25b40e91a88d131f20a8df12f9
This commit is contained in:
Luigi Toscano 2019-03-07 12:23:44 +01:00
parent bd66017874
commit 0f7cc7e322
2 changed files with 25 additions and 14 deletions

View File

@ -4,11 +4,12 @@
- openstack-lower-constraints-jobs
- openstack-python-jobs-horizon
- openstack-python35-jobs-horizon
- openstack-python36-jobs-horizon
- openstack-python37-jobs-horizon
- release-notes-jobs-python3
check:
jobs:
- sahara-dashboard-tox-py35dj20:
voting: false
- sahara-dashboard-tox-python3-django111
experimental:
jobs:
- sahara-dashboard-integration
@ -17,7 +18,7 @@
name: sahara-dashboard-tox-base
parent: openstack-tox
required-projects:
- openstack/horizon
- openstack/sahara-dashboard
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
@ -25,10 +26,10 @@
- ^sahara_dashboard/locale/.*$
- job:
name: sahara-dashboard-tox-py35dj20
name: sahara-dashboard-tox-python3-django111
parent: sahara-dashboard-tox-base
vars:
tox_envlist: py35dj20
tox_envlist: py3-dj111
- job:
name: sahara-dashboard-integration

28
tox.ini
View File

@ -1,6 +1,6 @@
[tox]
minversion = 2.0
envlist = py36,py35,py27,pep8,py27dj18
envlist = py37,py36,py35,py3-dj111,py3-dj21,py27,pep8
skipsdist = True
[testenv]
@ -24,6 +24,10 @@ setenv =
setenv =
DJANGO_SETTINGS_MODULE=sahara_dashboard.test.settings
[testenv:py37]
setenv =
DJANGO_SETTINGS_MODULE=sahara_dashboard.test.settings
[testenv:pep8]
basepython = python3
commands = flake8
@ -32,15 +36,21 @@ commands = flake8
basepython = python3
commands = {posargs}
[testenv:py35dj20]
basepython = python3.5
commands = pip install django>=2.0,<2.1
{[testenv]commands}
[testenv:py3-dj111]
basepython = python3
setenv =
DJANGO_SETTINGS_MODULE=sahara_dashboard.test.settings
commands =
pip install django>=1.11,<2
{[unit_tests]commands}
[testenv:py36dj20]
basepython = python3.6
commands = pip install django>=2.0,<2.1
{[testenv]commands}
[testenv:py3-dj21]
basepython = python3
setenv =
DJANGO_SETTINGS_MODULE=sahara_dashboard.test.settings
commands =
pip install django>=2.1,<2.2
{[unit_tests]commands}
[testenv:py27integration]
basepython = python2.7