58d4443d108e6264bca4b08292efbf69f3a33118
[csit.git] / resources / tools / presentation / conf.py
1 # -*- coding: utf-8 -*-
2 #
3 # CSIT report documentation build configuration file
4 #
5 # This file is execfile()d with the current directory set to its
6 # containing dir.
7 #
8 # Note that not all possible configuration values are present in this
9 # autogenerated file.
10 #
11 # All configuration values have a default; values that are commented out
12 # serve to show the default.
13
14 # If extensions (or modules to document with autodoc) are in another directory,
15 # add these directories to sys.path here. If the directory is relative to the
16 # documentation root, use os.path.abspath to make it absolute, like shown here.
17
18
19 import os
20 import sys
21
22 sys.path.insert(0, os.path.abspath('.'))
23
24 # -- General configuration ------------------------------------------------
25
26 # If your documentation needs a minimal Sphinx version, state it here.
27 #
28 # needs_sphinx = '1.0'
29
30 # Add any Sphinx extension module names here, as strings. They can be
31 # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
32 # ones.
33 extensions = ['sphinxcontrib.programoutput',
34               'sphinx.ext.ifconfig']
35
36 # Add any paths that contain templates here, relative to this directory.
37 templates_path = ['_templates']
38
39 # The suffix(es) of source file names.
40 # You can specify multiple suffix as a list of string:
41 #
42 source_suffix = ['.rst', '.md']
43
44 # The master toctree document.
45 master_doc = 'index'
46
47 # General information about the project.
48 report_week = '06'
49 project = u'FD.io CSIT-1901.{week}'.format(week=report_week)
50 copyright = u'2019, FD.io'
51 author = u'FD.io CSIT'
52
53 # The version info for the project you're documenting, acts as replacement for
54 # |version| and |release|, also used in various other places throughout the
55 # built documents.
56 #
57 # The short X.Y version.
58 # version = u''
59 # The full version, including alpha/beta/rc tags.
60 # release = u''
61
62 rst_epilog = """
63 .. |release-1| replace:: {prev_release}
64 .. |srelease| replace:: {srelease}
65 .. |csit-release| replace:: CSIT-{csitrelease}
66 .. |csit-release-1| replace:: CSIT-{csit_prev_release}
67 .. |vpp-release| replace:: VPP-{vpprelease} release
68 .. |vpp-release-1| replace:: VPP-{vpp_prev_release} release
69 .. |dpdk-release| replace:: DPDK {dpdkrelease}
70 .. |trex-release| replace:: TRex {trex_version}
71 .. |virl-image-ubuntu| replace:: {csit_ubuntu_ver}
72 .. |virl-image-centos| replace:: {csit_centos_ver}
73
74 .. _pdf version of this report: https://docs.fd.io/csit/{release}/report/_static/archive/csit_{release}.{report_week}.pdf
75 .. _tag documentation rst file: https://git.fd.io/csit/tree/docs/tag_documentation.rst?h={release}
76 .. _TRex intallation: https://git.fd.io/csit/tree/resources/tools/trex/trex_installer.sh?h={release}
77 .. _TRex driver: https://git.fd.io/csit/tree/resources/tools/trex/trex_stateless_profile.py?h={release}
78 .. _VIRL topologies directory: https://git.fd.io/csit/tree/resources/tools/virl/topologies/?h={release}
79 .. _VIRL ubuntu images lists: https://git.fd.io/csit/tree/resources/tools/disk-image-builder/ubuntu/lists/?h={release}
80 .. _VIRL centos images lists: https://git.fd.io/csit/tree/resources/tools/disk-image-builder/centos/lists/?h={release}
81 .. _VIRL nested: https://git.fd.io/csit/tree/resources/tools/disk-image-builder/nested/?h={release}
82 .. _CSIT Honeycomb Functional Tests Documentation: https://docs.fd.io/csit/{release}/doc/tests.vpp.func.honeycomb.html
83 .. _CSIT Honeycomb Performance Tests Documentation: https://docs.fd.io/csit/{release}/doc/tests.vpp.perf.honeycomb.html
84 .. _CSIT DPDK Performance Tests Documentation: https://docs.fd.io/csit/{release}/doc/tests.dpdk.perf.html
85 .. _CSIT VPP Functional Tests Documentation: https://docs.fd.io/csit/{release}/doc/tests.vpp.func.html
86 .. _CSIT VPP Performance Tests Documentation: https://docs.fd.io/csit/{release}/doc/tests.vpp.perf.html
87 .. _CSIT NSH_SFC Functional Tests Documentation: https://docs.fd.io/csit/{release}/doc/tests.nsh_sfc.func.html
88 .. _CSIT DMM Functional Tests Documentation: https://docs.fd.io/csit/{release}/doc/tests.dmm.func.html
89 .. _CSIT VPP Device Tests Documentation: https://docs.fd.io/csit/{release}/doc/tests.vpp.device.html
90 .. _VPP test framework documentation: https://docs.fd.io/vpp/{vpprelease}/vpp_make_test/html/
91 .. _FD.io test executor dpdk performance job 3n-hsw: https://jenkins.fd.io/view/csit/job/csit-dpdk-perf-verify-{srelease}-3n-hsw
92 .. _FD.io test executor dpdk performance job 3n-skx: https://jenkins.fd.io/view/csit/job/csit-dpdk-perf-verify-{srelease}-3n-skx
93 .. _FD.io test executor dpdk performance job 2n-skx: https://jenkins.fd.io/view/csit/job/csit-dpdk-perf-verify-{srelease}-2n-skx
94 .. _FD.io test executor vpp performance job 3n-hsw: https://jenkins.fd.io/view/csit/job/csit-vpp-perf-verify-{srelease}-3n-hsw
95 .. _FD.io test executor vpp performance job 3n-skx: https://jenkins.fd.io/view/csit/job/csit-vpp-perf-verify-{srelease}-3n-skx
96 .. _FD.io test executor vpp performance job 2n-skx: https://jenkins.fd.io/view/csit/job/csit-vpp-perf-verify-{srelease}-2n-skx
97 .. _FD.io test executor ligato performance jobs: https://jenkins.fd.io/job/csit-ligato-perf-{srelease}-all
98 .. _FD.io test executor vpp functional jobs using Ubuntu: https://jenkins.fd.io/view/csit/job/csit-vpp-functional-{srelease}-ubuntu1604-virl
99 .. _FD.io test executor vpp functional jobs using CentOs: https://jenkins.fd.io/view/csit/job/csit-vpp-functional-{srelease}-centos7-virl
100 .. _FD.io test executor vpp device jobs using Ubuntu: https://jenkins.fd.io/view/csit/job/csit-vpp-device-{srelease}-ubuntu1804-1n-skx
101 .. _FD.io test executor Honeycomb functional jobs: https://jenkins.fd.io/view/csit/job/hc2vpp-csit-integration-{srelease}-ubuntu1604
102 .. _FD.io test executor NSH_SFC functional jobs: https://jenkins.fd.io/view/csit/job/csit-nsh_sfc-verify-func-{srelease}-ubuntu1604-virl
103 .. _FD.io test executor DMM functional jobs: https://jenkins.fd.io/view/csit/job/csit-dmm-functional-{srelease}-ubuntu1604-virl
104 .. _FD.io VPP compile job: https://jenkins.fd.io/view/vpp/job/vpp-merge-{srelease}-ubuntu1604/
105 .. _FD.io DPDK compile job: https://jenkins.fd.io/view/deb-dpdk/job/deb_dpdk-merge-{sdpdkrelease}-ubuntu1604/
106 .. _CSIT Testbed Setup: https://git.fd.io/csit/tree/resources/tools/testbed-setup/README.md?h={release}
107 .. _K8s configuration files: https://github.com/FDio/csit/tree/{release}/resources/templates/kubernetes
108 """.format(release='rls1901',
109            report_week=report_week,
110            prev_release='rls1810',
111            srelease='1901',
112            csitrelease='1901',
113            csit_prev_release='1810',
114            vpprelease='19.01',
115            vpp_prev_release='18.10',
116            dpdkrelease='18.08',  # 18.11
117            sdpdkrelease='1808',
118            trex_version='v2.35',
119            csit_ubuntu_ver='csit-ubuntu-16.04.1_2019-01-04_2.3',
120            csit_centos_ver='csit-centos-7.4-1711_2019-01-04_2.1')
121
122 # The language for content autogenerated by Sphinx. Refer to documentation
123 # for a list of supported languages.
124 #
125 # This is also used if you do content translation via gettext catalogs.
126 # Usually you set "language" from the command line for these cases.
127 language = 'en'
128
129 # List of patterns, relative to source directory, that match files and
130 # directories to ignore when looking for source files.
131 # This patterns also effect to html_static_path and html_extra_path
132 exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
133
134 # The name of the Pygments (syntax highlighting) style to use.
135 pygments_style = 'sphinx'
136
137 # If true, `todo` and `todoList` produce output, else they produce nothing.
138 todo_include_todos = False
139
140 # -- Options for HTML output ----------------------------------------------
141
142 # The theme to use for HTML and HTML Help pages.  See the documentation for
143 # a list of builtin themes.
144 #
145 html_theme = 'sphinx_rtd_theme'
146
147 # Theme options are theme-specific and customize the look and feel of a theme
148 # further.  For a list of options available for each theme, see the
149 # documentation.
150 #
151 html_theme_options = {
152     'canonical_url': '',
153     'analytics_id': '',
154     'logo_only': False,
155     'display_version': True,
156     'prev_next_buttons_location': 'bottom',
157     'style_external_links': False,
158     # Toc options
159     'collapse_navigation': True,
160     'sticky_navigation': True,
161     'navigation_depth': 3,
162     'includehidden': True,
163     'titles_only': False
164 }
165
166 # Add any paths that contain custom static files (such as style sheets) here,
167 # relative to this directory. They are copied after the builtin static files,
168 # so a file named "default.css" will overwrite the builtin "default.css".
169 html_theme_path = ['env/lib/python2.7/site-packages/sphinx_rtd_theme']
170
171 # html_static_path = ['_build/_static']
172 html_static_path = ['_tmp/src/_static']
173
174 html_context = {
175     'css_files': [
176         '_static/theme_overrides.css',  # overrides for wide tables in RTD theme
177         ],
178     }
179
180 # If false, no module index is generated.
181 html_domain_indices = True
182
183 # If false, no index is generated.
184 html_use_index = True
185
186 # If true, the index is split into individual pages for each letter.
187 html_split_index = False
188
189 # -- Options for LaTeX output ---------------------------------------------
190
191 latex_engine = 'pdflatex'
192
193 latex_elements = {
194      # The paper size ('letterpaper' or 'a4paper').
195      #
196      'papersize': 'a4paper',
197
198      # The font size ('10pt', '11pt' or '12pt').
199      #
200      #'pointsize': '10pt',
201
202      # Additional stuff for the LaTeX preamble.
203      #
204      'preamble': r'''
205          \usepackage{pdfpages}
206          \usepackage{svg}
207          \usepackage{charter}
208          \usepackage[defaultsans]{lato}
209          \usepackage{inconsolata}
210          \usepackage{csvsimple}
211          \usepackage{longtable}
212          \usepackage{booktabs}
213      ''',
214
215      # Latex figure (float) alignment
216      #
217      'figure_align': 'H',
218
219      # Latex font setup
220      #
221      'fontpkg': r'''
222          \renewcommand{\familydefault}{\sfdefault}
223      ''',
224
225      # Latex other setup
226      #
227      'extraclassoptions': 'openany',
228      'sphinxsetup': r'''
229          TitleColor={RGB}{225,38,40},
230          InnerLinkColor={RGB}{62,62,63},
231          OuterLinkColor={RGB}{225,38,40},
232          shadowsep=0pt,
233          shadowsize=0pt,
234          shadowrule=0pt
235      '''
236 }
237
238 # Grouping the document tree into LaTeX files. List of tuples
239 # (source start file, target name, title,
240 #  author, documentclass [howto, manual, or own class]).
241 latex_documents = [
242     (master_doc, 'csit.tex', u'CSIT REPORT',
243      u'', 'manual'),
244 ]
245
246 # The name of an image file (relative to this directory) to place at the top of
247 # the title page.
248 #
249 # latex_logo = 'fdio.pdf'
250
251 # For "manual" documents, if this is true, then toplevel headings are parts,
252 # not chapters.
253 #
254 # latex_use_parts = True
255
256 # If true, show page references after internal links.
257 #
258 latex_show_pagerefs = True
259
260 # If true, show URL addresses after external links.
261 #
262 latex_show_urls = 'footnote'
263
264 # Documents to append as an appendix to all manuals.
265 #
266 # latex_appendices = []
267
268 # It false, will not define \strong, \code,     itleref, \crossref ... but only
269 # \sphinxstrong, ..., \sphinxtitleref, ... To help avoid clash with user added
270 # packages.
271 #
272 # latex_keep_old_macro_names = True
273
274 # If false, no module index is generated.
275 #
276 # latex_domain_indices = True