| # -*- coding: utf-8 -*- |
| # |
| # ONAP documentation build configuration file, created by |
| # sphinx-quickstart on Wed Jul 19 16:25:31 2017. |
| # |
| # 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 |
| import shlex |
| #import sphinx_bootstrap_theme |
| |
| # 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.5.3' |
| |
| # Add any Sphinx extension module names here, as strings. They can be |
| # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom |
| # ones. |
| extensions = [ |
| 'sphinx.ext.autodoc', |
| 'sphinx.ext.doctest', |
| 'sphinx.ext.graphviz', |
| 'sphinx.ext.todo', |
| 'sphinx.ext.imgmath', |
| 'sphinx.ext.viewcode', |
| 'sphinxcontrib.blockdiag', |
| 'sphinxcontrib.needs', |
| 'sphinxcontrib.nwdiag', |
| 'sphinxcontrib.seqdiag', |
| 'sphinx.ext.ifconfig', |
| 'sphinx.ext.todo', |
| 'sphinxcontrib.plantuml', |
| 'sphinxcontrib.swaggerdoc' |
| ] |
| |
| # Font path for seqdiag |
| seqdiag_fontpath = '/usr/share/fonts/truetype/dejavu/DejaVuSansCondensed.ttf' |
| nwdiag_fontpath = '/usr/share/fonts/truetype/dejavu/DejaVuSansCondensed.ttf' |
| |
| # Add any paths that contain templates here, relative to this directory. |
| templates_path = ['_templates'] |
| |
| # The suffix(es) of source filenames. |
| # You can specify multiple suffix as a list of string: |
| # source_suffix = ['.rst', '.md'] |
| 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'' |
| copyright = u'2019 ONAP. Licensed under Creative Commons Attribution 4.0 International License' |
| |
| |
| author = u'Open Network Automation Platform' |
| |
| # 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 = 'master branch' |
| # The full version, including alpha/beta/rc tags. |
| release = 'master branch' |
| |
| # The language for content autogenerated by Sphinx. Refer to documentation |
| # for a list of supported languages. |
| # |
| # This is also used if you do content translation via gettext catalogs. |
| # Usually you set "language" from the command line for these cases. |
| 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 = [ |
| '_build' |
| ] |
| |
| # 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 |
| |
| # If true, `todo` and `todoList` produce output, else they produce nothing. |
| todo_include_todos = True |
| |
| |
| # -- Options for HTML output ---------------------------------------------- |
| |
| # The theme to use for HTML and HTML Help pages. See the documentation for |
| # a list of builtin themes. |
| #html_theme = 'classic' |
| html_theme = 'sphinx_rtd_theme' |
| |
| # 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 = { |
| 'style_nav_header_background': 'white', |
| 'sticky_navigation': False |
| } |
| |
| # Add any paths that contain custom themes here, relative to this directory. |
| #html_theme_path = sphinx_bootstrap_theme.get_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 = '_static/logo_onap_2017.png' |
| |
| # 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 = '_static/favicon.ico' |
| |
| # 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 = '%d-%b-%y %H:%M' |
| |
| # 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 = False |
| |
| # 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 |
| |
| # Language to be used for generating the HTML full-text search index. |
| # Sphinx supports the following languages: |
| # 'da', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ja' |
| # 'nl', 'no', 'pt', 'ro', 'ru', 'sv', 'tr' |
| #html_search_language = 'en' |
| |
| # A dictionary with options for the search language support, empty by default. |
| # Now only 'ja' uses this config value |
| #html_search_options = {'type': 'default'} |
| |
| # The name of a javascript file (relative to the configuration directory) that |
| # implements a search results scorer. If empty, the default will be used. |
| #html_search_scorer = 'scorer.js' |
| |
| # Output file base name for HTML help builder. |
| htmlhelp_basename = 'ONAPdoc' |
| |
| # -- 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': '', |
| |
| # Latex figure (float) alignment |
| #'figure_align': 'htbp', |
| } |
| |
| # 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 = [ |
| (master_doc, 'ONAP.tex', u'ONAP Documentation', |
| u'ONAP Contributors', '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 = [ |
| (master_doc, 'onap', u'ONAP Documentation', |
| [author], 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 = [ |
| (master_doc, 'ONAP', u'ONAP Documentation', |
| author, 'ONAP', 'Open Network Automation Platform', |
| 'Platform'), |
| ] |
| |
| # 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 = project |
| epub_author = author |
| epub_publisher = author |
| epub_copyright = copyright |
| |
| # The basename for the epub file. It defaults to the project name. |
| #epub_basename = project |
| |
| # 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 Pillow. |
| #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 |
| |
| # Patterns to ignore in linkcheck builder |
| linkcheck_ignore = [ |
| r'http://$', |
| r'http:/$', |
| r'http://10\.', |
| r'http://127\.', |
| r'http://172\.[123]', |
| r'http://app_host:port/', |
| r'http://app-host:port/', |
| r'http://ESR_SERVICE_IP', |
| r'http://ESR_SERVER_IP', |
| r'http://hostIP:\d+/', |
| r'http://load-balanced-address:\d+/', |
| r'http://localhost', |
| r'http://\$msb_address/', |
| r'http://\$MSB_SERVER_IP:\d+/', |
| r'http://msb_docker_host_ip:\d+/', |
| r'http://MSB_IP:MSB_PORT/', |
| r'http://msb.onap.org', |
| r'http://MSB_SERVER_IP:\d+/', |
| r'http://org.openecomp.', |
| r'http://{PDP_URL}:\d+/', |
| r'http://servername.domain.com', |
| r'http://.*simpledemo.openecomp.org', |
| r'http://.*simpledemo.onap.org', |
| r'http://.*test.att.com:\d+/', |
| r'http://we-are-data-router.us', |
| r'http://we-are-message-router.us:\d+/' |
| r'http://www.\[host\]:\[port\]/', |
| r'http://yourhostname', |
| r'https://$', |
| r'https:/$', |
| r'https://10\.', |
| r'https://127\.', |
| r'https://172\.[123]', |
| r'https://aaf.onap.org', |
| r'https://\$CBAM_IP', |
| r'https://ESR_SERVICE_IP', |
| r'https://ESR_SERVER_IP', |
| r'https://msb.onap.org', |
| r'https://my-subscriber-app.dcae', |
| r'https://\$CBAM_IP:\d+/', |
| r'https://load-balanced-address:\d+/', |
| r'https://prov.datarouternew.com:8443', |
| r'https://.*simpledemo.openecomp.org', |
| r'https://.*simpledemo.onap.org', |
| r'https://.*test.att.com:\d+/', |
| r'https://we-are-data-router.us', |
| r'https://we-are-message-router.us:\d+/' |
| ] |
| |
| from docutils.parsers.rst import directives |
| |
| needs_extra_options = { |
| "target": directives.unchanged, |
| "keyword": directives.unchanged, |
| "introduced": directives.unchanged, |
| "updated": directives.unchanged, |
| "impacts": directives.unchanged, |
| "validation_mode": directives.unchanged, |
| "validated_by": directives.unchanged, |
| "test": directives.unchanged, |
| "test_case": directives.unchanged, |
| "test_file": directives.unchanged, |
| "notes": directives.unchanged, |
| } |
| |
| needs_id_regex = "^[A-Z0-9]+-[A-Z0-9]+" |
| needs_id_required = True |
| needs_title_optional = True |
| |
| needs_template_collapse = """ |
| .. _{{id}}: |
| |
| {% if hide == false -%} |
| .. role:: needs_tag |
| .. role:: needs_status |
| .. role:: needs_type |
| .. role:: needs_id |
| .. role:: needs_title |
| |
| .. rst-class:: need |
| .. rst-class:: need_{{type_name}} |
| |
| .. container:: need |
| |
| `{{id}}` - {{content|indent(4)}} |
| |
| .. container:: toggle |
| |
| .. container:: header |
| |
| Details |
| |
| {% if status and status|upper != "NONE" and not hide_status %} | status: :needs_status:`{{status}}`{% endif %} |
| {% if tags and not hide_tags %} | tags: :needs_tag:`{{tags|join("` :needs_tag:`")}}`{% endif %} |
| {% if keyword %} | keyword: `{{keyword}}` {% endif %} |
| {% if target %} | target: `{{target}}` {% endif %} |
| {% if introduced %} | introduced: `{{introduced}}` {% endif %} |
| {% if updated %} | updated: `{{updated}}` {% endif %} |
| {% if impacts %} | impacts: `{{impacts}}` {% endif %} |
| {% if validation_mode %} | validation mode: `{{validation_mode}}` {% endif %} |
| {% if validated_by %} | validated by: `{{validated_by}}` {% endif %} |
| {% if test %} | test: `{{test}}` {% endif %} |
| {% if test_case %} | test case: {{test_case}} {% endif %} |
| {% if test_file %} | test file: `{{test_file}}` {% endif %} |
| {% if notes %} | notes: `{{notes}}` {% endif %} |
| | children: :need_incoming:`{{id}}` |
| | parents: :need_outgoing:`{{id}}` |
| {% endif -%} |
| """ |
| |
| def setup(app): |
| app.add_stylesheet("css/ribbon.css") |