Vagrantfile and Makefile required for creating vagrant base image -
Also updating .gitignore file to not to incluse the created
vagrant base box in the commit
Change-Id: If7508f8c67e47b1cf282eb72cd6e32ba8442312f
diff --git a/vagrant-base/Makefile b/vagrant-base/Makefile
new file mode 100644
index 0000000..e632302
--- /dev/null
+++ b/vagrant-base/Makefile
@@ -0,0 +1,37 @@
+PROTO_FILES := $(wildcard *.proto) $(wildcard third_party/google/api/*proto)
+PROTO_PB2_FILES := $(foreach f,$(PROTO_FILES),$(subst .proto,_pb2.py,$(f)))
+PROTO_DESC_FILES := $(foreach f,$(PROTO_FILES),$(subst .proto,.desc,$(f)))
+
+PROTOC_PREFIX := /usr/local
+PROTOC_LIBDIR := $(PROTOC_PREFIX)/lib
+
+PROTOC := $(PROTOC_PREFIX)/bin/protoc
+
+PROTOC_VERSION := "3.0.2"
+PROTOC_DOWNLOAD_PREFIX := "https://github.com/google/protobuf/releases/download"
+PROTOC_DIR := protobuf-$(PROTOC_VERSION)
+PROTOC_TARBALL := protobuf-python-$(PROTOC_VERSION).tar.gz
+PROTOC_DOWNLOAD_URI := $(PROTOC_DOWNLOAD_PREFIX)/v$(PROTOC_VERSION)/$(PROTOC_TARBALL)
+PROTOC_BUILD_TMP_DIR := "/tmp/protobuf-build-$(shell uname -s | tr '[:upper:]' '[:lower:]')"
+
+$(PROTOC):
+ @echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
+ @echo "It looks like you don't have protocol buffer tools installed."
+ @echo "To install the protocol buffer toolchain, you can run:"
+ @echo " make install-protoc"
+ @echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
+
+install-protoc: $(PROTOC)
+ @echo "Downloading and installing protocol buffer support."
+ @echo "Installation will require sodo priviledges"
+ @echo "This will take a few minutes."
+ mkdir -p $(PROTOC_BUILD_TMP_DIR)
+ @echo "We ask for sudo credentials now so we can install at the end"; \
+ sudo echo "Thanks"; \
+ cd $(PROTOC_BUILD_TMP_DIR); \
+ wget $(PROTOC_DOWNLOAD_URI); \
+ tar xzvf $(PROTOC_TARBALL); \
+ cd $(PROTOC_DIR); \
+ ./configure --prefix=$(PROTOC_PREFIX); \
+ make; \
+ sudo make install
\ No newline at end of file
diff --git a/vagrant-base/Vagrantfile b/vagrant-base/Vagrantfile
new file mode 100644
index 0000000..ce086aa
--- /dev/null
+++ b/vagrant-base/Vagrantfile
@@ -0,0 +1,25 @@
+# -*- mode: ruby -*-
+# vi: set ft=ruby :
+
+Vagrant.configure(2) do |config|
+
+ if (/cygwin|mswin|mingw|bccwin|wince|emx/ =~ RUBY_PLATFORM) != nil
+ config.vm.synced_folder "../", "/voltha", mount_options: ["dmode=700,fmode=600"]
+ else
+ config.vm.synced_folder "../", "/voltha"
+ end
+
+ config.vm.define "voltha" do |d|
+ d.vm.box = "voltha-base"
+ d.vm.hostname = "voltha"
+ d.vm.network "private_network", ip: "10.100.198.220"
+ d.vm.provision :shell, inline: "cd /voltha && source env.sh && chmod 777 /tmp/fluentd"
+ end
+
+ config.ssh.shell = "bash -c 'BASH_ENV=/etc/profile exec bash'"
+
+ if Vagrant.has_plugin?("vagrant-cachier")
+ config.cache.scope = :box
+ end
+
+end
diff --git a/vagrant-base/Vagrantfile_base b/vagrant-base/Vagrantfile_base
new file mode 100644
index 0000000..d77ef9a
--- /dev/null
+++ b/vagrant-base/Vagrantfile_base
@@ -0,0 +1,34 @@
+# -*- mode: ruby -*-
+# vi: set ft=ruby :
+
+Vagrant.configure(2) do |config|
+
+ if (/cygwin|mswin|mingw|bccwin|wince|emx/ =~ RUBY_PLATFORM) != nil
+ config.vm.synced_folder "../", "/voltha", mount_options: ["dmode=700,fmode=600"]
+ else
+ config.vm.synced_folder "../", "/voltha"
+ end
+
+ config.vm.define "voltha" do |d|
+ d.ssh.forward_agent = true
+ d.vm.box = "ubuntu/trusty64"
+ d.vm.hostname = "voltha"
+ d.vm.network "private_network", ip: "10.100.198.220"
+ #d.vm.network "public_network"
+ d.vm.provision :shell, path: "../ansible/scripts/bootstrap_ansible.sh"
+ d.vm.provision :shell, inline: "PYTHONUNBUFFERED=1 ansible-playbook /voltha/ansible/voltha.yml -c local"
+ d.vm.provision :shell, inline: "cd /voltha/base-vagrant && make install-protoc"
+ #d.vm.provision :shell, path: "./test_script.sh"
+ d.vm.provider "virtualbox" do |v|
+ v.name = "voltha-base"
+ v.memory = 4096
+ end
+ end
+
+ config.ssh.shell = "bash -c 'BASH_ENV=/etc/profile exec bash'"
+
+ if Vagrant.has_plugin?("vagrant-cachier")
+ config.cache.scope = :box
+ end
+
+end
diff --git a/vagrant-base/test_script.sh b/vagrant-base/test_script.sh
new file mode 100644
index 0000000..0c4d07b
--- /dev/null
+++ b/vagrant-base/test_script.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+echo "Testing script..."
+sudo usermod -a -G sudo vagrant
\ No newline at end of file