summaryrefslogtreecommitdiffstats
path: root/bootstrap/vagrant-onap/Vagrantfile
diff options
context:
space:
mode:
Diffstat (limited to 'bootstrap/vagrant-onap/Vagrantfile')
-rw-r--r--bootstrap/vagrant-onap/Vagrantfile163
1 files changed, 150 insertions, 13 deletions
diff --git a/bootstrap/vagrant-onap/Vagrantfile b/bootstrap/vagrant-onap/Vagrantfile
index 19c63cfe8..a46afd5fe 100644
--- a/bootstrap/vagrant-onap/Vagrantfile
+++ b/bootstrap/vagrant-onap/Vagrantfile
@@ -24,9 +24,40 @@ conf = {
'nexus_repo_root' => 'https://nexus.onap.org',
'nexus_url_snapshot' => 'https://nexus.onap.org/content/repositories/snapshots',
'gitlab_branch' => 'master',
- 'build_image' => 'True'
+ 'build_image' => 'True',
+ 'odl_version' => '0.5.3-Boron-SR3',
+ 'compile_repo' => 'False'
}
+Vagrant.require_version ">= 1.8.6"
+
+# Determine the OS for the host computer
+module OS
+ def OS.windows?
+ (/cygwin|mswin|mingw|bccwin|wince|emx/ =~ RUBY_PLATFORM) != nil
+ end
+
+ def OS.mac?
+ (/darwin/ =~ RUBY_PLATFORM) != nil
+ end
+
+ def OS.unix?
+ !OS.windows?
+ end
+
+ def OS.linux?
+ OS.unix? and not OS.mac?
+ end
+end
+
+if OS.windows?
+ puts "Vagrant launched from windows. This configuration has not fully tested."
+end
+
+# Determine the provider used
+provider = (ENV['VAGRANT_DEFAULT_PROVIDER'] || :virtualbox).to_sym
+puts "Using #{provider} provider"
+
vd_conf = ENV.fetch('VD_CONF', 'etc/settings.yaml')
if File.exist?(vd_conf)
require 'yaml'
@@ -49,20 +80,48 @@ Vagrant.configure("2") do |config|
config.proxy.no_proxy = ENV['no_proxy']
end
- #config.vm.box = 'sputnik13/trusty64'
config.vm.box = 'ubuntu/trusty64'
+ if provider == :libvirt
+ config.vm.box = 'sputnik13/trusty64'
+ end
+ if provider == :openstack
+ config.vm.box = nil
+ config.ssh.username = 'ubuntu'
+ if not Vagrant.has_plugin?('vagrant-openstack-provider')
+ system 'vagrant plugin install vagrant-openstack-provider'
+ raise 'vagrant-openstack-provider was installed but it requires to execute again'
+ end
+ end
#config.vm.provision "docker"
config.vm.synced_folder './opt', '/opt/', create: true
config.vm.synced_folder './lib', '/var/onap/', create: true
config.vm.synced_folder '~/.m2', '/root/.m2/', create: true
- config.vm.provider "virtualbox" do |v|
+ config.vm.provider :virtualbox do |v|
v.customize ["modifyvm", :id, "--memory", 4 * 1024]
end
- config.vm.provider "libvirt" do |v|
+ config.vm.provider :libvirt do |v|
v.memory = 4 * 1024
v.nested = true
end
+ config.vm.provider :openstack do |v|
+
+ v.openstack_auth_url = ENV.fetch('OS_AUTH_URL', '')
+ v.tenant_name = ENV.fetch('OS_TENANT_NAME', '')
+ v.username = ENV.fetch('OS_USERNAME', '')
+ v.password = ENV.fetch('OS_PASSWORD', '')
+ v.region = ENV.fetch('OS_REGION_NAME', '')
+ v.identity_api_version = ENV.fetch('OS_IDENTITY_API_VERSION', '')
+ v.domain_name = ENV.fetch('OS_PROJECT_DOMAIN_ID', '')
+ v.project_name = ENV.fetch('OS_PROJECT_NAME', '')
+
+ v.floating_ip_pool = ENV.fetch('OS_FLOATING_IP_POOL', '')
+ v.floating_ip_pool_always_allocate = (ENV['OS_FLOATING_IP_ALWAYS_ALLOCATE'] == 'true')
+ v.image = ENV.fetch('OS_IMAGE', '')
+ v.security_groups = [ENV.fetch('OS_SEC_GROUP', '')]
+ v.flavor = 'm1.medium'
+ v.networks = ENV.fetch('OS_NETWORK', '')
+ end
case deploy_mode
@@ -83,9 +142,13 @@ Vagrant.configure("2") do |config|
v.nested = true
v.storage :file, path: sdc_volume, bus: 'sata', device: 'vdb', size: '2G'
end
+ all_in_one.vm.provider "openstack" do |v|
+ v.server_name = 'all-in-one'
+ v.flavor = 'm1.xlarge'
+ end
all_in_one.vm.provision 'shell' do |s|
s.path = 'postinstall.sh'
- s.args = ['mr', 'sdc', 'aai', 'mso', 'robot', 'vid', 'sdnc', 'portal', 'dcae', 'policy', 'appc']
+ s.args = ['mr', 'sdc', 'aai', 'mso', 'robot', 'vid', 'sdnc', 'portal', 'dcae', 'policy', 'appc', 'vfc']
s.env = conf
end
end
@@ -102,16 +165,23 @@ Vagrant.configure("2") do |config|
v.memory = 1 * 1024
v.nested = true
end
+ dns.vm.provider "openstack" do |v|
+ v.server_name = 'dns'
+ v.flavor = 'm1.small'
+ end
dns.vm.provision 'shell' do |s|
s.path = 'postinstall.sh'
s.env = conf
end
end
- config.vm.define :message_router do |message_router|
- message_router.vm.hostname = 'message-router'
- message_router.vm.network :private_network, ip: '192.168.50.4'
- message_router.vm.provision 'shell' do |s|
+ config.vm.define :mr do |mr|
+ mr.vm.hostname = 'message-router'
+ mr.vm.network :private_network, ip: '192.168.50.4'
+ mr.vm.provider "openstack" do |v|
+ v.server_name = 'message-router'
+ end
+ mr.vm.provision 'shell' do |s|
s.path = 'postinstall.sh'
s.args = ['mr']
s.env = conf
@@ -122,17 +192,17 @@ Vagrant.configure("2") do |config|
sdc.vm.hostname = 'sdc'
sdc.vm.network :private_network, ip: '192.168.50.5'
sdc.vm.provider "virtualbox" do |v|
- v.customize ["modifyvm", :id, "--memory", 4 * 1024]
unless File.exist?(sdc_volume)
v.customize ['createhd', '--filename', sdc_volume, '--size', 20 * 1024]
end
v.customize ['storageattach', :id, '--storagectl', 'SATAController', '--port', 1, '--device', 0, '--type', 'hdd', '--medium', sdc_volume]
end
sdc.vm.provider "libvirt" do |v|
- v.memory = 4 * 1024
- v.nested = true
v.storage :file, path: sdc_volume, bus: 'sata', device: 'vdb', size: '2G'
end
+ sdc.vm.provider "openstack" do |v|
+ v.server_name = 'sdc'
+ end
sdc.vm.provision 'shell' do |s|
s.path = 'postinstall.sh'
s.args = ['sdc']
@@ -143,6 +213,9 @@ Vagrant.configure("2") do |config|
config.vm.define :aai do |aai|
aai.vm.hostname = 'aai'
aai.vm.network :private_network, ip: '192.168.50.6'
+ aai.vm.provider "openstack" do |v|
+ v.server_name = 'aai'
+ end
aai.vm.provision 'shell' do |s|
s.path = 'postinstall.sh'
s.args = ['aai']
@@ -151,8 +224,11 @@ Vagrant.configure("2") do |config|
end
config.vm.define :mso do |mso|
- mso.vm.hostname = 'mso-server'
+ mso.vm.hostname = 'mso'
mso.vm.network :private_network, ip: '192.168.50.7'
+ mso.vm.provider "openstack" do |v|
+ v.server_name = 'mso'
+ end
mso.vm.provision 'shell' do |s|
s.path = 'postinstall.sh'
s.args = ['mso']
@@ -163,6 +239,9 @@ Vagrant.configure("2") do |config|
config.vm.define :robot do |robot|
robot.vm.hostname = 'robot'
robot.vm.network :private_network, ip: '192.168.50.8'
+ robot.vm.provider "openstack" do |v|
+ v.server_name = 'robot'
+ end
robot.vm.provision 'shell' do |s|
s.path = 'postinstall.sh'
s.args = ['robot']
@@ -173,6 +252,9 @@ Vagrant.configure("2") do |config|
config.vm.define :vid do |vid|
vid.vm.hostname = 'vid'
vid.vm.network :private_network, ip: '192.168.50.9'
+ vid.vm.provider "openstack" do |v|
+ v.server_name = 'vid'
+ end
vid.vm.provision 'shell' do |s|
s.path = 'postinstall.sh'
s.args = ['vid']
@@ -183,6 +265,9 @@ Vagrant.configure("2") do |config|
config.vm.define :sdnc do |sdnc|
sdnc.vm.hostname = 'sdnc'
sdnc.vm.network :private_network, ip: '192.168.50.10'
+ sdnc.vm.provider "openstack" do |v|
+ v.server_name = 'sdnc'
+ end
sdnc.vm.provision 'shell' do |s|
s.path = 'postinstall.sh'
s.args = ['sdnc']
@@ -193,6 +278,9 @@ Vagrant.configure("2") do |config|
config.vm.define :portal do |portal|
portal.vm.hostname = 'portal'
portal.vm.network :private_network, ip: '192.168.50.11'
+ portal.vm.provider "openstack" do |v|
+ v.server_name = 'portal'
+ end
portal.vm.provision 'shell' do |s|
s.path = 'postinstall.sh'
s.args = ['portal']
@@ -203,6 +291,9 @@ Vagrant.configure("2") do |config|
config.vm.define :dcae do |dcae|
dcae.vm.hostname = 'dcae'
dcae.vm.network :private_network, ip: '192.168.50.12'
+ dcae.vm.provider "openstack" do |v|
+ v.server_name = 'dcae'
+ end
dcae.vm.provision 'shell' do |s|
s.path = 'postinstall.sh'
s.args = ['dcae']
@@ -213,6 +304,9 @@ Vagrant.configure("2") do |config|
config.vm.define :policy do |policy|
policy.vm.hostname = 'policy'
policy.vm.network :private_network, ip: '192.168.50.13'
+ policy.vm.provider "openstack" do |v|
+ v.server_name = 'policy'
+ end
policy.vm.provision 'shell' do |s|
s.path = 'postinstall.sh'
s.args = ['policy']
@@ -223,6 +317,9 @@ Vagrant.configure("2") do |config|
config.vm.define :appc do |appc|
appc.vm.hostname = 'appc'
appc.vm.network :private_network, ip: '192.168.50.14'
+ appc.vm.provider "openstack" do |v|
+ v.server_name = 'appc'
+ end
appc.vm.provision 'shell' do |s|
s.path = 'postinstall.sh'
s.args = ['appc']
@@ -230,5 +327,45 @@ Vagrant.configure("2") do |config|
end
end
+ config.vm.define :vfc do |vfc|
+ vfc.vm.hostname = 'vfc'
+ vfc.vm.network :private_network, ip: '192.168.50.15'
+ vfc.vm.provider "openstack" do |v|
+ v.server_name = 'vfc'
+ end
+ vfc.vm.provision 'shell' do |s|
+ s.path = 'postinstall.sh'
+ s.args = ['vfc']
+ s.env = conf
+ end
+ end
+
+ when 'testing'
+
+ config.vm.define :testing do |testing|
+ test_suite = ENV.fetch('TEST_SUITE', '*')
+ test_case = ENV.fetch('TEST_CASE', '*')
+
+ testing.vm.hostname = 'testing'
+ testing.vm.network :private_network, ip: '192.168.50.3'
+ testing.vm.synced_folder './tests', '/var/onap_tests/', create: true
+ testing.vm.provider "virtualbox" do |v|
+ v.customize ["modifyvm", :id, "--memory", 2 * 1024]
+ end
+ testing.vm.provider "libvirt" do |v|
+ v.memory = 2 * 1024
+ v.nested = true
+ end
+ testing.vm.provider "openstack" do |v|
+ v.server_name = 'testing'
+ v.flavor = 'm1.small'
+ end
+ testing.vm.provision 'shell' do |s|
+ s.path = 'unit_testing.sh'
+ s.args = [test_suite, test_case]
+ s.env = conf
+ end
+ end
+
end
end