Table of Contents |
---|
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 artifactsStarted as an attempt to deploy ONAP services without relying on a OpenStack deployment, this project has been re-architectured to provide an automated tool for provisioning ONAP development environment. Covering some common development tasks such as the cloning source code repositories of specific component, compile java artifacts per component and building Docker images of specific component. This has been vehicle to standardize process and dependencies through an automated provisioning mechanism, as consequence its possible to setup a development environment using only a single instruction. Adding this tool into a CI/CD pipeline can prevent any compilation failure in the future and guarantee building image process works any time.
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
...
Minimal Requirements
Component | Description |
---|---|
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
Requirement | |
---|---|
Vagrant | >= 1.8.6 |
Provider | VirtualBox, Libvirt or OpenStack |
Operating System | Linux, Mac OS or Windows |
Hard Disk | > 8 GB of free disk |
Memory | > 12 GB |
Usage
Windows
PS C:> cd integration\bootstrap\vagrant-onap
PS C:\integration\bootstrap\vagrant-onap> Set-ExecutionPolicy Bypass -Scope CurrentUser
PS C:\integration\bootstrap\vagrant-onap> .\tools\Run.ps1 <app_name>
Linux or Mac OS
$ cd integration/bootstrap/vagrant-onap $ ./tools/run.sh
...
Windows 7+ (PowerShell v2+)
PS C:\> git clone https://git.onap.org/integration
PS C:\> cd bootstrap\vagrant-onap
PS C:\>
.\tools\Run.ps1 app_name [test_suite] [function]
<app_name>
supported options:
app_name | ||
---|---|---|
description | ||
aai | Active and Available Inventory | |
appc | Application Controller | |
dcae | Data Collection Analytics & Events | |
mr | Message Router | |
mso | Master Service Orchestrator | |
msb | Microservices Bus Project | |
policy | Policy | |
portal | Portal | |
robot | Robot | |
sdc | Service Design & Creation | |
sdnc | Software Defined Network Controller | |
vid | Virtual Infrastructure Development | |
vfc | Virtual Function Controller | |
vnfsdk | VNF SDK | |
vvp | VNF Validation Program | |
multicloud | Multi Cloud | |
ccsdk | Common Controller SDK | |
all_in_one | All ONAP services in a | singleVM |
testing | Unit | Testing purposesTest VM |
...
HTML documentation
For more information, see http://onap.readthedocs.io/en/latest/submodules/integration.git/bootstrap/vagrant-onap/doc/source/
View file | ||||
---|---|---|---|---|
|