Add plugin registry generation to sphinx build

This commit adds running the plugin registry generation script to the
sphinx build. This ensure that every time we build the docs we'll have
an up-to-date plugin registry. This comes at the cost of increased
build time since the script will query openstack's git server to get
the plugin list. Also, the plugin-registry source file was added to
.gitignore since it is autogenerated now.

Change-Id: Ib26124c5d5d5ef4617e4e702e594ce7f1795ce23
This commit is contained in:
Matthew Treinish 2016-06-29 10:39:02 -04:00
parent 330f11dd91
commit fc46326854
No known key found for this signature in database
GPG Key ID: FD12A0F214C9E177
3 changed files with 12 additions and 23 deletions

1
.gitignore vendored
View File

@ -23,6 +23,7 @@ build
!.coveragerc
cover/
doc/source/_static/tempest.conf.sample
doc/source/plugin-registry.rst
# Files created by releasenotes build
releasenotes/build

View File

@ -15,6 +15,17 @@ import sys
import os
import subprocess
# Build the plugin registry
def build_plugin_registry(app):
root_dir = os.path.dirname(
os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
subprocess.call(['tools/generate-tempest-plugins-list.sh'], cwd=root_dir)
def setup(app):
app.connect('builder-inited', build_plugin_registry)
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.

View File

@ -1,23 +0,0 @@
..
Note to patch submitters: this file is covered by a periodic proposal
job. You should edit the files data/tempest-plugins-registry.footer
data/tempest-plugins-registry.header instead of this one.
==========================
Tempest Plugin Registry
==========================
Since we've created the external plugin mechanism, it's gotten used by
a lot of projects. The following is a list of plugins that currently
exist.
Detected Plugins
================
The following will list plugins that a script has found in the openstack/
namespace, which includes but is not limited to official OpenStack
projects.
+----------------------------+-------------------------------------------------------------------------+
|Plugin Name |URL |
+----------------------------+-------------------------------------------------------------------------+