Tools and theme bugs are now being tracked in the openstack-doc-tools project on Launchpad. Change-Id: Ib8bcaab16a56ded4b286214ed5d5cddcdcd2263e
2.8 KiB
Team and repository tags
OpenStack docs.openstack.org Sphinx Theme
Theme and extension support for Sphinx documentation that is published to docs.openstack.org and developer.openstack.org.
Intended for use by OpenStack projects governed by the Technical Committee.
Using the Theme
Prior to using this theme, ensure your project can use the OpenStack brand by referring to the brand guidelines at https://www.openstack.org/brand.
Update the requirements list for your project to include
openstackdocstheme
(usually in test-requirements.txt).
If your project previously used the oslosphinx theme (without
modifying the header navigation), remove oslosphinx from your
requirements list, and then in your conf.py
you can remove
the import statement and extension listing for oslosphinx.
Some of the settings below are included in the file generated by Sphinx when you initialize a project, so they may already have values that need to be changed.
Then modify your Sphinx settings in conf.py
to
include:
import openstackdocstheme
html_theme = 'openstackdocs'
html_theme_path = [openstackdocstheme.get_html_theme_path()]
Also, you must include these variables so that the "Log a bug" link
sends metadata for the project where the docs reside. You'll also need
to add import subprocess
to the top of your
conf.py
file:
# We ask git for the SHA checksum
# The git SHA checksum is used by "log-a-bug"
git_cmd = ["/usr/bin/git", "rev-parse", "HEAD"]
gitsha = subprocess.Popen(
git_cmd, stdout=subprocess.PIPE).communicate()[0].strip('\n')
# tag that reported bugs will be tagged with
bug_tag = "your-chosen-tag"
# source tree
pwd = os.getcwd()
# html_context allows us to pass arbitrary values into the html template
html_context = {"pwd": pwd, "gitsha": gitsha}
# Must set this variable to include year, month, day, hours, and minutes.
html_last_updated_fmt = '%Y-%m-%d %H:%M'
Note
If you're using Python 3 to build, you'll need to adjust the
gitsha
command to add a .decode('utf-8')
option.
gitsha = subprocess.Popen(
git_cmd, stdout=subprocess.PIPE).communicate()[0].decode('utf-8').strip('\n')
- Free software: Apache License, Version 2.0
- Release notes: https://docs.openstack.org/releasenotes/openstackdocstheme/
- Source: https://git.openstack.org/cgit/openstack/openstackdocstheme
- Bugs: https://launchpad.net/openstack-doc-tools