Distribution Statement
Documentation Builder#
We use Sphinx, pinkrst and brassy to build our documentation.
For more information on how to use the documentation builder,
see Documentation Building.
Mechanism#
The build script does the following actions in the following order:
Validates the provided
repo_pathexists and is a git directoryVerifies the provided
package_nameis installedCopies build files to a temporary build directory that is deleted after the program exits
Copies non-documentation files (eg.
CODE_OF_CONDUCT.md) into a specialimportdirectory at the top of the docs directory for access during buildingIf building documentation for a plugin (aka
package_nameis notgeoips), it copies static files from the GeoIPS documentation directory that are needed for buildingGenerates a top level
index.rstfromindex.template.rstand replaces placeholder strings with actual section paths or removes them depending if those sections are present in the documentation.Builds release notes with brassy from sub-directories of the
releasesdirectory (any sub-directory namedupcomingis skipped as a special case for the release process)A release index file is generated that indexes the newly generated and old
.rstfiles inreleases/Sphinx’s
apidoctool is used to generate.rstfiles for the packages Python modulesSphinx is used to build html files from the generated
.rstfilesIf everything succeeds, the built html files are copied to the specified output directory