080ecb4579
Ansible changed, then unchanged their behavior around file modes, but being explicit is likely a good idea to handle any new future changes from ansible. We set modes generously (to 755 for dirs and 644 for files) to avoid unexpected access problems. Note that depending on the perms in AFS this may cause a perms ot update on existing dirs but that should be fine as long as we aren't making them more restrictive. Finally we skip two cases where modes are required by the linting rule because they are tarball extraction steps and applying a single mode to all dirs and files in a tarball doens't make a ton of sense. Includes bumping linter configuration. Change-Id: Iacf41549928ba7f05f0f71a79ddef1b6e1154e2a Co-authored-by: Sorin Sbarnea <ssbarnea@redhat.com>
58 lines
1.8 KiB
INI
58 lines
1.8 KiB
INI
[tox]
|
|
minversion = 1.6
|
|
skipsdist = True
|
|
envlist = linters
|
|
|
|
[testenv]
|
|
basepython = python3
|
|
install_command = pip install {opts} {packages}
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
commands = stestr run {posargs}
|
|
stestr slowest
|
|
|
|
[testenv:py27]
|
|
basepython = python2.7
|
|
|
|
[testenv:docs]
|
|
commands =
|
|
sphinx-build -E -W -d doc/build/doctrees -b html doc/source/ doc/build/html
|
|
|
|
[testenv:linters]
|
|
setenv =
|
|
ANSIBLE_LIBRARY= {envsitepackagesdir}/zuul/ansible/base/library
|
|
ANSIBLE_ACTION_PLUGINS = {envsitepackagesdir}/zuul/ansible/base/actiongeneral
|
|
# NOTE(pabelanger): if you'd like to run tox -elinters locally,
|
|
# you'll need to export ANSIBLE_ROLES_PATH pointing to the required
|
|
# repos.
|
|
#
|
|
# We take a guess that zuul-jobs and openstack-zuul-jobs will be
|
|
# checked out in the directory above us (i.e. alongside
|
|
# project-config). You may need to override this. Make sure
|
|
# they're up to date too!
|
|
#
|
|
# see openstack-zuul-jobs-linters job for more information.
|
|
ANSIBLE_ROLES_PATH = {env:ANSIBLE_ROLES_PATH:{toxinidir}/../../zuul/zuul-jobs/roles:roles}
|
|
whitelist_externals = bash
|
|
commands =
|
|
flake8 {posargs}
|
|
{toxinidir}/tools/check_jobs_documented.py
|
|
# Ansible lint
|
|
ansible-lint -v
|
|
# Ansible Syntax Check
|
|
bash -c "find playbooks -type f -regex '.*.ya?ml' -exec \
|
|
ansible-playbook --syntax-check -i {toxinidir}/tests/inventory \
|
|
\{\} + > /dev/null"
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[flake8]
|
|
# These are ignored intentionally in openstack-infra projects;
|
|
# please don't submit patches that solely correct them or enable them.
|
|
# E402 - ansible modules put documentation before imports. Align to ansible.
|
|
# W504 - line break after binary operator, we cannot have both
|
|
# W503 and W504 enabled
|
|
ignore = E125,E129,E402,E741,W504,H
|
|
show-source = True
|
|
exclude = .venv,.tox,dist,doc,build,*.egg
|