From 7ea8dff1940b40c3575f5db3a30c4fd40e142d82 Mon Sep 17 00:00:00 2001 From: Abraham Arce Date: Wed, 27 Feb 2019 05:44:06 -0600 Subject: [PATCH] [Doc] Setup and Build Enable documentation via Sphinx Documentation Project and Tox Automation Project: - Setting up - [1] sphinx-quickstart - [2] layout doc/source/ - [3] layout top directory - Building - [4] tox -e docs Story: 2004828 Task: 29733 Change-Id: I8ba09c17ff4abee5e6569f9484ee5853dd29ed1a Signed-off-by: Abraham Arce --- .zuul.yaml | 2 +- automated-pytest-suite/README.rst | 5 - automated-robot-suite/README.rst | 16 -- doc/requirements.txt | 4 +- doc/source/automated_pytest_suite/index.rst | 11 ++ doc/source/automated_robot_suite/index.rst | 11 ++ doc/source/conf.py | 158 ++++++++++++++++++++ doc/source/index.rst | 29 ++++ doc/source/manual_tests/index.rst | 10 ++ manual-tests/README.rst | 5 - tox.ini | 20 +++ 11 files changed, 243 insertions(+), 28 deletions(-) delete mode 100644 automated-pytest-suite/README.rst delete mode 100644 automated-robot-suite/README.rst create mode 100644 doc/source/automated_pytest_suite/index.rst create mode 100644 doc/source/automated_robot_suite/index.rst create mode 100644 doc/source/conf.py create mode 100644 doc/source/index.rst create mode 100644 doc/source/manual_tests/index.rst delete mode 100644 manual-tests/README.rst create mode 100644 tox.ini diff --git a/.zuul.yaml b/.zuul.yaml index e7c200a..059c6a9 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -1,3 +1,3 @@ - project: templates: - - noop-jobs + - build-openstack-docs-pti diff --git a/automated-pytest-suite/README.rst b/automated-pytest-suite/README.rst deleted file mode 100644 index edfd88e..0000000 --- a/automated-pytest-suite/README.rst +++ /dev/null @@ -1,5 +0,0 @@ -========== -stx-test -========== - -StarlingX Pytest suite diff --git a/automated-robot-suite/README.rst b/automated-robot-suite/README.rst deleted file mode 100644 index 17e5ba8..0000000 --- a/automated-robot-suite/README.rst +++ /dev/null @@ -1,16 +0,0 @@ -========== -StarlingX Robot suite -========== - -.. contents:: Table of contents: - :local: - :depth: 2 - - -Introduction -============ - -This project contains an Automated Test Suite base on Robot Framework that -validates StarlingX product. For more information about StarligX consult: - -https://www.starlingx.io diff --git a/doc/requirements.txt b/doc/requirements.txt index 520bd28..48fca8e 100644 --- a/doc/requirements.txt +++ b/doc/requirements.txt @@ -1 +1,3 @@ -sphinx>=1.6.2 +# Documentation Sphinx +sphinx>=1.8.2 # BSD +openstackdocstheme>=1.26.0 # Apache-2.0 diff --git a/doc/source/automated_pytest_suite/index.rst b/doc/source/automated_pytest_suite/index.rst new file mode 100644 index 0000000..d14953a --- /dev/null +++ b/doc/source/automated_pytest_suite/index.rst @@ -0,0 +1,11 @@ +========================== +StarlingX PyTest Framework +========================== + +------------ +Introduction +------------ + +This project contains an Automated Test Suite based on PyTest Framework that +validates the StarlingX product. For more information about StarlingX, see +https://docs.starlingx.io/. diff --git a/doc/source/automated_robot_suite/index.rst b/doc/source/automated_robot_suite/index.rst new file mode 100644 index 0000000..ad2ba05 --- /dev/null +++ b/doc/source/automated_robot_suite/index.rst @@ -0,0 +1,11 @@ +========================= +StarlingX Robot Framework +========================= + +------------ +Introduction +------------ + +This project contains an Automated Test Suite based on Robot Framework that +validates the StarlingX product. For more information about StarlingX, see +https://docs.starlingx.io/. diff --git a/doc/source/conf.py b/doc/source/conf.py new file mode 100644 index 0000000..d6c8e39 --- /dev/null +++ b/doc/source/conf.py @@ -0,0 +1,158 @@ +# -*- coding: utf-8 -*- +# +# Configuration file for the Sphinx documentation builder. +# +# This file does only contains a selection of the most common options. For a +# full list, see the documentation: +# http://www.sphinx-doc.org/en/master/config + +# -- Path setup -------------------------------------------------------------- + +# If extensions (or modules to document with autodoc) are in another +# directory, add that directory to sys.path here. If the directory is relative +# to the documentation root, use os.path.abspath to make it absolute. See the +# following example: +# +# import os +# import sys +# sys.path.insert(0, os.path.abspath('.')) + + +# -- Project information ----------------------------------------------------- + +project = u'stx-test' +copyright = u'2019, StarlingX' +author = u'StarlingX' + +# The short X.Y version +version = '' +# The full version, including alpha/beta/rc tags +release = '' + + +# -- 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 that come with Sphinx (named 'sphinx.ext.*') or your custom +# ones. +extensions = [ + 'openstackdocstheme', +] + +# Add any paths that contain templates here. Use relative pathnames. +# templates_path = ['_templates'] + +# The suffix(es) of source filenames. +# You can use a list of strings to specify more than one suffix: +# +# source_suffix = ['.rst', '.md'] +source_suffix = '.rst' + +# The master toctree document. +master_doc = 'index' + +# 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 + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +# This pattern also affects html_static_path and html_extra_path. +exclude_patterns = [] + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = None + + +# -- 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 = 'starlingxdocs' + +# 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 static files (such as style sheets) here. +# Make sure the paths you specify are relative to this directory. The files +# are copied after the builtin static files. Thus, a file named "default.css" +# will overwrite the builtin "default.css". +# html_static_path = ['_static'] + +# Custom sidebar templates. These must be a dictionary that maps document +# names to template names. +# +# The default sidebars for documents that don't match any pattern are +# defined by theme itself. Builtin themes are using these templates by +# default: ``['localtoc.html', 'relations.html', 'sourcelink.html', +# 'searchbox.html']``. +# +# html_sidebars = {} + + +# -- Options for HTMLHelp output --------------------------------------------- + +# Output file base name for HTML help builder. +htmlhelp_basename = 'stx-testdoc' + + +# -- 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, 'stx-test.tex', u'stx-test Documentation', + u'StarlingX', 'manual'), +] + + +# -- 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, 'stx-test', u'stx-test Documentation', + [author], 1) +] + + +# -- 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, 'stx-test', u'stx-test Documentation', + author, 'stx-test', 'One line description of project.', + 'Miscellaneous'), +] diff --git a/doc/source/index.rst b/doc/source/index.rst new file mode 100644 index 0000000..4eab250 --- /dev/null +++ b/doc/source/index.rst @@ -0,0 +1,29 @@ +====================== +stx-test Documentation +====================== + +This is the documentation for StarlingX Test. + + +-------- +Sections +-------- + +.. toctree:: + :maxdepth: 1 + + automated_pytest_suite/index + automated_robot_suite/index + manual_tests/index + +----- +Links +----- + +* Source: `stx-test`_ +* Code Review: `Gerrit`_ +* Bugs: `Storyboard`_ + +.. _stx-test: https://git.starlingx.io/cgit/stx-test/ +.. _Gerrit: https://review.openstack.org/#/q/project:openstack/stx-test +.. _Storyboard: https://storyboard.openstack.org/#!/project/openstack/stx-test diff --git a/doc/source/manual_tests/index.rst b/doc/source/manual_tests/index.rst new file mode 100644 index 0000000..dcbf9e6 --- /dev/null +++ b/doc/source/manual_tests/index.rst @@ -0,0 +1,10 @@ +====================== +StarlingX Manual Tests +====================== + +------------ +Introduction +------------ + +This project contains Manual Tests that validate the StarlingX product. +For more information about StarlingX, see https://docs.starlingx.io/. diff --git a/manual-tests/README.rst b/manual-tests/README.rst deleted file mode 100644 index d0f8b77..0000000 --- a/manual-tests/README.rst +++ /dev/null @@ -1,5 +0,0 @@ -========== -stx-test Manual -========== - -StarlingX Manual testing diff --git a/tox.ini b/tox.ini new file mode 100644 index 0000000..2dd5767 --- /dev/null +++ b/tox.ini @@ -0,0 +1,20 @@ +[tox] +minversion = 2.3 +skipsdist = True + +[testenv] +basepython = python3 +install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {opts} {packages} +setenv = VIRTUAL_ENV={envdir} + OS_STDOUT_CAPTURE=1 + OS_STDERR_CAPTURE=1 + OS_TEST_TIMEOUT=60 + PYTHONDONTWRITEBYTECODE=True + +[testenv:docs] +basepython = python3 +deps = -r{toxinidir}/doc/requirements.txt +commands = + rm -rf doc/build + sphinx-build -a -E -W -d doc/build/doctrees -b html doc/source doc/build/html +whitelist_externals = rm