summaryrefslogtreecommitdiff
path: root/tox.ini
blob: 9b3220d91009335f396df46abf3e3ea2802fb5c8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
[tox]
minversion = 2.0
skipsdist = True
envlist = docs,linters,functional


[testenv]
usedevelop = True
install_command =
    pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {opts} {packages}
deps =
    -r{toxinidir}/test-requirements.txt
commands =
    /usr/bin/find . -type f -name "*.pyc" -delete
passenv =
    HOME
    USER
    http_proxy
    HTTP_PROXY
    https_proxy
    HTTPS_PROXY
    no_proxy
    NO_PROXY
whitelist_externals =
    bash
setenv =
    PYTHONUNBUFFERED=1
    ROLE_NAME=memcached_server
    TEST_IDEMPOTENCE=false
    VIRTUAL_ENV={envdir}
    WORKING_DIR={toxinidir}


[testenv:docs]
commands=
    bash -c "rm -rf doc/build"
    doc8 doc
    python setup.py build_sphinx


[doc8]
# Settings for doc8:
extensions = .rst


[testenv:releasenotes]
commands =
    sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html


# environment used by the -infra templated docs job
[testenv:venv]
commands =
    {posargs}


[testenv:pep8]
commands =
    bash -c "{toxinidir}/tests/tests-repo-clone.sh"
    bash -c "{toxinidir}/tests/common/test-pep8.sh"


[flake8]
# Ignores the following rules due to how ansible modules work in general
#     F403 'from ansible.module_utils.basic import *' used;
#          unable to detect undefined names
ignore=F403


[testenv:bashate]
commands =
    bash -c "{toxinidir}/tests/tests-repo-clone.sh"
    bash -c "{toxinidir}/tests/common/test-bashate.sh"


[testenv:ansible]
deps =
    {[testenv]deps}
    -rhttps://git.openstack.org/cgit/openstack/openstack-ansible/plain/global-requirement-pins.txt
    -rhttps://git.openstack.org/cgit/openstack/openstack-ansible-tests/plain/test-ansible-deps.txt


[testenv:ansible-syntax]
deps =
    {[testenv:ansible]deps}
commands =
    bash -c "{toxinidir}/tests/tests-repo-clone.sh"
    bash -c "{toxinidir}/tests/common/test-ansible-syntax.sh"


[testenv:ansible-lint]
deps =
    {[testenv:ansible]deps}
commands =
    bash -c "{toxinidir}/tests/tests-repo-clone.sh"
    bash -c "{toxinidir}/tests/common/test-ansible-lint.sh"


[testenv:functional]
deps =
    {[testenv:ansible]deps}
commands =
    bash -c "{toxinidir}/tests/tests-repo-clone.sh"
    bash -c "{toxinidir}/tests/common/test-ansible-functional.sh"


[testenv:linters]
deps =
    {[testenv:ansible]deps}
commands =
    {[testenv:pep8]commands}
    {[testenv:bashate]commands}
    {[testenv:ansible-lint]commands}
    {[testenv:ansible-syntax]commands}
    {[testenv:docs]commands}