[tox] envlist = docs,linters minversion = 2.9 skipsdist = True [testenv] basepython = python3 setenv = VIRTUAL_ENV={envdir} OS_STDOUT_CAPTURE=1 OS_STDERR_CAPTURE=1 OS_TEST_TIMEOUT=60 LC_ALL=C DOCS_BUILD_CONTEXT=starlingx deps = -r{toxinidir}/test-requirements.txt [testenv:prebuild-docs] commands = git clean -dfx doc/source/fault-mgmt/ bash ./dirtyCheck.sh bash ./get-remote-files.sh -c templates/events.sh -o file -f python parser.py -l templates/alarms_template.rst -e tmp/events.yaml -s 100,200,300,400,500,700,800,900 -ts = -type Alarm -outputPath doc/source/fault-mgmt/kubernetes/ -sort Yes -product starlingx -replace "|,OR" python parser.py -l templates/logs_template.rst -e tmp/events.yaml -s 100,200,300,400,500,700,800,900 -ts = -type Log -outputPath doc/source/fault-mgmt/kubernetes/ -sort Yes -product starlingx -replace "|,OR" python parser.py -l templates/alarms_template.rst -e tmp/events.yaml -s 100,200,300,400,500,700,800,900 -ts = -type Alarm -outputPath doc/source/fault-mgmt/openstack/ -sort Yes -product openstack -replace "|,OR" python parser.py -l templates/logs_template.rst -e tmp/events.yaml -s 100,200,300,400,500,700,800,900 -ts = -type Log -outputPath doc/source/fault-mgmt/openstack/ -sort Yes -product openstack -replace "|,OR" bash ./normalize-includes.sh bash ./dup-abbr-check.sh bash ./fetch-ports-files.sh python py_2_xlsx.py tmp/platform_firewall.py tmp/constants.py tmp/FW_PORTS.xlsx python xlst_2_csv.py tmp/FW_PORTS.xlsx doc/source/shared/FW_PORTS.csv --columns Source Port Protocol Network Desc HTTPS Note _stx --sort_orders Port=asc --filters _stx=y [testenv:postbuild-docs] commands = git clean -dfx doc/source/fault-mgmt/ git restore doc/source/dist_cloud/kubernetes/* bash hw-updates.sh # bash hide-empty-rows.sh doc/build/html bash -c 'python hide-empty-rows.py $(grep -rl --include="*.html" "post-build-hide-empty-table-rows" doc/build/html/*)' bash -c 'python hide-table-columns.py $(grep -rl --include=*.html --exclude=doc_contribute_guide.html remove-column-from-html-table doc/build/html/*)' bash htmlChecks.sh doc/build/html [testenv:docs] deps = # -c{env:TOX_CONSTRAINTS_FILE:doc/upper-constraints.txt} -r{toxinidir}/doc/requirements.txt commands = {[testenv:prebuild-docs]commands} sphinx-build -a -E -W --keep-going -d doc/build/doctrees -t starlingx -t openstack -t virtual -b html doc/source doc/build/html {posargs} {[testenv:postbuild-docs]commands} # Note: The dev env for the docs team uses a version of tox that does not yet support allowlist_externals allowlist_externals = bash ./hide-empty-rows.sh ./htmlChecks.sh ./get-remote-files.sh ./fetch-ports-files.sh ./py_2_xlsx.py ./xlst_2_csv.py git # hw-updates.sh [testenv:singledoc] deps = # -c{env:TOX_CONSTRAINTS_FILE:doc/upper-constraints.txt} -r{toxinidir}/doc/requirements.txt commands = {[testenv:prebuild-docs]commands} sphinx-build -a -E -W --keep-going -d doc/build/doctrees -t starlingx -t openstack -b singlehtml doc/source doc/build/singlepage {posargs} {[testenv:postbuild-docs]commands} allowlist_externals = bash ./hide-empty-rows.sh ./htmlChecks.sh ./get-remote-files.sh git [testenv:api-ref] deps = {[testenv:docs]deps} commands = rm -rf api-ref/build sphinx-build -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html allowlist_externals = rm [testenv:linters] allowlist_externals = bash commands = bash -c "find {toxinidir} \ \( -name .tox -prune \) \ -o -type f -name '*.yaml' \ -print0 | xargs -0 yamllint -d '\{extends: relaxed, rules: \{line-length: \{max: 260\}\}\}'" # -print0 | xargs -0 yamllint" [testenv:venv] commands = {posargs} [testenv:newfile] passenv=PWD commands = bash -c "echo Running in {env:PWD}" bash new-topic.sh {env:PWD} {toxinidir} allowlist_externals = ./new-topic.sh bash [testenv:picks] commands = ./pickCompare.sh allowlist_externals = ./pickCompare.sh bash [testenv:linkcheck] deps = -r{toxinidir}/doc/requirements.txt commands = sphinx-build -a -E -W --keep-going -d doc/build/doctrees -t starlingx -t openstack -b linkcheck doc/source doc/build/linkcheck {posargs} [testenv:spellcheck] deps = -r{toxinidir}/doc/requirements.txt sphinxcontrib-spelling==7.3.2 commands = sphinx-build -a -E --keep-going -d doc/build/doctrees -t starlingx -t openstack -t use_spellext -b spelling doc/source doc/build/spelling {posargs}