Add packer scripts for vagrant image generation

Change-Id: If163c456b756f6c7c8a7a197dabc8eb3b1fc7907
Signed-off-by: Mike Marchetti <mmarchetti@sandvine.com>
diff --git a/packer/scripts/cleanup.sh b/packer/scripts/cleanup.sh
new file mode 100644
index 0000000..cc09a97
--- /dev/null
+++ b/packer/scripts/cleanup.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+apt autoremove
+apt update
+
+rm -f /home/vagrant/*.sh
+
+wget --no-check-certificate https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub -O /home/vagrant/.ssh/authorized_keys
+chmod 0600 /home/vagrant/.ssh/authorized_keys
+chown -R vagrant:vagrant /home/vagrant/.ssh
+
+dd if=/dev/zero of=/EMPTY bs=1M
+rm -f /EMPTY
+sync
diff --git a/packer/scripts/get-install-osm.sh b/packer/scripts/get-install-osm.sh
new file mode 100755
index 0000000..534799b
--- /dev/null
+++ b/packer/scripts/get-install-osm.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+export PATH=$PATH:/snap/bin
+echo "PATH=$PATH"
+juju status
+
+wget "$1"
+chmod +x install_osm.sh
+./install_osm.sh --nolxd -y --vimemu
diff --git a/packer/scripts/install_packages.sh b/packer/scripts/install_packages.sh
new file mode 100644
index 0000000..e24c826
--- /dev/null
+++ b/packer/scripts/install_packages.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+sudo apt -y update && apt-get -y upgrade
+sudo apt -y install git wget curl vim snapd docker.io zfs lxd software-properties-common
diff --git a/packer/scripts/juju-setup.sh b/packer/scripts/juju-setup.sh
new file mode 100755
index 0000000..55752e5
--- /dev/null
+++ b/packer/scripts/juju-setup.sh
@@ -0,0 +1,2 @@
+#!/bin/sh
+sudo snap install juju --classic
diff --git a/packer/scripts/lxd-bridge b/packer/scripts/lxd-bridge
new file mode 100644
index 0000000..ff42150
--- /dev/null
+++ b/packer/scripts/lxd-bridge
@@ -0,0 +1,54 @@
+# WARNING: This file is generated by a debconf template!
+# It is recommended to update it by using "dpkg-reconfigure -p medium lxd"
+
+# Whether to setup a new bridge or use an existing one
+USE_LXD_BRIDGE="true"
+
+# Bridge name
+# This is still used even if USE_LXD_BRIDGE is set to false
+# set to an empty value to fully disable
+LXD_BRIDGE="lxdbr0"
+
+# Update the "default" LXD profile
+UPDATE_PROFILE="true"
+
+# Path to an extra dnsmasq configuration file
+LXD_CONFILE=""
+
+# DNS domain for the bridge
+LXD_DOMAIN="lxd"
+
+# IPv4
+## IPv4 address (e.g. 10.0.8.1)
+LXD_IPV4_ADDR="10.49.16.1"
+
+## IPv4 netmask (e.g. 255.255.255.0)
+LXD_IPV4_NETMASK="255.255.255.0"
+
+## IPv4 network (e.g. 10.0.8.0/24)
+LXD_IPV4_NETWORK="10.49.16.1/24"
+
+## IPv4 DHCP range (e.g. 10.0.8.2,10.0.8.254)
+LXD_IPV4_DHCP_RANGE="10.49.16.2,10.49.16.254"
+
+## IPv4 DHCP number of hosts (e.g. 250)
+LXD_IPV4_DHCP_MAX="252"
+
+## NAT IPv4 traffic
+LXD_IPV4_NAT="true"
+
+# IPv6
+## IPv6 address (e.g. 2001:470:b368:4242::1)
+LXD_IPV6_ADDR=""
+
+## IPv6 CIDR mask (e.g. 64)
+LXD_IPV6_MASK=""
+
+## IPv6 network (e.g. 2001:470:b368:4242::/64)
+LXD_IPV6_NETWORK=""
+
+## NAT IPv6 traffic
+LXD_IPV6_NAT="false"
+
+# Run a minimal HTTP PROXY server
+LXD_IPV6_PROXY="false"
diff --git a/packer/scripts/lxd-setup.sh b/packer/scripts/lxd-setup.sh
new file mode 100644
index 0000000..a92dd17
--- /dev/null
+++ b/packer/scripts/lxd-setup.sh
@@ -0,0 +1,10 @@
+sudo lxd init --auto --storage-backend zfs --storage-pool lxdpool --storage-create-loop 20
+
+sudo systemctl stop lxd-bridge
+sudo systemctl --system daemon-reload
+
+sudo cp -f /tmp/lxd-bridge /etc/default/lxd-bridge
+sudo systemctl enable lxd-bridge
+sudo systemctl start lxd-bridge
+
+sudo usermod -a -G lxd $(whoami) 
diff --git a/packer/scripts/setup.sh b/packer/scripts/setup.sh
new file mode 100644
index 0000000..de27aa7
--- /dev/null
+++ b/packer/scripts/setup.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+echo "vagrant        ALL=(ALL)       NOPASSWD: ALL" >> /etc/sudoers
+sed -i "s/^.*requiretty/#Defaults requiretty/" /etc/sudoers
+echo 'APT::Periodic::Enable "0";' >> /etc/apt/apt.conf.d/10periodic