Files
api-site/tox.ini
Andreas Jaeger 3330718f4b Rework RST building
Use the same shell scripts like openstack-manuals for building of RST
files. This simplifies the tox.ini file and allows easier adding of new
tags.

This now build dotnet, fog, and pkgcloud versions as draft documents and
continues to publish the libcloud version.

Change-Id: Id5deebbb54904a44691104e19ef60f15a14c0f7c
2015-07-12 12:03:17 +02:00

120 lines
3.6 KiB
INI

[tox]
minversion = 1.6
envlist = checkniceness,checksyntax,checkdeletions,checkbuild,checklinks
skipsdist = True
[testenv]
basepython = python2.7
setenv =
VIRTUAL_ENV={envdir}
deps = -r{toxinidir}/test-requirements.txt
whitelist_externals =
bash
mkdir
mv
rsync
[testenv:venv]
commands = {posargs}
[testenv:checklinks]
commands = openstack-doc-test --check-links {posargs}
[testenv:checkniceness]
commands =
openstack-doc-test --check-niceness {posargs}
doc8 firstapp
[testenv:checksyntax]
commands =
openstack-doc-test --check-syntax {posargs}
# Check that .po and .pot files are valid:
bash -c "find api* -type f -regex '.*\.pot?' -print0|xargs -0 -n 1 msgfmt --check-format -o /dev/null"
[testenv:checkdeletions]
commands = openstack-doc-test --check-deletions {posargs}
[testenv:checkbuild]
commands =
# Build and copy RST Guides
{toxinidir}/tools/build-all-rst.sh
# Build DocBook Guides
openstack-doc-test --check-build {posargs}
[testenv:publishdocs]
# Prepare documents (without www) so that they can get published on
# docs.openstack.org with just copying publish-docs/* over.
commands =
openstack-doc-test --check-build --publish --only-book api-quick-start
[testenv:publishdocs-api]
# Prepare documents (without www) so that they can get published on
# developer.openstack.org with just copying publish-docs/api-ref over.
commands =
openstack-doc-test --check-build --publish --only-book api-ref --only-book api-ref-guides
# We need to move api-ref-guides to the proper place:
mv publish-docs/api-ref-guides publish-docs/api-ref/
# Build and copy RST Guides
{toxinidir}/tools/build-all-rst.sh
# Delete firstapp draft documents
rm -rf publish-docs/draft/
[testenv:checklang]
# openstack-generate-docbook needs xml2po which cannot be installed in
# the venv. Since it's installed in the system, let's use
# sitepackages.
sitepackages=True
whitelist_externals = doc-tools-check-languages
commands = doc-tools-check-languages doc-tools-check-languages.conf test all
[testenv:buildlang]
# Run as "tox -e buildlang -- $LANG"
# openstack-generate-docbook needs xml2po which cannot be installed
# in the venv. Since it's installed in the system, let's
# use sitepackages.
sitepackages=True
whitelist_externals = doc-tools-check-languages
commands = doc-tools-check-languages doc-tools-check-languages.conf test {posargs}
[testenv:publishlang]
# openstack-generate-docbook needs xml2po which cannot be installed
# in the venv. Since it's installed in the system, let's
# use sitepackages.
sitepackages=True
whitelist_externals = doc-tools-check-languages
commands = doc-tools-check-languages doc-tools-check-languages.conf publish all
[testenv:docs]
commands =
{toxinidir}/tools/build-all-rst.sh
[testenv:firstapp-libcloud]
commands = sphinx-build -E -W -t libcloud firstapp/source firstapp/build-libcloud/html
[testenv:firstapp-jclouds]
commands = sphinx-build -E -W -t jclouds firstapp/source firstapp/build-jclouds/html
[testenv:firstapp-fog]
commands = sphinx-build -E -W -t fog firstapp/source firstapp/build-fog/html
[testenv:firstapp-dotnet]
commands = sphinx-build -E -W -t dotnet firstapp/source firstapp/build-dotnet/html
[testenv:firstapp-node]
commands = sphinx-build -E -W -t node firstapp/source firstapp/build-node/html
[testenv:firstapp-openstacksdk]
commands = sphinx-build -E -W -t openstacksdk firstapp/source firstapp/build-openstacksdk/html
[testenv:firstapp-todos]
commands = sphinx-build -E -W -t libcloud firstapp/source firstapp/build/html
[doc8]
# Settings for doc8:
# Ignore target directories
ignore-path = firstapp/build*
# File extensions to use
extensions = .rst,.txt
# Ignore lines longer than 79 chars
ignore = D001