Improve vagrant-onap documentation
It was added the process to create documentation thru sphinx tool.
Now it's possible to generate all the documentation locally running:
$ tox -e docs
Lastly, the installation guide was included as a reference to
different methods to install requirements.
Change-Id: Id0b277d605cf83ddbde54ecd9f4648e1f89023c3
Signed-off-by: Victor Morales <victor.morales@intel.com>
diff --git a/bootstrap/vagrant-onap/.gitignore b/bootstrap/vagrant-onap/.gitignore
index 3d0c81c..446d1fb 100644
--- a/bootstrap/vagrant-onap/.gitignore
+++ b/bootstrap/vagrant-onap/.gitignore
@@ -6,3 +6,4 @@
lib/files/proxyrc
lib/files/sources.list
openrc
+doc/build/
diff --git a/bootstrap/vagrant-onap/CONTRIBUTING.md b/bootstrap/vagrant-onap/CONTRIBUTING.md
index ab7f6ba..6f2897c 100644
--- a/bootstrap/vagrant-onap/CONTRIBUTING.md
+++ b/bootstrap/vagrant-onap/CONTRIBUTING.md
@@ -20,7 +20,7 @@
or using PowerShell
PS C:\> Set-ExecutionPolicy Bypass -Scope CurrentUser
- PS C:\> .\tools\Run.ps1 [test_suite] [function]
+ PS C:\> .\tools\Run.ps1 testing [test_suite] [function]
Examples
--------
diff --git a/bootstrap/vagrant-onap/README.md b/bootstrap/vagrant-onap/README.md
index e25fa35..99d2de1 100644
--- a/bootstrap/vagrant-onap/README.md
+++ b/bootstrap/vagrant-onap/README.md
@@ -17,8 +17,8 @@
| Component | Requirement |
|------------------|---------------------------------------|
| Vagrant | >= 1.8.6 |
-| Hypervisor | VirtualBox or Libvirt |
-| Operating System | Linux, Mac OS or Windows(In Progress) |
+| Provider | VirtualBox, Libvirt or OpenStack |
+| Operating System | Linux, Mac OS or Windows |
| Hard Disk | > 8 GB of free disk |
| Memory | > 12 GB |
diff --git a/bootstrap/vagrant-onap/doc/source/conf.py b/bootstrap/vagrant-onap/doc/source/conf.py
new file mode 100644
index 0000000..906f249
--- /dev/null
+++ b/bootstrap/vagrant-onap/doc/source/conf.py
@@ -0,0 +1,40 @@
+# -*- coding: utf-8 -*-
+# 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.
+
+import os
+import sys
+
+BASE_DIR = os.path.dirname(os.path.abspath(__file__))
+ROOT = os.path.abspath(os.path.join(BASE_DIR, "..", ".."))
+
+sys.path.insert(0, ROOT)
+sys.path.insert(0, BASE_DIR)
+
+# -- General configuration ----------------------------------------------------
+
+# 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.intersphinx'
+]
+
+# The suffix of source filenames.
+source_suffix = '.rst'
+
+# The master toctree document.
+master_doc = 'index'
+
+# General information about the project.
+project = u'ONAP on Vagrant'
diff --git a/bootstrap/vagrant-onap/doc/source/index.rst b/bootstrap/vagrant-onap/doc/source/index.rst
index 88950a2..509f348 100644
--- a/bootstrap/vagrant-onap/doc/source/index.rst
+++ b/bootstrap/vagrant-onap/doc/source/index.rst
@@ -17,5 +17,6 @@
.. toctree::
:maxdepth: 2
- Advanced Features <features/index>
+ Installation Guide <install/index>
+ Advanced Features <features/features>
diff --git a/bootstrap/vagrant-onap/doc/source/install/index.rst b/bootstrap/vagrant-onap/doc/source/install/index.rst
new file mode 100644
index 0000000..248c956
--- /dev/null
+++ b/bootstrap/vagrant-onap/doc/source/install/index.rst
@@ -0,0 +1,63 @@
+==================
+Installation Guide
+==================
+
+This project collects instructions related to the automatic creation
+of a development environment. However, this requires only two
+components previous to its execution. These are an automation
+building tool (Vagrant) and a provider platform (VirtualBox, Libvirt
+and OpenStack). This section explains how to install the most common
+set of configuration(Vagrant/VirtualBox) in different Operating
+Systems.
+
+Ubuntu 14.04 ("Trusty")
+-----------------------
+
+.. code-block:: console
+
+ $ wget -q https://releases.hashicorp.com/vagrant/1.9.7/vagrant_1.9.7_x86_64.deb
+ $ sudo dpkg -i vagrant_1.9.7_x86_64.deb
+ $ echo "deb http://download.virtualbox.org/virtualbox/debian trusty contrib" >> /etc/apt/sources.list
+ $ wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
+ $ wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
+ $ sudo apt-get update -y
+ $ sudo apt-get install -y virtualbox-5.1 dkms
+
+.. end
+
+CentOS
+------
+
+.. code-block:: console
+
+ $ wget -q https://releases.hashicorp.com/vagrant/1.9.7/vagrant_1.9.7_x86_64.rpm
+ $ sudo yum install vagrant_1.9.7_x86_64.rpm
+ $ wget -q http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo -P /etc/yum.repos.d
+ $ sudo yum --enablerepo=epel install dkms
+ $ wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | rpm --import -
+ $ sudo yum install VirtualBox-5.1
+
+.. end
+
+Mac OS
+------
+
+.. code-block:: console
+
+ $ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
+ $ brew cask install vagrant
+ $ brew cask install virtualbox
+
+.. end
+
+Windows 7+ (PowerShell v2+)
+---------------------------
+
+.. code-block:: console
+
+ PS C:\> Set-ExecutionPolicy AllSigned
+ PS C:\> iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
+ PS C:\> choco install vagrant
+ PS C:\> choco install virtualbox
+
+.. end
diff --git a/bootstrap/vagrant-onap/tox.ini b/bootstrap/vagrant-onap/tox.ini
index 02fccf5..6748100 100644
--- a/bootstrap/vagrant-onap/tox.ini
+++ b/bootstrap/vagrant-onap/tox.ini
@@ -9,17 +9,20 @@
install_command = pip install {opts} {packages}
[testenv:bashate]
-# if you want to test out some changes you have made to bashate
-# against devstack, just set BASHATE_INSTALL_PATH=/path/... to your
-# modified bashate tree
deps =
- {env:BASHATE_INSTALL_PATH:bashate==0.5.1}
+ {env:BASHATE_INSTALL_PATH:bashate}
whitelist_externals = bash
commands = bash -c "find {toxinidir}/{tests,lib,tools} \
-not \( -type d -path *files* -prune \) \
+ -not \( -type f -name .*.swp* -prune \) \
+ -not \( -type f -name *.ps1 -prune \) \
-type f \
# E005 file does not begin with #! or have a .sh prefix
# E006 check for lines longer than 79 columns
# E042 local declaration hides errors
# E043 Arithmetic compound has inconsistent return semantics
-print0 | xargs -0 bashate -v -iE006 -eE005,E042,E043"
+
+[testenv:docs]
+deps = sphinx
+commands = sphinx-build -W -b html doc/source doc/build/html