Definition
This vagrant project collects information about to setup tools for developing on ONAP project. That includes cloning source code, installing dependencies and building and deploying artifacts.
Problem Being Solved
- Reduce the barrier of entry to allow new ONAP developers to ramp up on to active development quickly
- Reduce the cost to the community in responding to simple environment setup questions faced by new developers
Change log
Date | Description |
---|---|
2017-08-09 | Added support to generate HTML documentation through `tox -e docs` command |
2017-08-08 | Created Run.ps1 as a helper script for Windows users |
2017-08-06 | Created unit tests for A&AI component |
2017-08-02 | Migrated into Integration project under /integration/bootstrap/vagrant-onap |
Setup
Only two components are required for using this project, an automation building tool (Vagrant) and a provider platform (supported options: VirtualBox, Libvirt and OpenStack). This section explains how to install Vagrant and VirtualBox which are the most common configuration:
Ubuntu 14.04 ("Trusty")
$ wget -q https://releases.hashicorp.com/vagrant/1.9.7/vagrant_1.9.7_x86_64.deb $
wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -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 -
$
$ sudo apt-get update -y
$ sudo apt-get install -y virtualbox-5.1 dkms
CentOS
$ wget -q https://releases.hashicorp.com/vagrant/1.9.7/vagrant_1.9.7_x86_64.rpm $
wget -q http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo -P /etc/yum.repos.dsudo yum install
vagrant_1.9.7_x86_64.rpm
$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
Mac OS
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ brew cask install vagrant
$ brew cask install virtualbox
Windows 7+ (PowerShell v2+)
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
Execution
This project provides an Ubuntu Virtual Image with all the dependencies and files required to develop in ONAP. Even when it's possible to use vagrant commands(up, destroy, suspend, provision, etc), it's highly recommend to use the scripts provided into the tools folder. Their usage is
*NIX
$ git clone https://git.onap.org/integration
$ cd bootstrap/vagrant-onap
$ ./tools/run.sh app_name [-s test_suite| -c test_case]
Windows 7+ (PowerShell v2+, run with Administrator privileges)
PS C:\> git clone https://git.onap.org/integration
PS C:\> cd bootstrap\vagrant-onap
PS C:\>
.\tools\Run.ps1 app_name [-s test_suite| -c test_case]
app_name | Description |
---|---|
aai | Active and Available Inventory |
appc | Application Controller |
dcae | Data Collection Analytics & Events |
mr | Message Router |
policy | Policy |
portal | Portal |
robot | Robot |
sdc | Service Design & Creation |
sdnc | Software Defined Network Controller |
vid | Virtual Infrastructure Development |
vfc | Virtual Function Controller |
all_in_one | All ONAP services in a single VM |
testing | Unit Testing purposes VM |
** Note: Most of the components and scripts are under development.