Add PDF building
This commit add PDF building tox.ini environment and options for LaTeX
output. The chapter header in README.rst has been changed because "Team
and repository tags" is not appropriate for the title of this document.
And, this commit also updates repository URLs to opendev.org.
Change-Id: I1337f3185d72108eef2968cca3cb81d52e742e90
Story: #2006070
Task: #35469
diff --git a/README.rst b/README.rst
index f19bda9..ef0ff00 100644
--- a/README.rst
+++ b/README.rst
@@ -1,10 +1,3 @@
-========================
-Team and repository tags
-========================
-
-.. image:: https://governance.openstack.org/tc/badges/patrole.svg
- :target: https://governance.openstack.org/tc/reference/tags/index.html
-
Patrole - RBAC Integration Tempest Plugin
=========================================
@@ -24,10 +17,16 @@
* Free software: Apache license
* Documentation: https://docs.openstack.org/patrole/latest
-* Source: https://git.openstack.org/cgit/openstack/patrole
+* Source: https://opendev.org/openstack/patrole
* Bugs: https://storyboard.openstack.org/#!/project/openstack/patrole
* Release notes: https://docs.openstack.org/releasenotes/patrole/
+Team and repository tags
+------------------------
+
+.. image:: https://governance.openstack.org/tc/badges/patrole.svg
+ :target: https://governance.openstack.org/tc/reference/tags/index.html
+
.. _design-principles:
Design Principles
@@ -75,8 +74,8 @@
.. _Tempest plugin: https://docs.openstack.org/tempest/latest/plugin.html
.. _Tempest design principles: https://docs.openstack.org/tempest/latest/overview.html#design-principles
.. _policy in code: https://specs.openstack.org/openstack/oslo-specs/specs/newton/policy-in-code.html
-.. _Nova repository: https://git.openstack.org/cgit/openstack/nova/tree/nova/policies
-.. _Keystone repository: https://git.openstack.org/cgit/openstack/keystone/tree/keystone/common/policies
+.. _Nova repository: https://opendev.org/openstack/nova/src/branch/master/nova/policies
+.. _Keystone repository: https://opendev.org/openstack/keystone/src/branch/master/keystone/common/policies
Features
--------
@@ -123,7 +122,7 @@
#. You first need to install Patrole. This is done with pip after you check out
the Patrole repo::
- $ git clone https://git.openstack.org/openstack/patrole
+ $ git clone https://opendev.org/openstack/patrole
$ pip install patrole/
This can be done within a venv.
@@ -174,7 +173,7 @@
the Patrole repository. To configure Patrole's logging, see the
`Patrole Configuration Guide <https://docs.openstack.org/patrole/latest/configuration.html#patrole-configuration>`_.
-.. _Tempest: https://git.openstack.org/cgit/openstack/tempest
+.. _Tempest: https://opendev.org/openstack/tempest/
.. _Tempest_quickstart: https://docs.openstack.org/tempest/latest/overview.html#quickstart
.. _tempest_run: https://docs.openstack.org/tempest/latest/run.html
.. _testr: https://testrepository.readthedocs.org/en/latest/MANUAL.html
diff --git a/doc/requirements.txt b/doc/requirements.txt
index b03ff2c..3a1bb3d 100644
--- a/doc/requirements.txt
+++ b/doc/requirements.txt
@@ -6,3 +6,4 @@
openstackdocstheme>=1.20.0 # Apache-2.0
reno>=2.5.0 # Apache-2.0
sphinxcontrib-apidoc>=0.2.0 # BSD
+sphinxcontrib-svg2pdfconverter>=0.1.0 # BSD
diff --git a/doc/source/conf.py b/doc/source/conf.py
index 1d82bc0..4fa65e6 100755
--- a/doc/source/conf.py
+++ b/doc/source/conf.py
@@ -30,6 +30,7 @@
'sphinx.ext.autodoc',
'sphinx.ext.todo',
'sphinx.ext.viewcode',
+ 'sphinxcontrib.rsvgconverter',
'openstackdocstheme',
'oslo_config.sphinxconfiggen',
'sphinxcontrib.apidoc',
@@ -94,15 +95,18 @@
# Output file base name for HTML help builder.
htmlhelp_basename = 'patroledoc'
+# Example configuration for intersphinx: refer to the Python standard library.
+#intersphinx_mapping = {'http://docs.python.org/': None}
+
+# -- Options for LaTeX output -------------------------------------------------
+
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title, author, documentclass
# [howto/manual]).
latex_documents = [
- ('index',
- 'patrole.tex',
- u'patrole Documentation',
- u'Patrole Developers', 'manual'),
+ ('index', 'doc-patrole.tex', u'Patrole: Tempest Plugin for RBAC Testing',
+ u'OpenStack Foundation', 'manual'),
]
-# Example configuration for intersphinx: refer to the Python standard library.
-#intersphinx_mapping = {'http://docs.python.org/': None}
+# Disable usage of xindy https://bugzilla.redhat.com/show_bug.cgi?id=1643664
+latex_use_xindy = False
\ No newline at end of file
diff --git a/doc/source/index.rst b/doc/source/index.rst
index 816908a..c7251ee 100644
--- a/doc/source/index.rst
+++ b/doc/source/index.rst
@@ -71,7 +71,12 @@
framework/rbac_utils
framework/code/modules
-Indices and tables
-==================
+Search
+======
-* :ref:`search`
+.. only:: html
+
+ * :ref:`Patrole document search <search>`: Search the contents of this document.
+
+* `OpenStack wide search <https://docs.openstack.org>`_: Search the wider
+ set of OpenStack documentation, including forums.
diff --git a/tox.ini b/tox.ini
index 9e2772c..b7e02e6 100644
--- a/tox.ini
+++ b/tox.ini
@@ -64,6 +64,15 @@
sphinx-build -W -b html doc/source doc/build/html
whitelist_externals = rm
+[testenv:pdf-docs]
+basepython = python3
+deps = {[testenv:docs]deps}
+whitelist_externals =
+ make
+commands =
+ sphinx-build -W -b latex doc/source doc/build/pdf
+ make -C doc/build/pdf
+
[testenv:releasenotes]
basepython = python3
deps =