Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


NOW AVAILABLE:  Setup of a Documentation Development System
This guide provides a detailed description to set up a system suitable to create, check and preview documentation locally. The targeted readership are beginners and people interested in creating documentation. The guide describes the setup of a development system from scratch using the Ubuntu Desktop version installed in a virtual machine. It includes all required steps and also some optional ones that may ease your daily work with this development system.

Read more here: https://docs.onap.org/en/latest/guides/onap-documentation/setup-of-a-doc-dev-system.html

Context

ONAP documentation is using reStructuredText (RST) as input format.

RST files are then translated to HTML file using Sphinx Python utility and are then uploaded to the readthedoc web site based on a dedicated Jenkins Job

In a few minutes, your local environment can be setup to help you writing RST files.

We propose 2 configurations:

  • A local one: to verify syntax highligh
  • An advanced one: to check locally the generated HTML files as produced by ONAP

Basic Local Environnement

Many tools are available to write RST files. We propose a solution based on VisualStudioCode that includes a large number of plugins to check that your RST files are correct.

The VisualStudioCode is available here

The useful plugins for RST are the following:

As a result, we can see on your environment the RST key words highlighted and some spelling errors as illustrated on the following picture:

Image Removed

Advanced Local Environment

It is possible to preview the HTML produced by ONAP documentation using the Preview button Image Removed on the top-right corner.

Image Removed

However, it requires some local configuration on your desktop

  • to set up the following Python libraries.
  • to configure the RST plugin

Local Python libraries

ONAP is using a set of Sphinx extensions to generate the documentation:

  • sphinxcontrib.blockdiag
  • sphinxcontrib.sphinxcontrib-needs
  • sphinxcontrib.sphinxcontrib-plantuml
  • sphinxcontrib.nwdiag
  • sphinxcontrib.seqdiag
  • sphinxcontrib.swaggerdoc
  • sphinx_rtd_theme
pip install lfdocs-conf 
pip install rstcheck
pip install doc8
pip install sphinx sphinx-autobuild
pip install sphinxcontrib.blockdiag
pip install sphinxcontrib.sphinxcontrib-needs
pip install sphinxcontrib.sphinxcontrib-plantuml
pip install sphinxcontrib.nwdiag
pip install sphinxcontrib.seqdiag
pip install sphinxcontrib.swaggerdoc
pip install sphinx_rtd_theme

RST Plugin configuration

In addition, it is important to configure the RST plugin with the following parameter as diplayed in the figure

...

 Image Removed

Conf Path: ${workspaceFolder}/docs
Docutils Writer: html
Docutils Writer Part: html_body
Linter:  Executable Path: /usr/bin/doc8
Linter: Name: doc8Sphinx Build Path: /usr/local/bin/sphinx-build

...