
Bindep is a tool for checking the presence of binary packages needed to use an application / library. It started life as a way to make it easier to set up a development environment for OpenStack projects. Infra has been looking to drop the global bindep_fallback.txt [1][2] file for all OpenStack projects, they recommend that projects maintain their own with packages as necessary. [1] http://lists.openstack.org/pipermail/openstack-infra/2018-April/005926.html [2] http://lists.openstack.org/pipermail/openstack-discuss/2019-June/006888.html Change-Id: I1824f132b0ffadc6c9179582d37295f3abed355f (cherry picked from commit 1709fd7fc222f81bcbedc05e683d2eec5337edcc) (cherry picked from commit 6ac1730127ddf2f8113e791c3740909bbe05837d) (cherry picked from commit 4fbe70fbb6c12eb06bc026e043ed2a27572b5da1) (cherry picked from commit 148e4730063a5807e215d497a531b2da65225e68)
138 lines
4.2 KiB
INI
138 lines
4.2 KiB
INI
[tox]
|
|
minversion = 2.0
|
|
skipsdist = True
|
|
envlist = py35,py27,pep8
|
|
|
|
[testenv]
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
usedevelop = True
|
|
install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/pike} {opts} {packages}
|
|
whitelist_externals = find
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
commands =
|
|
find . -type f -name "*.py[c|o]" -delete
|
|
ostestr {posargs}
|
|
|
|
[testenv:releasenotes]
|
|
whitelist_externals = rm
|
|
commands =
|
|
rm -rf releasenotes/build
|
|
sphinx-build -a -E -W -d releasenotes/build/doctrees \
|
|
-b html releasenotes/source releasenotes/build/html
|
|
|
|
[testenv:install-guide]
|
|
# builds to install-guide/build/html
|
|
whitelist_externals = rm
|
|
commands =
|
|
rm -rf install-guide/build
|
|
sphinx-build -a -E -W -d install-guide/build/doctrees -b html install-guide/source install-guide/build/html
|
|
|
|
[testenv:debug]
|
|
commands = oslo_debug_helper {posargs}
|
|
|
|
[testenv:debug-py27]
|
|
basepython = python2.7
|
|
commands = oslo_debug_helper {posargs}
|
|
|
|
[testenv:debug-py35]
|
|
basepython = python3.5
|
|
commands = oslo_debug_helper {posargs}
|
|
|
|
[testenv:pep8]
|
|
commands =
|
|
flake8 {posargs}
|
|
# Run bashate during pep8 runs to ensure violations are caught by
|
|
# the check and gate queues.
|
|
bashate -i E006,E042,E043 \
|
|
tools/enable-pre-commit-hook.sh \
|
|
contrib/ci/pre_test_hook.sh \
|
|
contrib/ci/post_test_hook.sh \
|
|
devstack/plugin.sh \
|
|
devstack/upgrade/from-mitaka/upgrade-manila \
|
|
devstack/upgrade/resources.sh \
|
|
devstack/upgrade/shutdown.sh \
|
|
devstack/upgrade/upgrade.sh \
|
|
tools/cover.sh \
|
|
tools/check_logging.sh \
|
|
run_tests.sh
|
|
{toxinidir}/tools/check_exec.py {toxinidir}/manila
|
|
{toxinidir}/tools/check_exec.py {toxinidir}/manila_tempest_tests
|
|
{toxinidir}/tools/check_logging.sh {toxinidir}/manila
|
|
|
|
[testenv:genconfig]
|
|
whitelist_externals = bash
|
|
commands =
|
|
oslo-config-generator --config-file etc/oslo-config-generator/manila.conf
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[testenv:docs]
|
|
whitelist_externals = rm
|
|
commands =
|
|
rm -rf doc/build
|
|
python setup.py build_sphinx
|
|
# Ignore D001 since we allow lines in excess of 79 characters.
|
|
doc8 --ignore D001 --ignore-path .tox --ignore-path doc/build --ignore-path manila.egg-info -e txt -e rst
|
|
|
|
[testenv:bindep]
|
|
# Do not install any requirements. We want this to be fast and work even if
|
|
# system dependencies are missing, since it's used to tell you what system
|
|
# dependencies are missing! This also means that bindep must be installed
|
|
# separately, outside of the requirements files, and develop mode disabled
|
|
# explicitly to avoid unnecessarily installing the checked-out repo too (this
|
|
# further relies on "tox.skipsdist = True" above).
|
|
basepython = python3
|
|
deps = bindep
|
|
commands = bindep test
|
|
usedevelop = False
|
|
|
|
[testenv:cover]
|
|
commands = {toxinidir}/tools/cover.sh {posargs}
|
|
|
|
[testenv:fast8]
|
|
commands =
|
|
{toxinidir}/tools/fast8.sh
|
|
|
|
[testenv:pylint]
|
|
basepython = python2.7
|
|
deps = -r{toxinidir}/requirements.txt
|
|
pylint==0.26.0
|
|
whitelist_externals = bash
|
|
commands = bash tools/lintstack.sh
|
|
|
|
[testenv:lint]
|
|
basepython = python2.7
|
|
deps = -r{toxinidir}/requirements.txt
|
|
pylint==0.26.0
|
|
commands = python tools/lintstack.py check
|
|
|
|
[testenv:api-ref]
|
|
# This environment is called from CI scripts to test and publish
|
|
# the API Ref to developer.openstack.org.
|
|
whitelist_externals = rm
|
|
commands =
|
|
rm -rf api-ref/build
|
|
sphinx-build -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html
|
|
|
|
[testenv:dbrevision]
|
|
deps = -r{toxinidir}/requirements.txt
|
|
commands = alembic -c manila/db/migrations/alembic.ini revision -m ""{posargs}
|
|
|
|
[flake8]
|
|
# Following checks are ignored on purpose:
|
|
ignore =
|
|
builtins = _
|
|
# [H106] Don't put vim configuration in source files.
|
|
# [H203] Use assertIs(Not)None to check for None.
|
|
# [H904] Use ',' instead of '%', String interpolation should be delayed to be handled by the logging code,
|
|
# rather than being done at the point of the logging call..
|
|
enable-extensions = H106,H203,H904
|
|
exclude = .git,.tox,.testrepository,.venv,build,cover,dist,doc,*egg,api-ref/build,*/source/conf.py
|
|
|
|
[hacking]
|
|
import_exceptions =
|
|
manila.i18n
|
|
local-check-factory = manila.hacking.checks.factory
|