Sebastian Gode 458b8ca58f Update tox.ini && conf.py file
Performed-by: gitea/infra/otc-metadata/tools/generate_doc_confpy.py
2024-12-10 13:29:53 +00:00

181 lines
5.4 KiB
INI

[tox]
minversion = 3.1
envlist = py39,pep8
skipsdist = True
ignore_basepython_conflict = True
[testenv]
usedevelop = True
install_command = pip install {opts} {packages}
deps =
-r{toxinidir}/requirements.txt
commands = stestr run {posargs}
stestr slowest
[testenv:pep8]
allowlist_externals =
doc8
commands =
doc8 doc/source README.rst
[testenv:venv]
deps =
-r{toxinidir}/requirements.txt
commands = {posargs}
# This env is invoked in the periodic pipeline and is therefore responsible to
# build all relevant docs at once.
[testenv:docs]
deps =
-r{toxinidir}/doc/requirements.txt
-c https://raw.githubusercontent.com/opentelekomcloud-docs/docs-constraints/main/constraints.txt
allowlist_externals =
mkdir
cp
sh
rm
sphinx-build
commands =
rm -rf doc/build/html doc/build/html_temp doc/build/doctrees
sphinx-build -a -E -W -d doc/build/doctrees -b html doc/source doc/build/html_temp
sphinx-minify --input-directory doc/build/html_temp/ --output-directory doc/build/html
{[testenv:api-ref]commands}
{[testenv:json-api-ref]commands}
{[testenv:umn]commands}
{[testenv:json-umn]commands}
[testenv:pdf-docs]
deps =
{[testenv:docs]deps}
{[testenv:bindeps]deps}
allowlist_externals =
rm
mkdir
wget
make
bash
cp
commands =
mkdir -p doc/build/pdf
{[testenv:bindeps]commands}
mkdir -p {toxinidir}/_templates
wget -O {toxinidir}/_templates/longtable.tex.jinja https://gitea.eco.tsi-dev.otc-service.com/infra/docs-templates/raw/branch/main/templates/longtable.tex.jinja
wget -O {toxinidir}/_templates/tabular.tex.jinja https://gitea.eco.tsi-dev.otc-service.com/infra/docs-templates/raw/branch/main/templates/tabular.tex.jinja
wget -O {toxinidir}/_templates/tabulary.tex.jinja https://gitea.eco.tsi-dev.otc-service.com/infra/docs-templates/raw/branch/main/templates/tabulary.tex.jinja
{[testenv:api-ref-pdf-docs]commands}
{[testenv:umn-pdf-docs]commands}
# HTML version
[testenv:api-ref]
deps = {[testenv:docs]deps}
allowlist_externals =
cp
mkdir
commands =
sphinx-build -W --keep-going -b html api-ref/source doc/build/html_temp/api-ref
sphinx-minify --input-directory doc/build/html_temp/api-ref --output-directory doc/build/html/api-ref
mkdir -p api-ref/build/html
cp -av doc/build/html/api-ref api-ref/build/html
# Json version (for search)
[testenv:json-api-ref]
deps = {[testenv:docs]deps}
allowlist_externals =
cp
mkdir
sh
commands =
sphinx-build -W --keep-going -b json api-ref/source doc/build/json/api-ref
# Drop data useless for the search - wrap it also with sh/xargs due to bugs
# in tox
sh -c "find doc/build/json -type d -and '(' -name '_images' -or -name '_static' -or -name '_sources' ')' -print0 | xargs -0 rm -rf"
mkdir -p api-ref/build/json
cp -av doc/build/json/api-ref api-ref/build/json
# PDF version
[testenv:api-ref-pdf-docs]
deps = {[testenv:docs]deps}
allowlist_externals =
rm
mkdir
make
bash
cp
commands =
rm -rf api-ref/build/pdf
cp -r {toxinidir}/_templates api-ref/source/_templates/
sphinx-build -W --keep-going -b latex api-ref/source api-ref/build/pdf/
bash -c "for f in api-ref/build/pdf/*.gif; do convert $f $\{f/%gif/png\}; done || true"
bash -c "for f in api-ref/build/pdf/*.tex; do sed -iorig 's/\.gif//g' $f; done"
make -C api-ref/build/pdf
mkdir -p doc/build/pdf
cp api-ref/build/pdf/rfs-api-ref.pdf doc/build/pdf/
# HTML version
[testenv:umn]
deps = {[testenv:docs]deps}
allowlist_externals =
cp
mkdir
commands =
sphinx-build -W --keep-going -b html umn/source doc/build/html_temp/umn
sphinx-minify --input-directory doc/build/html_temp/umn --output-directory doc/build/html/umn
mkdir -p umn/build/html
cp -av doc/build/html/umn umn/build/html
# Json version (for search)
[testenv:json-umn]
deps = {[testenv:docs]deps}
allowlist_externals =
cp
mkdir
sh
commands =
sphinx-build -W --keep-going -b json umn/source doc/build/json/umn
# Drop data useless for the search - wrap it also with sh/xargs due to bugs
# in tox
sh -c "find doc/build/json -type d -and '(' -name '_images' -or -name '_static' -or -name '_sources' ')' -print0 | xargs -0 rm -rf"
mkdir -p umn/build/json
cp -av doc/build/json/umn umn/build/json
# PDF version
[testenv:umn-pdf-docs]
deps = {[testenv:docs]deps}
allowlist_externals =
rm
mkdir
make
bash
cp
commands =
rm -rf umn/build/pdf
cp -r {toxinidir}/_templates umn/source/_templates/
sphinx-build -W --keep-going -b latex umn/source umn/build/pdf/
bash -c "for f in umn/build/pdf/*.gif; do convert $f $\{f/%gif/png\}; done || true"
bash -c "for f in umn/build/pdf/*.tex; do sed -iorig 's/\.gif//g' $f; done"
make -C umn/build/pdf
mkdir -p doc/build/pdf
cp umn/build/pdf/rfs-umn.pdf doc/build/pdf/
[testenv:bindeps]
deps =
bindep
allowlist_externals =
wget
rm
bash
commands =
rm -rf {toxinidir}/bindep.txt
rm -rf {toxinidir}/packages.txt
wget -O {toxinidir}/bindep.txt https://raw.githubusercontent.com/opentelekomcloud/otcdocstheme/main/bindep.txt
bash -c "bindep test -b -f {toxinidir}/bindep.txt > {toxinidir}/packages.txt || true"
bash -c 'if [ -s {toxinidir}/packages.txt ]; then if command -v apt &>/dev/null; then apt update && xargs apt install --no-install-recommends -y < {toxinidir}/packages.txt; fi; fi'
bash -c 'if [ -s {toxinidir}/packages.txt ]; then if command -v dnf &>/dev/null; then dnf install -y $(cat {toxinidir}/packages.txt); fi; fi'
[doc8]
ignore = D001
extensions = .rst, .yaml