Create tox environment to build pdf documentation

This patch enables building .pdf documentation using new 'pdf-docs'
tox environment. The newly created tox environment creates latex
source codes using sphinx-build and then builds the pdf
documentation using make.

Change-Id: I50d9bfe287e3f02991fdc2e24449d7385c5a8326
Task: 35473
This commit is contained in:
Lukas Piwowarski 2020-09-09 17:26:50 +02:00
parent 023426894a
commit deb2bd5191
6 changed files with 37 additions and 5 deletions

View File

@ -28,6 +28,8 @@ Some of the current functionality exposed from the library includes:
with calling a test runner that emits subunit
* A unified REST Client
* Utility functions:
* skip_because: Skip a test because of a bug
* find_test_caller: Perform stack introspection to find the test caller.
common methods
common methods

5
doc/requirements.txt Normal file
View File

@ -0,0 +1,5 @@
# The order of packages is significant, because pip processes them in the order
# of appearance. Changing the order has an impact on the overall integration
# process, which may cause wedges in the gate later.
openstackdocstheme>=2.2.0 # Apache-2.0
sphinx>=2.0.0,!=2.1.0 # BSD

View File

@ -23,7 +23,7 @@ sys.path.insert(0, os.path.abspath('../..'))
extensions = [
'sphinx.ext.autodoc',
#'sphinx.ext.intersphinx',
'oslosphinx'
'openstackdocstheme'
]
# autodoc generation is a bit aggressive and a nuisance when doing heavy
@ -72,4 +72,4 @@ latex_documents = [
]
# Example configuration for intersphinx: refer to the Python standard library.
#intersphinx_mapping = {'http://docs.python.org/': None}
#intersphinx_mapping = {'http://docs.python.org/': None}

View File

@ -17,6 +17,8 @@ Contents:
contributing
cli
decorators
rest_client
utils
history

View File

@ -9,7 +9,7 @@ To use tempest-lib in a project::
:ref:`cli`
----------
The CLI testing framework allows you to test the command line interface for
an OpenStack project's python-*client
an OpenStack project's python-\*client
:ref:`decorators`

25
tox.ini
View File

@ -23,8 +23,31 @@ commands = {posargs}
[testenv:cover]
commands = python setup.py test --coverage --coverage-package-name='tempest_lib' --testr-args='{posargs}'
#[testenv:docs]
#commands = python setup.py build_sphinx
#[testenv:pdf-docs]
#commands = python setup.py sphinx-build -W -b latex doc/source doc/build/pdf
[testenv:docs]
commands = python setup.py build_sphinx
deps =
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/requirements.txt
-r{toxinidir}/doc/requirements.txt
commands =
rm -rf doc/build
sphinx-build -W -b html doc/source doc/build/html
whitelist_externals = rm
[testenv:pdf-docs]
deps = {[testenv:docs]deps}
whitelist_externals =
make
commands =
sphinx-build -W -b latex doc/source doc/build/pdf
make -C doc/build/pdf
[flake8]
# E125 skipped as it is invalid PEP-8.