0c8ca24e5b
This builds, installs and cleans some of the SM components, plus adds a DevStack job and a build.sh script to build components outside DevStack. It uses the 'new' DevStack base job flock-devstack-base directly. Also some interesting work-arounds were required to build sm-common and sm-db, need to sort out the differences between CentOS 7.5 and Ubuntu Xenial. Fixed a couple of occurrances of this error: sm_db_service_domain_neighbors.c:311:25: error: ISO C++ forbids comparison between pointer and integer [-Werror=permissive] if( '\0' != record->orchestration ) ^~~~~~~~~~~~~ 02Apr2019 - Add new skips for flake8 after upstream release 03Apr2019 - Merge with https://review.openstack.org/#/c/647490/2, at this point there is not much reason to do this in two steps. Change-Id: I33c44a764295e8e0a7ae4771ea02e950f06bf2a2 Signed-off-by: Dean Troyer <dtroyer@gmail.com>
134 lines
4.2 KiB
INI
134 lines
4.2 KiB
INI
[tox]
|
||
envlist = linters,pep8
|
||
minversion = 2.3
|
||
skipsdist = True
|
||
|
||
[testenv]
|
||
install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {opts} {packages}
|
||
setenv = VIRTUAL_ENV={envdir}
|
||
OS_STDOUT_CAPTURE=1
|
||
OS_STDERR_CAPTURE=1
|
||
OS_TEST_TIMEOUT=60
|
||
deps = -r{toxinidir}/test-requirements.txt
|
||
whitelist_externals = reno
|
||
|
||
[testenv:linters]
|
||
basepython = python2.7
|
||
deps = {[testenv]deps}
|
||
eventlet
|
||
httplib2
|
||
iso8601
|
||
jsonpatch
|
||
keystonemiddleware
|
||
kombu
|
||
MySQL-python
|
||
oslo.config
|
||
pecan
|
||
prettytable
|
||
psutil
|
||
sqlalchemy
|
||
sqlalchemy-migrate
|
||
wsme
|
||
pylint
|
||
whitelist_externals = bash
|
||
commands =
|
||
bash -c "find {toxinidir} \
|
||
-not \( -type d -name .?\* -prune \) \
|
||
-type f \
|
||
-not -name \*~ \
|
||
-not -name \*.md \
|
||
\( \
|
||
-name \*.sh \
|
||
-or -not -wholename \*/devstack/files/\* \
|
||
-wholename \*/devstack/\* \
|
||
\) \
|
||
-print0 | xargs -0 bashate -v"
|
||
bash -c "find {toxinidir} \
|
||
\( -name middleware/io-monitor/recipes-common/io-monitor/io-monitor/io_monitor/test-tools/yaml/* -prune \) \
|
||
-o \( -name .tox -prune \) \
|
||
-o -type f -name '*.yaml' \
|
||
-print0 | xargs -0 yamllint"
|
||
pylint --rcfile=./pylint.rc --extension-pkg-whitelist=greenlet \
|
||
./service-mgmt-api/sm-api/sm_api/ \
|
||
./service-mgmt-tools/sm-tools/sm_tools/ \
|
||
./service-mgmt-client/sm-client/sm_client/
|
||
|
||
[flake8]
|
||
# The following are being suppressed for now
|
||
# E402 module level import not at top of file
|
||
# - hacking codes -
|
||
# H102: license header not found
|
||
# H104: File contains nothing but comments
|
||
# H105: Don't use author tags
|
||
# H306: imports not in alphabetical order
|
||
# H401: docstring should not start with a space
|
||
# H403: multi line docstrings should end on a new line
|
||
# H404: multi line docstring should start without a leading new line
|
||
# H405: multi line docstring summary not separated with an empty line
|
||
# H501: Do not use locals() for string formatting
|
||
# - errors -
|
||
# F811 redefinition of unused '<foo>' from line <x>
|
||
# F821 undefined name 'e'
|
||
# - bugbear -
|
||
# B006 Do not use mutable data structures for argument defaults. (python3)
|
||
# B008 Do not perform calls in argument defaults. The call is performed only once at function definition time.
|
||
# B009: Do not call getattr with a constant attribute value
|
||
# B010: Do not call setattr with a constant attribute value
|
||
ignore= E402,
|
||
H102,H104,H105,H106,H306,H401,H403,H404,H405,H501,
|
||
F811,F821,
|
||
B006,B008,B009,B010
|
||
# Enable checks which are off by default
|
||
# H106 Don’t put vim configuration in source files (off by default). SHOULD BE ENABLED.
|
||
# H203 Use assertIs(Not)None to check for None (off by default).
|
||
# H904 Delay string interpolations at logging calls (off by default). SHOULD BE ENABLED.
|
||
enable-extensions = H203
|
||
max-line-length = 110
|
||
|
||
[testenv:pep8]
|
||
basepython = python3
|
||
usedevelop = False
|
||
skip_install = True
|
||
deps =
|
||
hacking
|
||
flake8-bugbear<=19.3.0
|
||
flake8 < 3.6.0
|
||
commands =
|
||
flake8
|
||
|
||
[testenv:venv]
|
||
basepython = python3
|
||
commands = {posargs}
|
||
|
||
[testenv:docs]
|
||
basepython = python3
|
||
deps = -r{toxinidir}/doc/requirements.txt
|
||
commands =
|
||
rm -rf doc/build
|
||
sphinx-build -a -E -W -d doc/build/doctrees -b html doc/source doc/build/html
|
||
whitelist_externals = rm
|
||
|
||
[testenv:releasenotes]
|
||
basepython = python3
|
||
deps = -r{toxinidir}/doc/requirements.txt
|
||
commands =
|
||
rm -rf releasenotes/build
|
||
sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
||
whitelist_externals = rm
|
||
|
||
[testenv:newnote]
|
||
basepython = python3
|
||
# Re-use the releasenotes venv
|
||
envdir = {toxworkdir}/releasenotes
|
||
deps = -r{toxinidir}/doc/requirements.txt
|
||
commands = reno new {posargs}
|
||
|
||
[testenv:api-ref]
|
||
basepython = python3
|
||
deps =
|
||
-r{toxinidir}/doc/requirements.txt
|
||
commands =
|
||
rm -rf api-ref/build
|
||
sphinx-build -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html
|
||
whitelist_externals = rm
|