mirror of
https://github.com/linux-system-roles/network.git
synced 2026-01-23 02:15:17 +00:00
adds a github actions tox workflow for CI testing, since travis is discontinuing support for open source projects Signed-off-by: Rich Megginson <rmeggins@redhat.com>
199 lines
4.8 KiB
INI
199 lines
4.8 KiB
INI
# SPDX-License-Identifier: MIT
|
|
[tox]
|
|
envlist =
|
|
black, pylint, flake8, yamllint
|
|
py{26,27,36,37,38},
|
|
collection, custom
|
|
skipsdist = true
|
|
skip_missing_interpreters = true
|
|
|
|
[testenv]
|
|
passenv = *
|
|
basepython = python3
|
|
changedir = {toxinidir}/tests
|
|
# List common dependencies for Python interpreters here:
|
|
setenv =
|
|
PYTHONPATH = {toxinidir}/library:{toxinidir}/module_utils
|
|
LC_ALL = C.UTF-8
|
|
SRC_MODULE_UTILS_DIR = {envsitepackagesdir}/ansible/module_utils
|
|
DEST_MODULE_UTILS_DIR = {toxinidir}/module_utils
|
|
deps =
|
|
py{26,27,36,37,38}: pytest-cov
|
|
py{27,36,37,38}: pytest>=3.5.1
|
|
py26: pytest
|
|
py{26,27,36,37,38}: -rpytest_extra_requirements.txt
|
|
whitelist_externals =
|
|
bash
|
|
commands =
|
|
bash {toxinidir}/.travis/runpytest.sh \
|
|
--durations=5 \
|
|
--cov={toxinidir}/library --cov={toxinidir}/module_utils \
|
|
--cov-report=html:htmlcov-{envname} \
|
|
--cov-report=term \
|
|
{posargs} \
|
|
unit
|
|
|
|
[base]
|
|
|
|
[testenv:py26]
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:2.6}
|
|
install_command =
|
|
pip install {opts} {packages}
|
|
list_dependencies_command =
|
|
pip freeze
|
|
basepython = python2.6
|
|
|
|
[testenv:py27]
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:2.7}
|
|
basepython = python2.7
|
|
|
|
[testenv:py36]
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:3.6}
|
|
basepython = python3.6
|
|
|
|
[testenv:py37]
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:3.7}
|
|
basepython = python3.7
|
|
|
|
[testenv:py38]
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:3.8}
|
|
basepython = python3.8
|
|
|
|
[testenv:black]
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:3.6}
|
|
basepython = python3.6
|
|
passenv = RUN_BLACK_*
|
|
changedir = {toxinidir}
|
|
deps =
|
|
black
|
|
commands =
|
|
bash {toxinidir}/.travis/runblack.sh --check --diff .
|
|
|
|
[testenv:pylint]
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:2.7}
|
|
basepython = python2.7
|
|
passenv = RUN_PYLINT_*
|
|
changedir = {toxinidir}
|
|
deps =
|
|
ansible
|
|
colorama
|
|
pylint>=1.8.4
|
|
-rpylint_extra_requirements.txt
|
|
commands =
|
|
bash {toxinidir}/.travis/runpylint.sh --errors-only {posargs}
|
|
|
|
[testenv:flake8]
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:2.7}
|
|
basepython = python2.7
|
|
passenv = RUN_FLAKE8_*
|
|
changedir = {toxinidir}
|
|
deps =
|
|
flake8>=3.5
|
|
commands =
|
|
bash {toxinidir}/.travis/runflake8.sh {posargs} .
|
|
|
|
[testenv:yamllint]
|
|
changedir = {toxinidir}
|
|
deps = yamllint
|
|
commands = yamllint .
|
|
|
|
[testenv:coveralls]
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:coveralls}
|
|
passenv = TRAVIS TRAVIS_*
|
|
deps =
|
|
coveralls
|
|
commands =
|
|
bash {toxinidir}/.travis/runcoveralls.sh {posargs}
|
|
|
|
[molecule_common]
|
|
changedir = {toxinidir}
|
|
deps =
|
|
{env:LSR_ANSIBLE_DEP:ansible}
|
|
docker{env:LSR_MOLECULE_DOCKER_VERSION:}
|
|
molecule<3
|
|
selinux
|
|
-rmolecule_extra_requirements.txt
|
|
runsyspycmd = {toxinidir}/.travis/runsyspycmd.sh
|
|
|
|
[testenv:molecule_version]
|
|
changedir = {[molecule_common]changedir}
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:molecule}
|
|
deps =
|
|
{[molecule_common]deps}
|
|
commands =
|
|
bash {[molecule_common]runsyspycmd} molecule --version
|
|
bash {[molecule_common]runsyspycmd} ansible --version
|
|
|
|
[testenv:molecule_lint]
|
|
changedir = {[molecule_common]changedir}
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:molecule}
|
|
deps =
|
|
{[molecule_common]deps}
|
|
commands =
|
|
bash {[molecule_common]runsyspycmd} \
|
|
molecule lint -s {env:LSR_MSCENARIO:default} {posargs}
|
|
|
|
[testenv:molecule_syntax]
|
|
changedir = {[molecule_common]changedir}
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:molecule}
|
|
deps =
|
|
{[molecule_common]deps}
|
|
commands =
|
|
bash {[molecule_common]runsyspycmd} \
|
|
molecule syntax -s {env:LSR_MSCENARIO:default} {posargs}
|
|
|
|
[testenv:molecule_test]
|
|
changedir = {[molecule_common]changedir}
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:molecule}
|
|
deps =
|
|
{[molecule_common]deps}
|
|
commands =
|
|
bash {[molecule_common]runsyspycmd} \
|
|
molecule test -s {env:LSR_MSCENARIO:default} {posargs}
|
|
|
|
[testenv:molecule]
|
|
changedir = {[molecule_common]changedir}
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:molecule}
|
|
deps =
|
|
{[molecule_common]deps}
|
|
commands =
|
|
{[testenv:molecule_version]commands}
|
|
{[testenv:molecule_lint]commands}
|
|
{[testenv:molecule_syntax]commands}
|
|
{[testenv:molecule_test]commands}
|
|
|
|
[testenv:collection]
|
|
changedir = {toxinidir}
|
|
ansible_python_interpreter = /usr/bin/python3
|
|
deps =
|
|
ruamel.yaml
|
|
ansible
|
|
jmespath
|
|
commands =
|
|
bash {toxinidir}/.travis/runcollection.sh {toxworkdir}
|
|
|
|
[testenv:custom]
|
|
changedir = {toxinidir}
|
|
envdir = {toxworkdir}/env-{env:TRAVIS_PYTHON_VERSION:custom}
|
|
deps =
|
|
-rcustom_requirements.txt
|
|
commands =
|
|
bash {toxinidir}/.travis/custom.sh
|
|
|
|
[pytest]
|
|
addopts = -rxs
|
|
|
|
[flake8]
|
|
show_source = true
|
|
max-line-length = 88
|
|
ignore = E402,W503
|
|
exclude = .venv,.tox
|
|
statistics = true
|
|
#verbose = 3
|
|
|
|
[pylint]
|
|
max-line-length = 88
|
|
disable = wrong-import-position
|
|
|
|
[pycodestyle]
|
|
max-line-length = 88
|