Tools used by OpenStack Documentation
Go to file
KATO Tomoyuki c6d39996ac [cli-ref] Support DeprecationWarning for version number
Bash variable expansion "${version##* }" doesn't match the char ")"
as "*". This patch add the process for "DeprecationWarning)" message.

Change-Id: If8e7dd047ea5e12487dc90f5a0fb7aeb4292ae13
Closes-Bug: #1565574
2016-04-16 10:39:48 +09:00
autogenerate_config_docs Make diff_branches.py work again 2016-03-20 18:44:17 +01:00
bin [cli-ref] Support DeprecationWarning for version number 2016-04-16 10:39:48 +09:00
cleanup Keep py3.X compatibility for urllib 2016-03-14 08:27:45 +05:30
doc/source [openstack-doc-tools] fix one typo 2015-08-10 15:50:37 +09:00
os_doc_tools [cli-ref] Remove work around for checkniceness 2016-04-13 09:39:53 +09:00
releasenotes Update CLI Reference generation tool for RST 2016-01-15 07:01:14 +00:00
sitemap [sitemap] mark liberty as an old release 2016-04-05 12:59:58 +02:00
.gitignore Add reno for release-notes 2015-11-07 17:10:06 +01:00
.gitreview Add .gitreview 2013-12-04 20:44:41 +01:00
.mailmap Add .mailmap 2014-01-07 08:39:30 +01:00
CONTRIBUTING.rst Note to add 'jinja2' and 'markupsafe' to requirements 2016-03-03 17:54:17 +03:00
HACKING.rst Add HACKING.rst 2014-01-02 12:13:33 +01:00
LICENSE Add LICENSE and README.rst 2013-12-10 15:45:37 +01:00
MANIFEST.in Move release notes into a separate file 2014-07-28 22:04:02 +02:00
README.rst [README] Update the content for mitaka 2016-04-06 17:06:03 +05:30
RELEASE_NOTES.rst Update RELEASE Notes 2015-11-15 09:56:56 +01:00
doc-test.conf.sample Allow setting of publish directory 2014-02-13 14:07:53 -06:00
openstack-common.conf Remove venv tools 2015-04-29 09:31:58 +02:00
pylintrc Add pylint target for testing 2014-05-19 18:30:07 +02:00
requirements.txt Updated from global requirements 2016-04-13 12:47:03 +00:00
setup.cfg Improve index page layout 2015-11-21 19:57:10 +01:00
setup.py Updated from global requirements 2015-09-17 12:15:35 +00:00
test-requirements.txt Updated from global requirements 2016-04-07 17:12:36 +00:00
tox.ini Remove markdown script 2016-02-25 08:14:50 +01:00

README.rst

OpenStack Doc Tools

This repository contains tools used by the OpenStack Documentation project.

For more details, see the OpenStack Documentation wiki page.

Prerequisites

Apache Maven must be installed to build the documentation.

To install Maven 3 for Ubuntu 12.04 and later, and Debian wheezy and later:

apt-get install maven

On Fedora:

yum install maven

You need to have Python 2.7 installed for using the tools.

This package needs a few external dependencies including lxml. If you do not have lxml installed, you can either install python-lxml or have it installed automatically and build from sources. To build lxml from sources, you need a C compiler and the xml and xslt development packages installed.

To install python-lxml, execute the following based on your distribution.

On Fedora:

yum install python-lxml

On openSUSE:

zypper in python-lxml

On Ubuntu:

apt-get install python-lxml

For building from source, install the dependencies of lxml.

On Fedora:

yum install python-devel libxml2-devel libxslt-devel

On openSUSE:

zypper in libxslt-devel

On Ubuntu:

apt-get install libxml2-dev libxslt-dev

Updating RNG schema files

The repository contains in the directory os_doc_tools/resources a local copy of some RNG schema files so that they do not need to be downloaded each time for validation of XML and WADL files.

Please see the README.txt in the directory for details on where these files come from.

Publishing of books

If you run the openstack-doc-test --check-build, it will copy all the books to the directory publish-docs in the top-level directory of your repository.

By default, it outputs a directory with the same name as the directory where the pom.xml file lives in, such as glossary. You can also check the output of the build job for the name.

Some books need special treatment and there are three options you can set in the file doc-test.conf:

  • book - the name of a book that needs special treatment
  • target_dir - the path of subdirectory starting at target that is the root for publishing
  • publish_dir - a new name to publish a book under

As an example, to publish the compute-api version 2 in the directory publish-docs/api/openstack-compute/2, use:

book = openstack-compute-api-2
target_dir = target/docbkx/webhelp/api/openstack-compute/2
publish_dir = api/openstack-compute/2

Note that these options can be specified multiple times and should always be used this way. You do not need to set publish_dir but if you set it, you need to use it every time.

Also note that these are optional settings, the logic in the tool is sufficient for many of the books.