Setting up an ONAP development environment is not easy. Development tools and practices are not collected in a single place. This project pretends to collect and standardize that process.
2. Agenda
• ONAP and Vagrant projects definition
• Vagrant key features
• Synced Folders
• Plugins
• Shell Provisioning
• Bootstrap
• ONAP on Vagrant
• Problem Being Solved
• Architecture
• Key Features
• Supported Providers
• Deploy modes
• Next steps
3. It is an open source software platform
that delivers capabilities for the
design, creation, orchestration,
monitoring, and life cycle
management of
• Virtual Network Functions (VNFs)
• The carrier-scale Software Defined
Networks (SDNs) that contain them
• Higher-level services that combine
the above
4. It’s a tool for building and managing virtual machine
environments in a single workflow. With an easy-to-
use workflow and focus on automation, Vagrant
lowers development environment setup time,
increases production parity, and makes the "works on
my machine" excuse a relic of the past.
5. Synced Folders
Enables Vagrant to sync a folder on the host machine to the guest
machine, allowing you to continue working on your project's files on
your host machine, but use the resources in the guest machine to
compile or run your project.
6. Shell Provisioning
Provisioners in Vagrant allow you to automatically install software, alter
configurations, and more on the machine as part of the vagrant up process. Shell
provisioning is ideal for users new to Vagrant who want to get up and running
quickly and provides a strong alternative for users who are not comfortable with a
full configuration management system such as Chef or Puppet.
7. Plugins
They are powerful, first-class citizens that extend
Vagrant using a well-documented, stable API that can
withstand major version upgrades.
9. ONAP on Vagrant
This project collects methods to build ONAP artifacts for every
component. Its goal is to provide a development environment and
unify different development practices.
Moved from :
https://github.com/electrocucaracha/vagrant-onap
To
https://git.onap.org/integration/tree/bootstrap/vagrant-onap
10. 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
11. Architecture
Folders:
• doc – Contains documentation about Advanced
Features. It’s goal is to provide information about the
usage of the tool
• lib – Contains scripts to clone repositories, configure
services, build images, compile source code, etc. for
ONAP services.
• opt – Shared folder that stores ONAP source code
• tests – Contains Unit Tests that ensure the correct
functionality of the scripts located into lib folder.
• tools – Contains scripts to facilitate some daily tasks.
15. Deploy modes
• All in One: All ONAP services are
going to be provisioned in a single
Virtual Machine.
• Individual: Every ONAP service will be
provisioned in separated Virtual
Machine.
• Testing: Virtual Machine used for Unit
Tests execution.