
* Replace func.func_name with func.__name__: the func_name attribute was removed in Python 3, whereas the __name__ attribute exists on Python 2 and Python 3 * Create INITIATOR_TARGET_MAP using list(set()) to get the same order than the tested code. The exact order is not reliable, it depends on the hash function which is now randomized by default on Python 3. The hash function is also different between Python 2.7 and 3.4. * tox.ini: add test_pure to Python 3.4 Blueprint cinder-python3 Change-Id: I78601278259f1d34ad6ac3458d2dd0a3aca9d77a
178 lines
5.8 KiB
INI
178 lines
5.8 KiB
INI
[tox]
|
|
minversion = 1.6
|
|
skipsdist = True
|
|
envlist = py27,pep8
|
|
|
|
[testenv]
|
|
# Note the hash seed is set to 0 until cinder can be tested with a
|
|
# random hash seed successfully.
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
PYTHONHASHSEED=0
|
|
usedevelop = True
|
|
install_command = pip install {opts} {packages}
|
|
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
|
|
# By default ostestr will set concurrency
|
|
# to ncpu, to specify something else use
|
|
# the concurrency=<n> option.
|
|
# call ie: 'tox -epy27 -- --concurrency=4'
|
|
commands = ostestr {posargs}
|
|
|
|
whitelist_externals = bash
|
|
passenv = http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY
|
|
|
|
[tox:jenkins]
|
|
downloadcache = ~/cache/pip
|
|
|
|
[testenv:py34]
|
|
commands =
|
|
python -m testtools.run \
|
|
cinder.tests.unit.image.test_glance \
|
|
cinder.tests.unit.targets.test_base_iscsi_driver \
|
|
cinder.tests.unit.targets.test_cxt_driver \
|
|
cinder.tests.unit.targets.test_iser_driver \
|
|
cinder.tests.unit.targets.test_lio_driver \
|
|
cinder.tests.unit.targets.test_scst_driver \
|
|
cinder.tests.unit.targets.test_tgt_driver \
|
|
cinder.tests.unit.test_api \
|
|
cinder.tests.unit.test_api_urlmap \
|
|
cinder.tests.unit.test_backup \
|
|
cinder.tests.unit.test_backup_ceph \
|
|
cinder.tests.unit.test_backup_driver_base \
|
|
cinder.tests.unit.test_backup_swift \
|
|
cinder.tests.unit.test_backup_tsm \
|
|
cinder.tests.unit.test_block_device \
|
|
cinder.tests.unit.test_blockbridge \
|
|
cinder.tests.unit.test_cloudbyte \
|
|
cinder.tests.unit.test_cmd \
|
|
cinder.tests.unit.test_conf \
|
|
cinder.tests.unit.test_context \
|
|
cinder.tests.unit.test_db_api \
|
|
cinder.tests.unit.test_dellfc \
|
|
cinder.tests.unit.test_dellsc \
|
|
cinder.tests.unit.test_dellscapi \
|
|
cinder.tests.unit.test_dothill \
|
|
cinder.tests.unit.test_drbdmanagedrv \
|
|
cinder.tests.unit.test_emc_xtremio \
|
|
cinder.tests.unit.test_eqlx \
|
|
cinder.tests.unit.test_evaluator \
|
|
cinder.tests.unit.test_exception \
|
|
cinder.tests.unit.test_glusterfs \
|
|
cinder.tests.unit.test_gpfs \
|
|
cinder.tests.unit.test_hitachi_hbsd_horcm_fc \
|
|
cinder.tests.unit.test_hitachi_hbsd_snm2_fc \
|
|
cinder.tests.unit.test_hitachi_hbsd_snm2_iscsi \
|
|
cinder.tests.unit.test_hitachi_hnas_backend \
|
|
cinder.tests.unit.test_hitachi_hnas_iscsi \
|
|
cinder.tests.unit.test_hitachi_hnas_nfs \
|
|
cinder.tests.unit.test_hp_xp_fc \
|
|
cinder.tests.unit.test_hplefthand \
|
|
cinder.tests.unit.test_huawei_drivers \
|
|
cinder.tests.unit.test_huawei_drivers_compatibility \
|
|
cinder.tests.unit.test_ibm_flashsystem_iscsi \
|
|
cinder.tests.unit.test_ibmnas \
|
|
cinder.tests.unit.test_ibm_xiv_ds8k \
|
|
cinder.tests.unit.test_image_utils \
|
|
cinder.tests.unit.test_infortrend_cli \
|
|
cinder.tests.unit.test_migrations \
|
|
cinder.tests.unit.test_misc \
|
|
cinder.tests.unit.test_netapp_nfs \
|
|
cinder.tests.unit.test_nfs \
|
|
cinder.tests.unit.test_nimble \
|
|
cinder.tests.unit.test_pure \
|
|
cinder.tests.unit.test_qos_specs \
|
|
cinder.tests.unit.test_quota \
|
|
cinder.tests.unit.test_rbd \
|
|
cinder.tests.unit.test_remotefs \
|
|
cinder.tests.unit.test_replication \
|
|
cinder.tests.unit.test_san \
|
|
cinder.tests.unit.test_scality \
|
|
cinder.tests.unit.test_service \
|
|
cinder.tests.unit.test_sheepdog \
|
|
cinder.tests.unit.test_smbfs \
|
|
cinder.tests.unit.test_solidfire \
|
|
cinder.tests.unit.test_test \
|
|
cinder.tests.unit.test_test_utils \
|
|
cinder.tests.unit.test_v6000_common \
|
|
cinder.tests.unit.test_vmware_vmdk \
|
|
cinder.tests.unit.test_vmware_volumeops \
|
|
cinder.tests.unit.test_volume_configuration \
|
|
cinder.tests.unit.test_volume_glance_metadata \
|
|
cinder.tests.unit.test_volume_rpcapi \
|
|
cinder.tests.unit.test_volume_transfer \
|
|
cinder.tests.unit.test_volume_types \
|
|
cinder.tests.unit.test_volume_types_extra_specs \
|
|
cinder.tests.unit.test_volume_utils \
|
|
cinder.tests.unit.volume.flows.test_create_volume_flow \
|
|
cinder.tests.unit.windows.test_smbfs \
|
|
cinder.tests.unit.windows.test_vhdutils \
|
|
cinder.tests.unit.windows.test_windows \
|
|
cinder.tests.unit.windows.test_windows_remotefs \
|
|
cinder.tests.unit.windows.test_windows_utils
|
|
|
|
[testenv:pep8]
|
|
commands =
|
|
flake8 {posargs} . cinder/common
|
|
# Check that .po and .pot files are valid:
|
|
bash -c "find cinder -type f -regex '.*\.pot?' -print0|xargs -0 -n 1 msgfmt --check-format -o /dev/null"
|
|
{toxinidir}/tools/config/check_uptodate.sh
|
|
{toxinidir}/tools/check_exec.py {toxinidir}/cinder
|
|
|
|
[testenv:pylint]
|
|
deps = -r{toxinidir}/requirements.txt
|
|
pylint==0.26.0
|
|
commands = bash tools/lintstack.sh
|
|
|
|
[testenv:cover]
|
|
# Also do not run test_coverage_ext tests while gathering coverage as those
|
|
# tests conflict with coverage.
|
|
commands =
|
|
python setup.py testr --coverage \
|
|
--testr-args='^(?!.*test.*coverage).*$'
|
|
|
|
[testenv:genconfig]
|
|
sitepackages = False
|
|
envdir = {toxworkdir}/venv
|
|
commands = {toxinidir}/tools/config/generate_sample.sh from_tox
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[testenv:docs]
|
|
commands = python setup.py build_sphinx
|
|
|
|
[testenv:gendriverlist]
|
|
sitepackages = False
|
|
envdir = {toxworkdir}/venv
|
|
commands = python {toxinidir}/tools/generate_driver_list.py
|
|
|
|
[testenv:bandit]
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
commands = bandit -c tools/bandit.yaml -r cinder -n 5 -ll
|
|
|
|
[flake8]
|
|
# Following checks are ignored on purpose.
|
|
#
|
|
# E251 unexpected spaces around keyword / parameter equals
|
|
# reason: no improvement in readability
|
|
#
|
|
# Due to the upgrade to hacking 0.9.2 the following checking are
|
|
# ignored on purpose for the moment and should be re-enabled.
|
|
#
|
|
# H405
|
|
# Due to the upgrade to hacking 0.10.0 the following checking are
|
|
# ignored on purpose for the moment and should be cleaned up and re-enabled.
|
|
#
|
|
# H105 Don't use author tags
|
|
#
|
|
|
|
ignore = E251,H105
|
|
exclude = .git,.venv,.tox,dist,tools,doc,common,*egg,build
|
|
max-complexity=30
|
|
|
|
[hacking]
|
|
local-check-factory = cinder.hacking.checks.factory
|
|
import_exceptions = cinder.i18n
|