Add build infrastructure

Change-Id: Ieedbb726bc9091bc56498d8b07c43c32d8701088
This commit is contained in:
Ilya Shakhat 2015-12-07 12:36:41 +03:00
parent 2c7a9f66af
commit 39d2a334b7
11 changed files with 1218 additions and 0 deletions

19
.gitignore vendored Normal file
View File

@ -0,0 +1,19 @@
*~
*.pyc
*.local
AUTHORS
ChangeLog
MANIFEST
dist/
.venv/
build/*
build-stamp
cover/*
doc/build/
doc/source/api/
*.egg-info
*.egg*
.autogenerated
.coverage
.testrepository/
.tox/

23
README.rst Normal file
View File

@ -0,0 +1,23 @@
OpenStack Performance Documentation
===================================
This repository is for OpenStack performance testing plans, results and investigation documents.
All documents are in RST format and located in `doc/source/` sub-folder.
Building
========
Prerequisites
-------------
To get started, you need to install all necessary tools:
* `virtualenv`
* `pip` (use the latest from `https://bootstrap.pypa.io/get-pip.py`)
* `tox`
* system dependencies: `libjpeg-dev`
Run the build
-------------
$ tox

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 KiB

View File

@ -0,0 +1,611 @@
# List any fonts you would like to embed in the PDF here
embeddedFonts: []
# Default page setup. Can be overridden by including other
# stylesheets with -s
pageSetup:
size: A4
width: null
height: null
margin-top: 2cm
margin-bottom: 2cm
margin-left: 2cm
margin-right: 2cm
margin-gutter: 0cm
spacing-header: 5mm
spacing-footer: 5mm
# The first template is one of the 'pageTemplates"
# (See next section)
firstTemplate: coverPage
# pageTemplates can be accessed with the .. raw:: pdf PageBreak command
pageTemplates:
coverPage:
frames: []
[0cm, 0cm, 100%, 100%]
showHeader : false
showFooter : false
emptyPage:
frames: []
[0cm, 0cm, 100%, 100%]
showHeader : false
showFooter : false
oneColumn:
frames: []
[0cm, 0cm, 100%, 100%]
showHeader : false
showFooter : true
defaultFooter : ###Page###
twoColumn:
frames: []
[0cm, 0cm, 49%, 100%]
[51%, 0cm, 49%, 100%]
showHeader : true
showFooter : true
threeColumn:
frames: []
[2%, 0cm, 29.333%, 100%]
[35.333%, 0cm, 29.333%, 100%]
[68.666%, 0cm, 29.333%, 100%]
showHeader : true
showFooter : true
cutePage:
frames: []
[0%, 0%, 100%, 100%]
showHeader : false
showFooter : true
defaultFooter : -- ###Page### --
defaultHeader : ###Section###
fontsAlias:
stdFont: Helvetica
stdBold: Helvetica-Bold
stdItalic: Helvetica-Oblique
stdBoldItalic: Helvetica-BoldOblique
stdSans: Helvetica
stdSansBold: Helvetica-Bold
stdSansItalic: Helvetica-Oblique
stdSansBoldItalic: Helvetica-BoldOblique
stdMono: Courier
stdMonoItalic: Courier-Oblique
stdMonoBold: Courier-Bold
stdMonoBoldItalic: Courier-BoldOblique
stdSerif: Times-Roman
linkColor: navy
styles:
base:
parent: null
fontName: stdFont
fontSize: 10
leading: 14
leftIndent: 0
rightIndent: 0
firstLineIndent: 0
alignment: TA_LEFT
spaceBefore: 0
spaceAfter: 0
bulletFontName: stdFont
bulletFontSize: 10
bulletIndent: 0
textColor: black
backColor: null
wordWrap: null
borderWidth: 0
borderPadding: 0
borderColor: null
borderRadius: null
allowWidows: false
allowOrphans: false
hyphenation: false
kerning: false
underline: false
strike: false
commands: []
normal:
parent: base
title-reference:
parent: normal
fontName: stdItalic
bodytext:
parent: normal
spaceAfter: 3
alignment: TA_LEFT
hyphenation: true
toc:
parent: normal
blockquote:
parent: bodytext
leftIndent: 20
lineblock:
parent: bodytext
line:
parent: lineblock
spaceBefore: 0
toc1:
parent: toc
fontName: stdBold
fontSize: 120%
toc2:
parent: toc
fontName: stdBold
fontSize: 120%
leftIndent: 20
toc3:
parent: toc
leftIndent: 40
toc4:
parent: toc
leftIndent: 60
toc5:
parent: toc
leftIndent: 80
toc6:
parent: toc
leftIndent: 100
toc7:
parent: toc
leftIndent: 100
toc8:
parent: toc
leftIndent: 100
toc9:
parent: toc
leftIndent: 100
toc10:
parent: toc
leftIndent: 100
toc11:
parent: toc
leftIndent: 100
toc12:
parent: toc
leftIndent: 100
toc13:
parent: toc
leftIndent: 100
toc14:
parent: toc
leftIndent: 100
toc15:
parent: toc
leftIndent: 100
footer:
parent: normal
alignment: TA_CENTER
fontColor: #606060
fontSize: 8
header:
parent: normal
alignment: TA_CENTER
fontSize: 8
attribution:
parent: bodytext
alignment: TA_RIGHT
image:
parent: bodytext
alignment: TA_CENTER
figure:
parent: bodytext
alignment: TA_CENTER
commands: []
[VALIGN, [ 0, 0 ], [ -1, -1 ], TOP ]
[ALIGN, [ 0, 0 ], [ -1, -1 ], CENTER ]
colWidths: [100%]
figure-caption:
parent: bodytext
fontName: stdItalic
alignment: TA_CENTER
figure-legend:
parent: bodytext
bullet-list:
parent: bodytext
commands: []
[VALIGN, [ 0, 0 ], [ -1, -1 ], TOP ]
[RIGHTPADDING, [ 0, 0 ], [ 1, -1 ], 0 ]
colWidths: [10, null]
bullet-list-item:
parent: bodytext
item-list:
parent: bodytext
commands: []
[VALIGN, [ 0, 0 ], [ -1, -1 ], TOP ]
[RIGHTPADDING, [ 0, 0 ], [ 1, -1 ], 0 ]
colWidths: [20pt, null]
item-list-item:
parent: bodytext
definition-list-term:
parent: normal
fontName: stdBold
spaceBefore: 4
spaceAfter: 0
keepWithNext: false
definition-list-classifier:
parent: normal
fontName: stdItalic
definition:
parent: bodytext
firstLineIndent: 0
bulletIndent: 0
spaceBefore: 0
colWidths: [20pt, null]
commands: []
[VALIGN, [ 0, 0 ], [ -1, -1 ], TOP ]
[LEFTPADDING, [ 0, 0 ], [ -1, -1 ], 0 ]
[BOTTOMPADDING, [ 0, 0 ], [ -1, -1 ], 0 ]
[RIGHTPADDING, [ 0, 0 ], [ -1, -1 ], 0 ]
fieldname:
parent: bodytext
alignment: TA_RIGHT
fontName: stdBold
fieldvalue:
parent: bodytext
rubric:
parent: bodytext
textColor: darkred
alignment: TA_CENTER
italic:
parent: bodytext
fontName: stdItalic
heading:
parent: normal
keepWithNext: true
title:
parent: heading
fontName: stdBold
fontSize: 300%
alignment: TA_CENTER
keepWithNext: false
spaceAfter: 10
subtitle:
parent: title
spaceBefore: 12
fontSize: 75%
heading1:
parent: heading
fontName: stdBold
textColor: #D32F1A
fontSize: 200%
spaceBefore: 30
spaceAfter: 30
heading2:
parent: heading
fontName: stdBold
textColor: #D32F1A
fontSize: 150%
spaceBefore: 20
spaceAfter: 14
heading3:
parent: heading
fontName: stdBold
fontSize: 125%
spaceBefore: 12
spaceAfter: 8
heading4:
parent: heading
fontName: stdBold
spaceBefore: 12
spaceBefore: 8
heading5:
parent: heading
fontName: stdItalic
spaceBefore: 6
spaceBefore: 4
heading6:
parent: heading
fontName: stdItalic
topic-title:
parent: heading3
sidebar-title:
parent: heading3
sidebar-subtitle:
parent: heading4
sidebar:
float: none
width: 100%
parent: normal
backColor: "#E0E0E0"
borderColor: darkgray
borderPadding: 10
borderWidth: 0.5
admonition:
parent: normal
spaceBefore: 6
spaceAfter: 3
borderPadding: [10, 10, 10, 10]
backColor: #E0EFFF
borderColor: #808080
borderWidth: 0.5
commands: []
[VALIGN, [ 0, 0 ], [ -1, -1 ], TOP ]
attention:
parent: admonition
caution:
parent: admonition
danger:
parent: admonition
error:
parent: admonition
hint:
parent: admonition
important:
parent: admonition
note:
parent: admonition
tip:
parent: admonition
warning:
parent: admonition
admonition-title:
parent: heading3
admonition-heading:
parent: base
fontName: stdBold
attention-heading:
parent: admonition-heading
caution-heading:
parent: admonition-heading
danger-heading:
parent: admonition-heading
error-heading:
parent: admonition-heading
hint-heading:
parent: admonition-heading
important-heading:
parent: admonition-heading
note-heading:
parent: admonition-heading
tip-heading:
parent: admonition-heading
warning-heading:
parent: admonition-heading
literal:
parent: normal
fontName: stdMono
firstLineIndent: 0
hyphenation: false
wordWrap: null
backColor: "#FFFFF0"
textColor: "#200000"
aafigure:
parent: literal
table:
spaceBefore: 6
spaceAfter: 0
alignment: TA_CENTER
commands: []
[VALIGN, [ 0, 0 ], [ -1, -1 ], TOP ]
[INNERGRID, [ 0, 0 ], [ -1, -1 ], 0.25, black ]
[ROWBACKGROUNDS, [0, 0], [-1, -1], [white, "E0E0E0"]]
[BOX, [ 0, 0 ], [ -1, -1 ], 0.25, black ]
table-title:
parent : heading4
keepWithNext: false
alignment : TA_CENTER
table-heading:
parent : heading
backColor : "#F0F0F0"
alignment : TA_CENTER
valign : BOTTOM
borderPadding : 0
table-body:
parent : normal
dedication:
parent : normal
abstract:
parent : normal
contents:
parent : normal
tableofcontents:
parent : normal
code:
parent: literal
fontSize: 9
leftIndent: 0
spaceBefore: 0
spaceAfter: 0
backColor: "#FFFFFF"
borderWidth: 0
borderPadding: 0
borderColor: #CFCFCF
linenumber:
parent: code
right:
parent: bodytext
alignment: right
center:
parent: bodytext
alignment: center
pygments-n: {parent: code}
pygments-nx: {parent: code}
pygments-p: {parent: code}
pygments-hll: {parent: code, backColor: "ffffcc"}
pygments-c: {textColor: "008800", parent: code}
pygments-err: {parent: code}
pygments-k: {textColor: "AA22FF", parent: code}
pygments-o: {textColor: "666666", parent: code}
pygments-cm: {textColor: "008800", parent: code}
pygments-cp: {textColor: "008800", parent: code}
pygments-c1: {textColor: "008800", parent: code}
pygments-cs: {textColor: "008800", parent: code}
pygments-gd: {textColor: "A00000", parent: code}
pygments-ge: {parent: code}
pygments-gr: {textColor: "FF0000", parent: code}
pygments-gh: {textColor: "000080", parent: code}
pygments-gi: {textColor: "00A000", parent: code}
pygments-go: {textColor: "808080", parent: code}
pygments-gp: {textColor: "000080", parent: code}
pygments-gs: {parent: code}
pygments-gu: {textColor: "800080", parent: code}
pygments-gt: {textColor: "0040D0", parent: code}
pygments-kc: {textColor: "AA22FF", parent: code}
pygments-kd: {textColor: "AA22FF", parent: code}
pygments-kn: {textColor: "AA22FF", parent: code}
pygments-kp: {textColor: "AA22FF", parent: code}
pygments-kr: {textColor: "AA22FF", parent: code}
pygments-kt: {textColor: "00BB00", parent: code}
pygments-m: {textColor: "666666", parent: code}
pygments-s: {textColor: "BB4444", parent: code}
pygments-na: {textColor: "BB4444", parent: code}
pygments-nb: {textColor: "AA22FF", parent: code}
pygments-nc: {textColor: "0000FF", parent: code}
pygments-no: {textColor: "880000", parent: code}
pygments-nd: {textColor: "AA22FF", parent: code}
pygments-ni: {textColor: "999999", parent: code}
pygments-ne: {textColor: "D2413A", parent: code}
pygments-nf: {textColor: "00A000", parent: code}
pygments-nl: {textColor: "A0A000", parent: code}
pygments-nn: {textColor: "0000FF", parent: code}
pygments-nt: {textColor: "008000", parent: code}
pygments-nv: {textColor: "B8860B", parent: code}
pygments-ow: {textColor: "AA22FF", parent: code}
pygments-w: {textColor: "bbbbbb", parent: code}
pygments-mf: {textColor: "666666", parent: code}
pygments-mh: {textColor: "666666", parent: code}
pygments-mi: {textColor: "666666", parent: code}
pygments-mo: {textColor: "666666", parent: code}
pygments-sb: {textColor: "BB4444", parent: code}
pygments-sc: {textColor: "BB4444", parent: code}
pygments-sd: {textColor: "BB4444", parent: code}
pygments-s2: {textColor: "BB4444", parent: code}
pygments-se: {textColor: "BB6622", parent: code}
pygments-sh: {textColor: "BB4444", parent: code}
pygments-si: {textColor: "BB6688", parent: code}
pygments-sx: {textColor: "008000", parent: code}
pygments-sr: {textColor: "BB6688", parent: code}
pygments-s1: {textColor: "BB4444", parent: code}
pygments-ss: {textColor: "B8860B", parent: code}
pygments-bp: {textColor: "AA22FF", parent: code}
pygments-vc: {textColor: "B8860B", parent: code}
pygments-vg: {textColor: "B8860B", parent: code}
pygments-vi: {textColor: "B8860B", parent: code}
pygments-il: {textColor: "666666", parent: code}
endnote:
parent: bodytext
commands: []
[VALIGN, [ 0, 0 ], [ -1, -1 ], TOP ]
[TOPPADDING, [ 0, 0 ], [ -1, -1 ], 0 ]
[BOTTOMPADDING, [ 0, 0 ], [ -1, -1 ], 0 ]
[RIGHTPADDING, [ 0, 0 ], [ 1, -1 ], 0 ]
colWidths: [3cm, null]
field-list:
parent: bodytext
commands: []
[VALIGN, [ 0, 0 ], [ -1, -1 ], TOP ]
[TOPPADDING, [ 0, 0 ], [ -1, -1 ], 0 ]
colWidths: [3cm, null]
spaceBefore: 6
option-list:
commands: []
[VALIGN, [ 0, 0 ], [ -1, -1 ], TOP ]
[TOPPADDING, [ 0, 0 ], [ -1, -1 ], 0 ]
colWidths: [null,null]
author:
parent: normal
alignment: TA_CENTER
fontSize: 12

View File

@ -0,0 +1,36 @@
.. role:: normal
.. image:: _static/openstack_logo.png
:width: 24em
.. raw:: pdf
Spacer 0 1cm
<?py if title: ?>
.. cssclass:: title
#{title}
<?py #end ?>
<?py if subtitle: ?>
.. cssclass:: subtitle
#{subtitle}
<?py #end ?>
.. raw:: pdf
Spacer 0 13cm
.. cssclass:: author
:normal:`#{date}`
.. raw:: pdf
PageBreak

439
doc/source/conf.py Normal file
View File

@ -0,0 +1,439 @@
# -*- coding: utf-8 -*-
#
# scale_rnd documentation build configuration file, created by
# sphinx-quickstart on Mon Nov 23 13:22:23 2015.
#
# This file is execfile()d with the current directory set to its
# containing dir.
#
# Note that not all possible configuration values are present in this
# autogenerated file.
#
# All configuration values have a default; values that are commented out
# serve to show the default.
import sys
import os
# 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.
sys.path.insert(0, os.path.abspath('../..'))
# -- General configuration ------------------------------------------------
# If your documentation needs a minimal Sphinx version, state it here.
#needs_sphinx = '1.0'
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
'rst2pdf.pdfbuilder',
'sphinx.ext.autodoc',
'sphinxcontrib.httpdomain',
]
# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
# The suffix of source filenames.
source_suffix = '.rst'
# The encoding of source files.
#source_encoding = 'utf-8-sig'
# The master toctree document.
master_doc = 'index'
# General information about the project.
project = u'Performance Docs'
copyright = u'2015, OpenStack Foundation'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
version = '0.1'
# The full version, including alpha/beta/rc tags.
release = '0.1'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#language = None
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
#today = ''
# Else, today_fmt is used as the format for a strftime call.
#today_fmt = '%B %d, %Y'
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
exclude_patterns = []
# The reST default role (used for this markup: `text`) to use for all
# documents.
#default_role = None
# If true, '()' will be appended to :func: etc. cross-reference text.
#add_function_parentheses = True
# If true, the current module name will be prepended to all description
# unit titles (such as .. function::).
#add_module_names = True
# If true, sectionauthor and moduleauthor directives will be shown in the
# output. They are ignored by default.
#show_authors = False
# The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx'
# A list of ignored prefixes for module index sorting.
#modindex_common_prefix = []
# If true, keep warnings as "system message" paragraphs in the built documents.
#keep_warnings = False
# -- Options for HTML output ----------------------------------------------
# on_rtd is whether we are on readthedocs.org, this line of code grabbed from docs.readthedocs.org
on_rtd = os.environ.get('READTHEDOCS', None) == 'True'
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
if not on_rtd: # only import and set the theme if we're building docs locally
import sphinx_rtd_theme
html_theme = 'sphinx_rtd_theme'
html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]
else:
html_theme = 'default'
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
#html_theme_options = {}
# Add any paths that contain custom themes here, relative to this directory.
#html_theme_path = []
# The name for this set of Sphinx documents. If None, it defaults to
# "<project> v<release> documentation".
#html_title = None
# A shorter title for the navigation bar. Default is the same as html_title.
#html_short_title = None
# The name of an image file (relative to this directory) to place at the top
# of the sidebar.
#html_logo = None
# The name of an image file (within the static path) to use as favicon of the
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
# pixels large.
#html_favicon = None
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']
# Add any extra paths that contain custom files (such as robots.txt or
# .htaccess) here, relative to this directory. These files are copied
# directly to the root of the documentation.
#html_extra_path = []
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
# using the given strftime format.
#html_last_updated_fmt = '%b %d, %Y'
# If true, SmartyPants will be used to convert quotes and dashes to
# typographically correct entities.
#html_use_smartypants = True
# Custom sidebar templates, maps document names to template names.
#html_sidebars = {}
# Additional templates that should be rendered to pages, maps page names to
# template names.
#html_additional_pages = {}
# If false, no module index is generated.
#html_domain_indices = True
# If false, no index is generated.
#html_use_index = True
# If true, the index is split into individual pages for each letter.
#html_split_index = False
# If true, links to the reST sources are added to the pages.
#html_show_sourcelink = True
# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
#html_show_sphinx = True
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
#html_show_copyright = True
# If true, an OpenSearch description file will be output, and all pages will
# contain a <link> tag referring to it. The value of this option must be the
# base URL from which the finished HTML is served.
#html_use_opensearch = ''
# This is the file name suffix for HTML files (e.g. ".xhtml").
#html_file_suffix = None
# Output file base name for HTML help builder.
htmlhelp_basename = 'performance_docs'
# -- Options for LaTeX output ---------------------------------------------
latex_elements = {
# The paper size ('letterpaper' or 'a4paper').
#'papersize': 'letterpaper',
# The font size ('10pt', '11pt' or '12pt').
#'pointsize': '10pt',
# Additional stuff for the LaTeX preamble.
#'preamble': '',
}
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title,
# author, documentclass [howto, manual, or own class]).
latex_documents = [
('index', 'performance_docs.tex', u'Performance Documentation',
u'OpenStack Foundation', 'manual'),
]
# The name of an image file (relative to this directory) to place at the top of
# the title page.
#latex_logo = None
# For "manual" documents, if this is true, then toplevel headings are parts,
# not chapters.
#latex_use_parts = False
# If true, show page references after internal links.
#latex_show_pagerefs = False
# If true, show URL addresses after external links.
#latex_show_urls = False
# Documents to append as an appendix to all manuals.
#latex_appendices = []
# If false, no module index is generated.
#latex_domain_indices = True
# -- Options for manual page output ---------------------------------------
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
('index', 'performance_docs', u'Performance Documentation',
[u'OpenStack Foundation'], 1)
]
# If true, show URL addresses after external links.
#man_show_urls = False
# -- Options for Texinfo output -------------------------------------------
# Grouping the document tree into Texinfo files. List of tuples
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
('index', 'performance_docs', u'Performance Documentation',
u'OpenStack Foundation', 'performance_docs', 'OpenStack performance testing plans, results and investigations.',
'Miscellaneous'),
]
# Documents to append as an appendix to all manuals.
#texinfo_appendices = []
# If false, no module index is generated.
#texinfo_domain_indices = True
# How to display URL addresses: 'footnote', 'no', or 'inline'.
#texinfo_show_urls = 'footnote'
# If true, do not generate a @detailmenu in the "Top" node's menu.
#texinfo_no_detailmenu = False
# -- Options for Epub output ----------------------------------------------
# Bibliographic Dublin Core info.
epub_title = u'performance_docs'
epub_author = u'OpenStack Foundation'
epub_publisher = u'OpenStack Foundation'
epub_copyright = u'2015, OpenStack Foundation'
# The basename for the epub file. It defaults to the project name.
#epub_basename = u'scale_rnd'
# The HTML theme for the epub output. Since the default themes are not optimized
# for small screen space, using the same theme for HTML and epub output is
# usually not wise. This defaults to 'epub', a theme designed to save visual
# space.
#epub_theme = 'epub'
# The language of the text. It defaults to the language option
# or en if the language is not set.
#epub_language = ''
# The scheme of the identifier. Typical schemes are ISBN or URL.
#epub_scheme = ''
# The unique identifier of the text. This can be a ISBN number
# or the project homepage.
#epub_identifier = ''
# A unique identification for the text.
#epub_uid = ''
# A tuple containing the cover image and cover page html template filenames.
#epub_cover = ()
# A sequence of (type, uri, title) tuples for the guide element of content.opf.
#epub_guide = ()
# HTML files that should be inserted before the pages created by sphinx.
# The format is a list of tuples containing the path and title.
#epub_pre_files = []
# HTML files shat should be inserted after the pages created by sphinx.
# The format is a list of tuples containing the path and title.
#epub_post_files = []
# A list of files that should not be packed into the epub file.
epub_exclude_files = ['search.html']
# The depth of the table of contents in toc.ncx.
#epub_tocdepth = 3
# Allow duplicate toc entries.
#epub_tocdup = True
# Choose between 'default' and 'includehidden'.
#epub_tocscope = 'default'
# Fix unsupported image types using the PIL.
#epub_fix_images = False
# Scale large images.
#epub_max_image_width = 0
# How to display URL addresses: 'footnote', 'no', or 'inline'.
#epub_show_urls = 'inline'
# If false, no index is generated.
#epub_use_index = True
# -- Options for PDF output --------------------------------------------------
# Grouping the document tree into PDF files. List of tuples
# (source start file, target name, title, author, options).
#
# If there is more than one author, separate them with \\.
# For example: r'Guido van Rossum\\Fred L. Drake, Jr., editor'
#
# The options element is a dictionary that lets you override
# this config per-document.
# For example,
# ('index', u'MyProject', u'My Project', u'Author Name',
# dict(pdf_compressed = True))
# would mean that specific document would be compressed
# regardless of the global pdf_compressed setting.
pdf_documents = [
('index', 'openstack_performance_docs', 'Performance Documentation', 'OpenStack Foundation'),
]
# A comma-separated list of custom stylesheets. Example:
pdf_stylesheets = ['pdf']
# A list of folders to search for stylesheets. Example:
pdf_style_path = ['.', '_styles', 'source/_styles', 'doc/source/_styles']
# Create a compressed PDF
# Use True/False or 1/0
# Example: compressed=True
#pdf_compressed = False
# A colon-separated list of folders to search for fonts. Example:
# pdf_font_path = ['/usr/share/fonts', '/usr/share/texmf-dist/fonts/']
# Language to be used for hyphenation support
#pdf_language = "en_US"
# Mode for literal blocks wider than the frame. Can be
# overflow, shrink or truncate
#pdf_fit_mode = "shrink"
# Section level that forces a break page.
# For example: 1 means top-level sections start in a new page
# 0 means disabled
#pdf_break_level = 1
# When a section starts in a new page, force it to be 'even', 'odd',
# or just use 'any'
#pdf_breakside = 'any'
# Insert footnotes where they are defined instead of
# at the end.
#pdf_inline_footnotes = True
# verbosity level. 0 1 or 2
#pdf_verbosity = 0
# If false, no index is generated.
#pdf_use_index = True
# If false, no modindex is generated.
#pdf_use_modindex = True
# If false, no coverpage is generated.
#pdf_use_coverpage = True
# Name of the cover page template to use
pdf_cover_template = 'pdf_cover.tmpl'
# Documents to append as an appendix to all manuals.
#pdf_appendices = []
# Enable experimental feature to split table cells. Use it
# if you get "DelayedTable too big" errors
#pdf_splittables = False
# Set the default DPI for images
#pdf_default_dpi = 72
# Enable rst2pdf extension modules (default is only vectorpdf)
# you need vectorpdf if you want to use sphinx's graphviz support
#pdf_extensions = ['vectorpdf']
# Page template name for "regular" pages
pdf_page_template = 'cutePage'
# Show Table Of Contents at the beginning?
#pdf_use_toc = True
# How many levels deep should the table of contents be?
pdf_toc_depth = 9999
# Add section number to section references
pdf_use_numbered_links = False
# Background images fitting mode
pdf_fit_background_mode = 'scale'

12
doc/source/index.rst Normal file
View File

@ -0,0 +1,12 @@
Performance Documentation
*************************
.. toctree::
:numbered:
:maxdepth: 3
.. raw:: pdf
PageBreak oneColumn

4
requirements.txt Normal file
View File

@ -0,0 +1,4 @@
rst2pdf
sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2
sphinxcontrib-httpdomain
sphinx_rtd_theme

23
setup.cfg Normal file
View File

@ -0,0 +1,23 @@
[metadata]
name = performance_docs
summary = OpenStack performance testing plans, results and investigations
description-file =
README.rst
author = OpenStack
author-email = openstack-dev@lists.openstack.org
home-page = https://github.com/openstack/performance-docs
classifier =
Environment :: OpenStack
Intended Audience :: Developers
Intended Audience :: Information Technology
License :: OSI Approved :: Apache Software License
[files]
packages =
performance_docs
[build_sphinx]
all_files = 1
build-dir = doc/build
source-dir = doc/source

29
setup.py Normal file
View File

@ -0,0 +1,29 @@
# Copyright (c) 2013 Hewlett-Packard Development Company, L.P.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# THIS FILE IS MANAGED BY THE GLOBAL REQUIREMENTS REPO - DO NOT EDIT
import setuptools
# In python < 2.7.4, a lazy loading of package `pbr` will break
# setuptools if some other modules registered functions in `atexit`.
# solution from: http://bugs.python.org/issue15881#msg170215
try:
import multiprocessing # noqa
except ImportError:
pass
setuptools.setup(
setup_requires=['pbr>=1.8'],
pbr=True)

22
tox.ini Normal file
View File

@ -0,0 +1,22 @@
[tox]
envlist = docs
minversion = 1.6
skipsdist = True
[testenv]
usedevelop = True
install_command = pip install -U {opts} {packages}
setenv = VIRTUAL_ENV={envdir}
LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_ALL=C
deps = -r{toxinidir}/requirements.txt
[testenv:venv]
commands = {posargs}
[testenv:docs]
commands =
sphinx-build -b html doc/source/ doc/build/html
sphinx-build -b latex doc/source/ doc/build/latex
sphinx-build -b pdf doc/source/ doc/build/pdf