Convert Vagrant to Packer 00/42100/1
authorAndrew Grimberg <agrimberg@linuxfoundation.org>
Tue, 19 Jul 2016 21:58:14 +0000 (14:58 -0700)
committerAndrew Grimberg <agrimberg@linuxfoundation.org>
Tue, 19 Jul 2016 21:58:14 +0000 (14:58 -0700)
Changes in the Rackspace Public cloud that came about because of the
private cloud creation and connection have made using Vagrant inside the
public cloud impossible now. This converts all of the in use Vagrant
definitions to Packer and allows us to build images at the same time in
both clouds so that they are identical as we can possibly make them.

Change-Id: I410ad83eaabddfe50447dbeefe7eb2d79660a06c
Signed-off-by: Andrew Grimberg <agrimberg@linuxfoundation.org>
57 files changed:
packer/README.markdown [new file with mode: 0644]
packer/provision/baseline.sh [moved from vagrant/lib/baseline.sh with 97% similarity]
packer/provision/devstack.sh [moved from vagrant/ovsdb-devstack/bootstrap.sh with 100% similarity]
packer/provision/docker.sh [moved from vagrant/docker/bootstrap.sh with 100% similarity]
packer/provision/gbp.sh [moved from vagrant/gbp-ubuntu-docker-ovs-node/bootstrap.sh with 93% similarity]
packer/provision/gbp_puppet/docker_setup.pp [moved from vagrant/gbp-ubuntu-docker-ovs-node/docker_setup.pp with 100% similarity]
packer/provision/gbp_puppet/gbp_packages.pp [moved from vagrant/gbp-ubuntu-docker-ovs-node/gbp_packages.pp with 100% similarity]
packer/provision/gbp_puppet/ovs_setup.pp [moved from vagrant/gbp-ubuntu-docker-ovs-node/ovs_setup.pp with 100% similarity]
packer/provision/java-builder.sh [moved from vagrant/basic-builder/bootstrap.sh with 100% similarity]
packer/provision/mininet-ovs-2.3.sh [moved from vagrant/ubuntu-mininet-ovs-2.3/bootstrap.sh with 100% similarity]
packer/provision/mininet.sh [moved from vagrant/ubuntu-mininet/bootstrap.sh with 100% similarity]
packer/provision/null_data.sh [new file with mode: 0644]
packer/provision/rh-user_data.sh [new file with mode: 0644]
packer/provision/robot.sh [moved from vagrant/integration-robotframework/bootstrap.sh with 100% similarity]
packer/provision/system_reseal.sh [new file with mode: 0644]
packer/templates/baseline.json [new file with mode: 0644]
packer/templates/devstack.json [new file with mode: 0644]
packer/templates/docker.json [new file with mode: 0644]
packer/templates/gbp.json [new file with mode: 0644]
packer/templates/java-builder.json [new file with mode: 0644]
packer/templates/mininet-ovs-2.3.json [new file with mode: 0644]
packer/templates/mininet.json [new file with mode: 0644]
packer/templates/robot.json [new file with mode: 0644]
packer/vars/.gitignore [new file with mode: 0644]
packer/vars/centos.json [new file with mode: 0644]
packer/vars/cloud-env.json.example [new file with mode: 0644]
packer/vars/ubuntu-14.04.json [new file with mode: 0644]
packer/vars/ubuntu-16.04.json [new file with mode: 0644]
vagrant/README.md [deleted file]
vagrant/baseline/README.md [deleted file]
vagrant/baseline/Vagrantfile [deleted file]
vagrant/basic-builder/README.md [deleted file]
vagrant/basic-builder/Vagrantfile [deleted file]
vagrant/basic-java-node/README.md [deleted file]
vagrant/basic-java-node/Vagrantfile [deleted file]
vagrant/basic-java-node/bootstrap.sh [deleted file]
vagrant/basic-mininet-fedora-node/README.md [deleted file]
vagrant/basic-mininet-fedora-node/Vagrantfile [deleted file]
vagrant/basic-mininet-fedora-node/bootstrap.sh [deleted file]
vagrant/basic-mininet-fedora-node/system_reseal.sh [deleted file]
vagrant/basic-mininet-node/README.md [deleted file]
vagrant/basic-mininet-node/Vagrantfile [deleted file]
vagrant/basic-mininet-node/bootstrap.sh [deleted file]
vagrant/docker/README.md [deleted file]
vagrant/docker/Vagrantfile [deleted file]
vagrant/gbp-ubuntu-docker-ovs-node/Vagrantfile [deleted file]
vagrant/integration-robotframework/README.md [deleted file]
vagrant/integration-robotframework/Vagrantfile [deleted file]
vagrant/lib/lf-networking/README.md [deleted file]
vagrant/lib/lf-networking/Vagrantfile [deleted file]
vagrant/lib/lf-networking/confignetwork.pp [deleted file]
vagrant/lib/lf-networking/configure_lf_infra.sh [deleted file]
vagrant/lib/system_reseal.sh [deleted file]
vagrant/ovsdb-devstack/README.md [deleted file]
vagrant/ovsdb-devstack/Vagrantfile [deleted file]
vagrant/ubuntu-mininet-ovs-2.3/Vagrantfile [deleted file]
vagrant/ubuntu-mininet/Vagrantfile [deleted file]

diff --git a/packer/README.markdown b/packer/README.markdown
new file mode 100644 (file)
index 0000000..fef4cea
--- /dev/null
@@ -0,0 +1,38 @@
+# OpenDaylight CI Packer
+
+[Packer][1] is a tool for automatically creating VM and container images,
+configuring them and post-processing them into standard output formats.
+
+We build OpenDaylight's CI images via Packer.
+
+## Building
+
+You'll need to [install Packer][2], of course.
+
+OpenDaylight's Packer configuration is divided into build-specific variables,
+output-specific templates and a set of shared provisioning scripts. To do a
+specific build, combine the template for the desired output artifact type with
+a variable file. To build a new java-builder instance the following would be done:
+
+```
+packer build -var-file=vars/cloud-env.json -var-file/centos.json templates/java-builder.json
+```
+
+**NOTE:** vars/cloud-env.json is a gitignored file as it contains private
+information. There is a vars/cloud-env.json.example file that may be used as a
+base for creating the one needed.
+
+This would build bootable image in two different OpenStack clouds. In specific,
+Rackspace's Public cloud and a private OpenStack cloud.
+
+From a high level, the builds:
+
+* Boot a specified base image in both clouds.
+* Run a set of shell scripts, listed in the template's shell provisioner
+  section, to do any configuration required by the builder.
+* Execute a shutdown of the running instance in the clouds.
+* Execute a 'nova image-create' operation against the shutdown instance.
+* Perform a 'nova delete' operation against the shutdown instance.
+
+[1]: https://www.packer.io/
+[2]: https://www.packer.io/intro/getting-started/setup.html
similarity index 97%
rename from vagrant/lib/baseline.sh
rename to packer/provision/baseline.sh
index 2cf8c8b3b11b6adefe56812bd0cc877696276975..ee87f00559b102bf8fd2b02e863a15e676538321 100644 (file)
@@ -46,6 +46,7 @@ EOF
 
     echo "---> Updating operating system"
     yum clean all -q
+    yum install -y -q deltarpm
     yum update -y -q
 
     # add in components we need or want on systems
@@ -165,10 +166,16 @@ all_systems() {
 
 echo "---> Attempting to detect OS"
 # upstream cloud images use the distro name as the initial user
-ORIGIN=$(logname)
+ORIGIN=$(if [ -e /etc/redhat-release ]
+    then
+        echo redhat
+    else
+        echo ubuntu
+    fi)
+#ORIGIN=$(logname)
 
 case "${ORIGIN}" in
-    fedora|centos)
+    fedora|centos|redhat)
         echo "---> RH type system detected"
         rh_systems
     ;;
similarity index 93%
rename from vagrant/gbp-ubuntu-docker-ovs-node/bootstrap.sh
rename to packer/provision/gbp.sh
index 2b880b73ef9f193237bf4495e538ea54ee171b71..dc461c94ccdb12f73c46f3978897dd5d584ec986 100644 (file)
@@ -13,7 +13,7 @@ puppet module install garethr-docker --version 4.1.1
 # do the package install via puppet so that we know it actually installs
 # properly and it also makes it quieter but with better error reporting
 echo "---> Installing Group Based Policy requirements"
-puppet apply /vagrant/gbp_packages.pp
+puppet apply /tmp/packer/gbp_packages.pp
 
 # configure docker networking so that it does not conflict with LF internal networks
 # configure docker daemon to listen on port 5555 enabling remote managment
@@ -26,7 +26,7 @@ EOL
 
 # docker
 echo "---> Installing docker"
-puppet apply /vagrant/docker_setup.pp
+puppet apply /tmp/packer/docker_setup.pp
 
 echo "---> stopping docker"
 puppet apply -e "service { 'docker': ensure => stopped }"
@@ -37,7 +37,7 @@ rm -f /var/lib/docker/repositories-aufs /etc/docker/key.json
 # OVS
 echo "---> Installing ovs"
 puppet module install puppetlabs-vcsrepo
-puppet apply /vagrant/ovs_setup.pp
+puppet apply /tmp/packer/ovs_setup.pp
 
 pushd /root/ovs
 DEB_BUILD_OPTIONS='parallel=8 nocheck' fakeroot debian/rules binary | \
diff --git a/packer/provision/null_data.sh b/packer/provision/null_data.sh
new file mode 100644 (file)
index 0000000..3fa6a3c
--- /dev/null
@@ -0,0 +1,4 @@
+#!/bin/bash
+# vi: ts=4 sw=4 sts=4 et :
+
+# Nothing to do for Ubuntu specific provisioning
diff --git a/packer/provision/rh-user_data.sh b/packer/provision/rh-user_data.sh
new file mode 100644 (file)
index 0000000..6bddb24
--- /dev/null
@@ -0,0 +1,4 @@
+#!/bin/bash
+# vi: ts=4 sw=4 sts=4 et :
+
+/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;
diff --git a/packer/provision/system_reseal.sh b/packer/provision/system_reseal.sh
new file mode 100644 (file)
index 0000000..f8bc7dc
--- /dev/null
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+# vim: sw=2 ts=2 sts=2 et :
+
+rm -rf /etc/Pegasus/*.cnf /etc/Pegasus/*.crt /etc/Pegasus/*.csr \
+  /etc/Pegasus/*.pem /etc/Pegasus/*.srl /root/anaconda-ks.cfg \
+  /root/anaconda-post.log /root/initial-setup-ks.cfg /root/install.log \
+  /root/install.log.syslog /var/cache/fontconfig/* /var/cache/gdm/* \
+  /var/cache/man/* /var/lib/AccountService/users/* /var/lib/fprint/* \
+  /var/lib/logrotate.status /var/log/*.log* /var/log/BackupPC/LOG \
+  /var/log/ConsoleKit/* /var/log/anaconda.syslog /var/log/anaconda/* \
+  /var/log/apache2/*_log /var/log/apache2/*_log-* /var/log/apt/* \
+  /var/log/aptitude* /var/log/audit/* /var/log/btmp* /var/log/ceph/*.log \
+  /var/log/chrony/*.log /var/log/cron* /var/log/cups/*_log /var/log/debug* \
+  /var/log/dmesg* /var/log/exim4/* /var/log/faillog* /var/log/gdm/* \
+  /var/log/glusterfs/*glusterd.vol.log /var/log/glusterfs/glusterfs.log \
+  /var/log/httpd/*log /var/log/installer/* /var/log/jetty/jetty-console.log \
+  /var/log/journal/* /var/log/lastlog* /var/log/libvirt/libvirtd.log \
+  /var/log/libvirt/lxc/*.log /var/log/libvirt/qemu/*.log \
+  /var/log/libvirt/uml/*.log /var/log/lightdm/* /var/log/mail/* \
+  /var/log/maillog* /var/log/messages* /var/log/ntp /var/log/ntpstats/* \
+  /var/log/ppp/connect-errors /var/log/rhsm/* /var/log/sa/* /var/log/secure* \
+  /var/log/setroubleshoot/*.log /var/log/spooler* /var/log/squid/*.log \
+  /var/log/syslog* /var/log/tallylog* /var/log/tuned/tuned.log /var/log/wtmp* \
+  /var/named/data/named.run
+
+rm -rf ~/.viminfo /etc/ssh/ssh*key* /root/.ssh/*
+
+# kill any cloud-init related bits
+rm -rf /var/lib/cloud/*
+
+# clean-up any manual packer uploads
+rm -rf /tmp/packer
+
+# Force a system sync and sleep to get around any SSD issues
+echo "Forcing sync and sleep for 10sec"
+sync
+sleep 10
diff --git a/packer/templates/baseline.json b/packer/templates/baseline.json
new file mode 100644 (file)
index 0000000..d0d304f
--- /dev/null
@@ -0,0 +1,67 @@
+{
+  "variables": {
+    "public_base_image": null,
+    "public_network": null,
+    "public_cloud_user": null,
+    "public_auth_url": null,
+    "public_tenant": null,
+    "public_user": null,
+    "public_pass": null,
+
+    "private_base_image": null,
+    "private_network": null,
+    "private_cloud_user": null,
+    "private_auth_url": null,
+    "private_tenant": null,
+    "private_user": null,
+    "private_pass": null,
+
+    "distro": null,
+    "cloud_user_data": null
+  },
+  "builders": [
+    {
+      "type": "openstack",
+      "name": "public_cloud",
+      "identity_endpoint": "{{user `public_auth_url`}}",
+      "tenant_name": "{{user `public_tenant`}}",
+      "username": "{{user `public_user`}}",
+      "password": "{{user `public_pass`}}",
+      "region": "DFW",
+      "ssh_username": "{{user `public_cloud_user`}}",
+      "image_name": "{{user `distro`}} - baseline - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `public_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `public_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    },
+    {
+      "type": "openstack",
+      "name": "private_cloud",
+      "identity_endpoint": "{{user `private_auth_url`}}",
+      "tenant_name": "{{user `private_tenant`}}",
+      "username": "{{user `private_user`}}",
+      "password": "{{user `private_pass`}}",
+      "ssh_username": "{{user `private_cloud_user`}}",
+      "image_name": "{{user `distro`}} - baseline - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `private_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `private_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    }
+  ],
+  "provisioners": [
+    {
+      "type": "shell",
+      "scripts": [
+        "provision/baseline.sh",
+        "provision/system_reseal.sh"
+      ],
+      "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
+    }
+  ]
+}
diff --git a/packer/templates/devstack.json b/packer/templates/devstack.json
new file mode 100644 (file)
index 0000000..18fdfd0
--- /dev/null
@@ -0,0 +1,68 @@
+{
+  "variables": {
+    "public_base_image": null,
+    "public_network": null,
+    "public_cloud_user": null,
+    "public_auth_url": null,
+    "public_tenant": null,
+    "public_user": null,
+    "public_pass": null,
+
+    "private_base_image": null,
+    "private_network": null,
+    "private_cloud_user": null,
+    "private_auth_url": null,
+    "private_tenant": null,
+    "private_user": null,
+    "private_pass": null,
+
+    "distro": null,
+    "cloud_user_data": null
+  },
+  "builders": [
+    {
+      "type": "openstack",
+      "name": "public_cloud",
+      "identity_endpoint": "{{user `public_auth_url`}}",
+      "tenant_name": "{{user `public_tenant`}}",
+      "username": "{{user `public_user`}}",
+      "password": "{{user `public_pass`}}",
+      "region": "DFW",
+      "ssh_username": "{{user `public_cloud_user`}}",
+      "image_name": "{{user `distro`}} - devstack - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `public_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `public_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    },
+    {
+      "type": "openstack",
+      "name": "private_cloud",
+      "identity_endpoint": "{{user `private_auth_url`}}",
+      "tenant_name": "{{user `private_tenant`}}",
+      "username": "{{user `private_user`}}",
+      "password": "{{user `private_pass`}}",
+      "ssh_username": "{{user `private_cloud_user`}}",
+      "image_name": "{{user `distro`}} - devstack - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `private_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `private_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    }
+  ],
+  "provisioners": [
+    {
+      "type": "shell",
+      "scripts": [
+        "provision/baseline.sh",
+        "provision/devstack.sh",
+        "provision/system_reseal.sh"
+      ],
+      "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
+    }
+  ]
+}
diff --git a/packer/templates/docker.json b/packer/templates/docker.json
new file mode 100644 (file)
index 0000000..c7ff215
--- /dev/null
@@ -0,0 +1,68 @@
+{
+  "variables": {
+    "public_base_image": null,
+    "public_network": null,
+    "public_cloud_user": null,
+    "public_auth_url": null,
+    "public_tenant": null,
+    "public_user": null,
+    "public_pass": null,
+
+    "private_base_image": null,
+    "private_network": null,
+    "private_cloud_user": null,
+    "private_auth_url": null,
+    "private_tenant": null,
+    "private_user": null,
+    "private_pass": null,
+
+    "distro": null,
+    "cloud_user_data": null
+  },
+  "builders": [
+    {
+      "type": "openstack",
+      "name": "public_cloud",
+      "identity_endpoint": "{{user `public_auth_url`}}",
+      "tenant_name": "{{user `public_tenant`}}",
+      "username": "{{user `public_user`}}",
+      "password": "{{user `public_pass`}}",
+      "region": "DFW",
+      "ssh_username": "{{user `public_cloud_user`}}",
+      "image_name": "{{user `distro`}} - docker - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `public_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `public_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    },
+    {
+      "type": "openstack",
+      "name": "private_cloud",
+      "identity_endpoint": "{{user `private_auth_url`}}",
+      "tenant_name": "{{user `private_tenant`}}",
+      "username": "{{user `private_user`}}",
+      "password": "{{user `private_pass`}}",
+      "ssh_username": "{{user `private_cloud_user`}}",
+      "image_name": "{{user `distro`}} - docker - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `private_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `private_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    }
+  ],
+  "provisioners": [
+    {
+      "type": "shell",
+      "scripts": [
+        "provision/baseline.sh",
+        "provision/docker.sh",
+        "provision/system_reseal.sh"
+      ],
+      "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
+    }
+  ]
+}
diff --git a/packer/templates/gbp.json b/packer/templates/gbp.json
new file mode 100644 (file)
index 0000000..52d420a
--- /dev/null
@@ -0,0 +1,77 @@
+{
+  "variables": {
+    "public_base_image": null,
+    "public_network": null,
+    "public_cloud_user": null,
+    "public_auth_url": null,
+    "public_tenant": null,
+    "public_user": null,
+    "public_pass": null,
+
+    "private_base_image": null,
+    "private_network": null,
+    "private_cloud_user": null,
+    "private_auth_url": null,
+    "private_tenant": null,
+    "private_user": null,
+    "private_pass": null,
+
+    "distro": null,
+    "cloud_user_data": null
+  },
+  "builders": [
+    {
+      "type": "openstack",
+      "name": "public_cloud",
+      "identity_endpoint": "{{user `public_auth_url`}}",
+      "tenant_name": "{{user `public_tenant`}}",
+      "username": "{{user `public_user`}}",
+      "password": "{{user `public_pass`}}",
+      "region": "DFW",
+      "ssh_username": "{{user `public_cloud_user`}}",
+      "image_name": "{{user `distro`}} - gbp - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `public_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `public_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    },
+    {
+      "type": "openstack",
+      "name": "private_cloud",
+      "identity_endpoint": "{{user `private_auth_url`}}",
+      "tenant_name": "{{user `private_tenant`}}",
+      "username": "{{user `private_user`}}",
+      "password": "{{user `private_pass`}}",
+      "ssh_username": "{{user `private_cloud_user`}}",
+      "image_name": "{{user `distro`}} - gbp - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `private_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `private_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    }
+  ],
+  "provisioners": [
+    {
+      "type": "shell",
+      "inline": ["mkdir -p /tmp/packer"]
+    },
+    {
+      "type": "file",
+      "source": "provision/gbp_puppet/",
+      "destination": "/tmp/packer"
+    },
+    {
+      "type": "shell",
+      "scripts": [
+        "provision/baseline.sh",
+        "provision/gbp.sh",
+        "provision/system_reseal.sh"
+      ],
+      "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
+    }
+  ]
+}
diff --git a/packer/templates/java-builder.json b/packer/templates/java-builder.json
new file mode 100644 (file)
index 0000000..f742592
--- /dev/null
@@ -0,0 +1,68 @@
+{
+  "variables": {
+    "public_base_image": null,
+    "public_network": null,
+    "public_cloud_user": null,
+    "public_auth_url": null,
+    "public_tenant": null,
+    "public_user": null,
+    "public_pass": null,
+
+    "private_base_image": null,
+    "private_network": null,
+    "private_cloud_user": null,
+    "private_auth_url": null,
+    "private_tenant": null,
+    "private_user": null,
+    "private_pass": null,
+
+    "distro": null,
+    "cloud_user_data": null
+  },
+  "builders": [
+    {
+      "type": "openstack",
+      "name": "public_cloud",
+      "identity_endpoint": "{{user `public_auth_url`}}",
+      "tenant_name": "{{user `public_tenant`}}",
+      "username": "{{user `public_user`}}",
+      "password": "{{user `public_pass`}}",
+      "region": "DFW",
+      "ssh_username": "{{user `public_cloud_user`}}",
+      "image_name": "{{user `distro`}} - java-builder - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `public_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `public_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    },
+    {
+      "type": "openstack",
+      "name": "private_cloud",
+      "identity_endpoint": "{{user `private_auth_url`}}",
+      "tenant_name": "{{user `private_tenant`}}",
+      "username": "{{user `private_user`}}",
+      "password": "{{user `private_pass`}}",
+      "ssh_username": "{{user `private_cloud_user`}}",
+      "image_name": "{{user `distro`}} - java-builder - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `private_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `private_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    }
+  ],
+  "provisioners": [
+    {
+      "type": "shell",
+      "scripts": [
+        "provision/baseline.sh",
+        "provision/java-builder.sh",
+        "provision/system_reseal.sh"
+      ],
+      "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
+    }
+  ]
+}
diff --git a/packer/templates/mininet-ovs-2.3.json b/packer/templates/mininet-ovs-2.3.json
new file mode 100644 (file)
index 0000000..938c1f0
--- /dev/null
@@ -0,0 +1,68 @@
+{
+  "variables": {
+    "public_base_image": null,
+    "public_network": null,
+    "public_cloud_user": null,
+    "public_auth_url": null,
+    "public_tenant": null,
+    "public_user": null,
+    "public_pass": null,
+
+    "private_base_image": null,
+    "private_network": null,
+    "private_cloud_user": null,
+    "private_auth_url": null,
+    "private_tenant": null,
+    "private_user": null,
+    "private_pass": null,
+
+    "distro": null,
+    "cloud_user_data": null
+  },
+  "builders": [
+    {
+      "type": "openstack",
+      "name": "public_cloud",
+      "identity_endpoint": "{{user `public_auth_url`}}",
+      "tenant_name": "{{user `public_tenant`}}",
+      "username": "{{user `public_user`}}",
+      "password": "{{user `public_pass`}}",
+      "region": "DFW",
+      "ssh_username": "{{user `public_cloud_user`}}",
+      "image_name": "{{user `distro`}} - mininet-ovs-2.3 - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `public_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `public_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    },
+    {
+      "type": "openstack",
+      "name": "private_cloud",
+      "identity_endpoint": "{{user `private_auth_url`}}",
+      "tenant_name": "{{user `private_tenant`}}",
+      "username": "{{user `private_user`}}",
+      "password": "{{user `private_pass`}}",
+      "ssh_username": "{{user `private_cloud_user`}}",
+      "image_name": "{{user `distro`}} - mininet-ovs-2.3 - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `private_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `private_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    }
+  ],
+  "provisioners": [
+    {
+      "type": "shell",
+      "scripts": [
+        "provision/baseline.sh",
+        "provision/mininet-ovs-2.3.sh",
+        "provision/system_reseal.sh"
+      ],
+      "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
+    }
+  ]
+}
diff --git a/packer/templates/mininet.json b/packer/templates/mininet.json
new file mode 100644 (file)
index 0000000..180975b
--- /dev/null
@@ -0,0 +1,68 @@
+{
+  "variables": {
+    "public_base_image": null,
+    "public_network": null,
+    "public_cloud_user": null,
+    "public_auth_url": null,
+    "public_tenant": null,
+    "public_user": null,
+    "public_pass": null,
+
+    "private_base_image": null,
+    "private_network": null,
+    "private_cloud_user": null,
+    "private_auth_url": null,
+    "private_tenant": null,
+    "private_user": null,
+    "private_pass": null,
+
+    "distro": null,
+    "cloud_user_data": null
+  },
+  "builders": [
+    {
+      "type": "openstack",
+      "name": "public_cloud",
+      "identity_endpoint": "{{user `public_auth_url`}}",
+      "tenant_name": "{{user `public_tenant`}}",
+      "username": "{{user `public_user`}}",
+      "password": "{{user `public_pass`}}",
+      "region": "DFW",
+      "ssh_username": "{{user `public_cloud_user`}}",
+      "image_name": "{{user `distro`}} - mininet - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `public_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `public_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    },
+    {
+      "type": "openstack",
+      "name": "private_cloud",
+      "identity_endpoint": "{{user `private_auth_url`}}",
+      "tenant_name": "{{user `private_tenant`}}",
+      "username": "{{user `private_user`}}",
+      "password": "{{user `private_pass`}}",
+      "ssh_username": "{{user `private_cloud_user`}}",
+      "image_name": "{{user `distro`}} - mininet - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `private_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `private_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    }
+  ],
+  "provisioners": [
+    {
+      "type": "shell",
+      "scripts": [
+        "provision/baseline.sh",
+        "provision/mininet.sh",
+        "provision/system_reseal.sh"
+      ],
+      "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
+    }
+  ]
+}
diff --git a/packer/templates/robot.json b/packer/templates/robot.json
new file mode 100644 (file)
index 0000000..a20eefb
--- /dev/null
@@ -0,0 +1,68 @@
+{
+  "variables": {
+    "public_base_image": null,
+    "public_network": null,
+    "public_cloud_user": null,
+    "public_auth_url": null,
+    "public_tenant": null,
+    "public_user": null,
+    "public_pass": null,
+
+    "private_base_image": null,
+    "private_network": null,
+    "private_cloud_user": null,
+    "private_auth_url": null,
+    "private_tenant": null,
+    "private_user": null,
+    "private_pass": null,
+
+    "distro": null,
+    "cloud_user_data": null
+  },
+  "builders": [
+    {
+      "type": "openstack",
+      "name": "public_cloud",
+      "identity_endpoint": "{{user `public_auth_url`}}",
+      "tenant_name": "{{user `public_tenant`}}",
+      "username": "{{user `public_user`}}",
+      "password": "{{user `public_pass`}}",
+      "region": "DFW",
+      "ssh_username": "{{user `public_cloud_user`}}",
+      "image_name": "{{user `distro`}} - robot - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `public_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `public_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    },
+    {
+      "type": "openstack",
+      "name": "private_cloud",
+      "identity_endpoint": "{{user `private_auth_url`}}",
+      "tenant_name": "{{user `private_tenant`}}",
+      "username": "{{user `private_user`}}",
+      "password": "{{user `private_pass`}}",
+      "ssh_username": "{{user `private_cloud_user`}}",
+      "image_name": "{{user `distro`}} - robot - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `private_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `private_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    }
+  ],
+  "provisioners": [
+    {
+      "type": "shell",
+      "scripts": [
+        "provision/baseline.sh",
+        "provision/robot.sh",
+        "provision/system_reseal.sh"
+      ],
+      "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
+    }
+  ]
+}
diff --git a/packer/vars/.gitignore b/packer/vars/.gitignore
new file mode 100644 (file)
index 0000000..af92028
--- /dev/null
@@ -0,0 +1,2 @@
+# exclude private cloud-env settings
+cloud-env.json
diff --git a/packer/vars/centos.json b/packer/vars/centos.json
new file mode 100644 (file)
index 0000000..06754ed
--- /dev/null
@@ -0,0 +1,12 @@
+{
+  "public_base_image": "CentOS 7 (PVHVM)",
+  "public_network": "cac67a72-aefc-48f8-ae55-9affa3540dd0",
+  "public_cloud_user": "root",
+
+  "private_base_image": "CentOS 7 (cloudimg 1510)",
+  "private_network": "6bd0cc77-9896-4fba-a663-88c1a4bbd9a2",
+  "private_cloud_user": "centos",
+
+  "distro": "CentOS 7",
+  "cloud_user_data": "provision/rh-user_data.sh"
+}
diff --git a/packer/vars/cloud-env.json.example b/packer/vars/cloud-env.json.example
new file mode 100644 (file)
index 0000000..6c10f8c
--- /dev/null
@@ -0,0 +1,14 @@
+{
+  "public_auth_url": "https://identity.api.rackspacecloud.com/v2.0/",
+
+  "public_tenant": "TENNANTID",
+  "public_user": "USERID",
+  "public_pass": "USERPASS",
+
+
+  "private_auth_url": "https://privapi.opendaylight.org:5000/v2.0",
+
+  "private_tenant": "TENNANTID",
+  "private_user": "USERID",
+  "private_pass": "USERPASS"
+}
diff --git a/packer/vars/ubuntu-14.04.json b/packer/vars/ubuntu-14.04.json
new file mode 100644 (file)
index 0000000..7902b6b
--- /dev/null
@@ -0,0 +1,12 @@
+{
+  "public_base_image": "Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)",
+  "public_network": "cac67a72-aefc-48f8-ae55-9affa3540dd0",
+  "public_cloud_user": "root",
+
+  "private_base_image": "Ubuntu 14.04 LTS Trusty Tahr (cloudimg)",
+  "private_network": "6bd0cc77-9896-4fba-a663-88c1a4bbd9a2",
+  "private_cloud_user": "ubuntu",
+
+  "distro": "Ubuntu 14.04",
+  "cloud_user_data": "provision/null_data.sh"
+}
diff --git a/packer/vars/ubuntu-16.04.json b/packer/vars/ubuntu-16.04.json
new file mode 100644 (file)
index 0000000..d01b773
--- /dev/null
@@ -0,0 +1,12 @@
+{
+  "public_base_image": "Ubuntu 16.04 LTS (Xenial Xerus) (PVHVM)",
+  "public_network": "cac67a72-aefc-48f8-ae55-9affa3540dd0",
+  "public_cloud_user": "root",
+
+  "private_base_image": "Ubuntu 16.04 LTS (2016-05-03 cloudimg)",
+  "private_network": "6bd0cc77-9896-4fba-a663-88c1a4bbd9a2",
+  "private_cloud_user": "ubuntu",
+
+  "distro": "Ubuntu 16.04",
+  "cloud_user_data": "provision/null_data.sh"
+}
diff --git a/vagrant/README.md b/vagrant/README.md
deleted file mode 100644 (file)
index 37f17b3..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-The purpose of these various directories is to have Vagrant definitions
-that are then snapshotted for use as slaves in the OpenDaylight and
-ODLForge environments.
-
-If building up in a Rackspace environment using this for the first time
-there is a particular order that should be taken to produce a finalized
-image.
-
-1. Bring a vagrant image up using the rackspace-convert-base definition.
-   This will prepare a basic Rackspace image to operate properly when
-   being managed by vagrant. It is purposely very limited in what it
-   does.
-
-2. After the rackspace-convert-base image is up and you receive the
-   notice to snapshot the image perform a ```nova create-image```
-   against the running instance. Once the snapshot is complete you may
-   destroy the currently running vagrant image (it's easiest if the
-   create-image is done with --poll so you know when it's complete)
-
-3. Bring up one of the various other vagrant images passing
-   ```RSIMAGE=${a_vagrant_image_id}``` where ```$a_vagrant_image_id```
-   is the imageID that was generated after the snapshotting operation in
-   step 2. You probably also want to execute using ```RSRESEAL=true` to
-   have the brought up image resealed for cloning purposes.
-
-4. If you executed with ```RSRESEAL=true``` now is the time to take the
-   snapshot of the current running vagrant. See step 2
-
-5. The final step in preparing an image for use in the Linux Foundation
-   managed environments to then take the image produced in step 4 and
-   run the ```lf-networking``` vagrant definition using it. See the
-   README.md in that vagrant folder for the required extra environment
-   variables.
-
-6. Snapshot the new vagrant, see step 2 for details.
-
-At this point a new Rackspace image will be ready for a given network
-configuration. If you, the reader, are looking to utilize any of this
-for your own Rackspace managed environment, or standard Vagrant then
-step 5 & 6 will likely not be needed as they are specific to how the
-Linux Foundation manages the Jenkins environment for OpenDaylight.
diff --git a/vagrant/baseline/README.md b/vagrant/baseline/README.md
deleted file mode 100644 (file)
index 32252b8..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-baseline can be used for preparing basic test images. It's suitable for
-use only as a verification that our baseline library script is working
-as expected or for a very vanilla image.
-
-This is controlled by the IMAGE environment variable
-
-ex:
-
-$ export RESEAL=true
-$ IMAGE='CentOS 7' vagrant up --provider=openstack
-
-If $RESEAL is not set then the system will not be cleaned up in
-preparation for snapshotting. This is mostly useful for troubleshooting
-a vagrant definition before you do your final creation and snapshot.
diff --git a/vagrant/baseline/Vagrantfile b/vagrant/baseline/Vagrantfile
deleted file mode 100644 (file)
index 8a6080c..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby sw=2 ts=2 sts=2 et :
-
-# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
-VAGRANTFILE_API_VERSION = "2"
-
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
-  # root off of the rackspace provider dummy box
-  config.vm.box = "dummy"
-
-  # rackspace systems even with cloud-init
-  # don't seem to have the cloud init user ${osname}
-  # getting the ssh key for some reason, root does
-  # so use that
-  config.ssh.username = 'root'
-
-  # DEPRECATED
-  # ==========
-  #
-  # NOTE: The Rackspace provider section is deprecated as we are moving into a
-  # private OpenStack cloud. It may be revived after we've migrated and have a
-  # chance to do work to reconfigure the Rackspace public cloud to work for
-  # burst access
-  #
-  # make sure to set the following in your
-  # ~/.vagrant.d/boxes/dummy/0/rackspace/Vagrantfile
-  # rs.username
-  # rs.api_key
-  # rs.rackspace_region
-  #
-  # If you are not using a SSH token / smartcard also set this
-  # rs.key_name
-  # config.ssh.private_key_path  -- set this outside the rackspace block
-  #         in your base box
-  config.vm.provider :rackspace do |rs|
-    # create these base builds always on the smallest system possible
-    rs.flavor = 'general1-1'
-
-    # allow for switching to ORD cloud but default to DFW
-    if (ENV['RSREGION'] == 'ord')
-      rs.rackspace_region = :ord
-    else
-      rs.rackspace_region = :dfw
-    end
-
-    # Default to the Fedora 20 image unless overridden by a RSIMAGE
-    # environment variable
-    if ENV['IMAGE']
-      rs.image = ENV['IMAGE']
-    else
-      rs.image = 'Fedora 20 (Heisenbug) (PVHVM)'
-    end
-  end
-  # /DEPRECATED
-
-  # Configuration used by ODL Private cloud
-  # Should be mostly usable by any OpenStack cloud that can
-  # utilize upstream cloud images
-  config.vm.provider :openstack do |os, override|
-    if ENV['BOX']
-      override.vm.box = ENV['BOX']
-    else
-      override.vm.box = 'dummy'
-    end
-    config.ssh.username = 'centos'
-    os.flavor = 'm1.small'
-
-    # require an IMAGE to be passed in
-    # IMAGE must be a human name and not an image ID!
-    if ENV['IMAGE']
-      os.image = ENV['IMAGE']
-    else
-      os.image = 'BAD IMAGE'
-      override.ssh.username = 'baduser'
-    end
-
-    case ENV['IMAGE']
-      when /.*ubuntu.*/i
-        override.ssh.username = 'ubuntu'
-
-      when /.*fedora.*/i
-        override.ssh.username = 'fedora'
-
-        # take care of the tty requirement by fedora for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-
-      when /.*centos.*/i
-        override.ssh.username = 'centos'
-
-        # take care of the tty requirement by centos for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-    end
-
-  end
-
-  # Do a full system update and enable enforcing if needed
-  config.vm.provision 'shell', path: '../lib/baseline.sh'
-
-  # Execute a system clean-up in prep for imaging so that this base
-  # image can be used for other Rackspace Vagrant configurations
-  config.vm.provision 'shell', path: '../lib/system_reseal.sh'
-end
diff --git a/vagrant/basic-builder/README.md b/vagrant/basic-builder/README.md
deleted file mode 100644 (file)
index 31ec3c7..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-basic-builder can be used to take an already converted Rackspace
-native base image into a usuable basic java system for use in the
-OpenDaylight build and testing environment.
-
-Please see the rackspace-convert-base vagrant setup for creation of the
-needed base image.
-
-This vagrant expects (by default) a personal Rackspace image named
-
-'CentOS 7 - Vagrant ready'
-
-To spin up and utilize.
-
-$ RSIMAGE='${baseimagename}' vagrant up --provider=rackspace
-
-Will execute this vagrant against a differently named base image
-
-$ RSRESEAL=true vagrant up --provider=rackspace
-
-NOTE: resealing will cause the vagrant to run the resealing operation.
-This operation will intentionally destroy current SSH pubkeys installed
-on the system as well as reset log files and network configurations. You
-have been warned.
diff --git a/vagrant/basic-builder/Vagrantfile b/vagrant/basic-builder/Vagrantfile
deleted file mode 100644 (file)
index 0622a7a..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby sw=2 ts=2 sts=2 et :
-
-# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
-VAGRANTFILE_API_VERSION = "2"
-
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
-  # root off of the openstack provider dummy box
-  config.vm.box = "dummy"
-  config.ssh.username = 'root'
-
-  # make sure to set the following in your
-  # ~/.vagrant.d/boxes/dummy/0/openstack/Vagrantfile
-  #
-  # os.openstack_auth_url
-  # os.endpoint_type
-  # os.flavor
-  # os.tenant_name
-  # os.username
-  # os.password
-  # os.networks
-  #
-  # If you are not using an SSH token / smartcard also set this
-  # os.key_name
-  # config.ssh.private_key_path -- set this outside the openstack block
-  #         in your base box
-  config.vm.provider :openstack do |os, override|
-    if ENV['BOX']
-      override.vm.box = ENV['BOX']
-    else
-      override.vm.box = 'dummy'
-    end
-    config.ssh.username = 'centos'
-    os.flavor = 'm1.small'
-
-    # require an IMAGE to be passed in
-    # IMAGE must be a human name and not an image ID!
-    if ENV['IMAGE']
-      os.image = ENV['IMAGE']
-    else
-      os.image = 'BAD IMAGE'
-      override.ssh.username = 'baduser'
-    end
-
-    case ENV['IMAGE']
-      when /.*ubuntu.*/i
-        override.ssh.username = 'ubuntu'
-
-      when /.*fedora.*/i
-        override.ssh.username = 'fedora'
-
-        # take care of the tty requirement by fedora for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-
-      when /.*centos.*/i
-        override.ssh.username = 'centos'
-
-        # take care of the tty requirement by centos for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-    end
-  end
-
-  # Explicitlly set default shared folder and load lib folder
-  config.vm.synced_folder ".", "/vagrant"
-  config.vm.synced_folder "../lib/", "/vagrant/lib"
-
-  # Do a full system update and enable enforcing if needed
-  config.vm.provision 'shell', path: '../lib/baseline.sh'
-
-  # run our bootstrapping
-  config.vm.provision 'shell', path: 'bootstrap.sh'
-
-  #################
-  # FINAL CLEANUP #
-  #################
-
-  # set RESEAL to... anything if you want to snap an image of this box
-  # not setting the environment variable will cause the system to come
-  # up fully and not be in a resealable state
-  if ENV['RESEAL']
-    config.vm.provision 'shell', path: '../lib/system_reseal.sh'
-  end
-end
diff --git a/vagrant/basic-java-node/README.md b/vagrant/basic-java-node/README.md
deleted file mode 100644 (file)
index 592113c..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-basic-java-node can be used to take an already converted Rackspace
-native base image into a usuable basic java system for use in the
-OpenDaylight build and testing environment.
-
-Please see the rackspace-convert-base vagrant setup for creation of the
-needed base image.
-
-This vagrant expects (by default) a personal Rackspace image named
-
-'CentOS 6.5 - Vagrant ready'
-
-To spin up and utilize.
-
-$ RSIMAGE='${baseimagename}' vagrant up --provider=rackspace
-
-Will execute this vagrant against a differently named base image
-
-$ RSRESEAL=true vagrant up --provider=rackspace
-
-NOTE: resealing will cause the vagrant to run the resealing operation.
-This operation will intentionally destroy current SSH pubkeys installed
-on the system as well as reset log files and network configurations. You
-have been warned.
diff --git a/vagrant/basic-java-node/Vagrantfile b/vagrant/basic-java-node/Vagrantfile
deleted file mode 100644 (file)
index 46e61bf..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby sw=2 ts=2 sts=2 et :
-
-# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
-VAGRANTFILE_API_VERSION = "2"
-
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
-  # root off of the rackspace provider dummy box
-  config.vm.box = "dummy"
-
-  # rackspace systems, even with cloud-init
-  # don't seem to have the cloud int user ${osname} (or similar)
-  # getting the ssh key for some reason, root does for sure
-  # so use that
-  config.ssh.username = 'root'
-
-  # Fedora and EL systems default to requiring tty for sudo
-  # This should have been disabled with the Vagrant ready
-  # base box conversion (see rackspace-convert-base vagrant)
-  # but just to be safe
-  config.ssh.pty = true
-
-  # make sure to set the following in your
-  # ~/.vagrant.d/boxes/dummy/0/rackspace/Vagrantfile
-  # rs.username
-  # rs.api_key
-  # rs.rackspace_region
-  #
-  # If you are not using an SSH token / smartcard also set this
-  # rs.key_name
-  # config.ssh.private_key_path -- set this outside the rackspace block
-  #         in your base box
-  config.vm.provider :rackspace do |rs|
-    # create these base builds always on the smallest system possible
-    rs.flavor = 'general1-1'
-
-    # allow for switching to ORD cloud but default to DFW
-    if (ENV['RSREGION'] == 'ord')
-      rs.rackspace_region = :ord
-    else
-      rs.rackspace_region = :dfw
-    end
-
-    # Default the CentOS 6.5 - Vagrant ready image unless overriden by a RSIMAGE
-    # environment variable
-    if ENV['RSIMAGE']
-      rs.image = ENV['RSIMAGE']
-    else
-      rs.image = 'CentOS 6.5 - Vagrant ready'
-    end
-  end
-
-  # Explicitlly set default shared folder and load lib folder
-  config.vm.synced_folder ".", "/vagrant"
-  config.vm.synced_folder "../lib/", "/vagrant/lib"
-
-  # run our bootstrapping for the ovsdb-devstack system
-  config.vm.provision 'shell', path: 'bootstrap.sh'
-
-
-  #################
-  # LF NETWORKING #
-  #################
-
-  if ENV['LFNETWORK']
-    # reconfigure the network setup to support our special private setup
-    config.vm.provision 'shell', path: '../lib/lf-networking/configure_lf_infra.sh',
-      args: ENV['RSSUBDOMAIN']
-  end
-
-
-  #################
-  # FINAL CLEANUP #
-  #################
-
-  # set RSRESEAL to... anything if you want to snap an image of this box
-  # not setting the environment variable will cause the system to come
-  # up fully and not be in a resealable state
-  if ENV['RSRESEAL']
-    config.vm.provision 'shell', path: '../lib/system_reseal.sh'
-  end
-end
diff --git a/vagrant/basic-java-node/bootstrap.sh b/vagrant/basic-java-node/bootstrap.sh
deleted file mode 100644 (file)
index 7cdb812..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/bash
-
-# vim: sw=4 ts=4 sts=4 et tw=72 :
-
-yum clean all
-
-# Make sure the system is fully up to date
-yum update -q -y
-
-
diff --git a/vagrant/basic-mininet-fedora-node/README.md b/vagrant/basic-mininet-fedora-node/README.md
deleted file mode 100644 (file)
index 16a6fe2..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-basic-mininet-fedora-node can be used to take an already converted
-Rackspace native base image to a basic system with mininet and other
-test tools for use in the OpenDaylight build and testing environment
-
-Please see the rackspace-convert-base vagrant setup for creation of the
-needed base image.
-
-This vagrant expects (by default) a personal Rackspace image named
-
-'Fedora 21 - Vagrant ready'
-
-To spin up and utilize.
-
-$ RSIMAGE='${baseimagename}' vagrant up --provider=rackspace
-
-Will execute this vagrant against a differently named base image
-
-$ RSRESEAL=true vagrant up --provider=rackspace
-
-NOTE: resealing will cause the vagrant to run the resealing operation.
-This operation will intentionally destroy current SSH pubkeys installed
-on the system as well as reset log files and network configurations. You
-have been warned.
diff --git a/vagrant/basic-mininet-fedora-node/Vagrantfile b/vagrant/basic-mininet-fedora-node/Vagrantfile
deleted file mode 100644 (file)
index f9476a8..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby sw=2 ts=2 sts=2 et :
-
-# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
-VAGRANTFILE_API_VERSION = "2"
-
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
-  # root off of the rackspace provider dummy box
-  config.vm.box = "dummy"
-
-  # rackspace systems, even with cloud-init
-  # don't seem to have the cloud int user ${osname} (or similar)
-  # getting the ssh key for some reason, root does for sure
-  # so use that
-  config.ssh.username = 'root'
-
-  # Fedora and EL systems default to requiring tty for sudo
-  # This should have been disabled with the Vagrant ready
-  # base box conversion (see rackspace-convert-base vagrant)
-  # but just to be safe
-  config.ssh.pty = true
-
-  # make sure to set the following in your
-  # ~/.vagrant.d/boxes/dummy/0/rackspace/Vagrantfile
-  # rs.username
-  # rs.api_key
-  # rs.rackspace_region
-  #
-  # If you are not using an SSH token / smartcard also set this
-  # rs.key_name
-  # config.ssh.private_key_path -- set this outside the rackspace block
-  #         in your base box
-  config.vm.provider :rackspace do |rs|
-    # create these base builds always on the smallest system possible
-    rs.flavor = 'general1-1'
-
-    # allow for switching to ORD cloud but default to DFW
-    if (ENV['RSREGION'] == 'ord')
-      rs.rackspace_region = :ord
-    else
-      rs.rackspace_region = :dfw
-    end
-
-    # Default the Fedora 21 - Vagrant ready image unless overriden by a RSIMAGE
-    # environment variable
-    if ENV['RSIMAGE']
-      rs.image = ENV['RSIMAGE']
-    else
-      rs.image = 'Fedora 21 - Vagrant ready'
-    end
-  end
-
-  # run our bootstrapping for the ovsdb-devstack system
-  config.vm.provision 'shell', path: 'bootstrap.sh'
-
-  # set RSRESEAL to... anything if you want to snap an image of this box
-  # not setting the environment variable will cause the system to come
-  # up fully and not be in a resealable state
-  if ENV['RSRESEAL']
-    config.vm.provision 'shell', path: 'system_reseal.sh'
-  end
-end
diff --git a/vagrant/basic-mininet-fedora-node/bootstrap.sh b/vagrant/basic-mininet-fedora-node/bootstrap.sh
deleted file mode 100644 (file)
index 7da8761..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/bash
-
-# vim: sw=4 ts=4 sts=4 et tw=72 :
-
-# update os
-yum clean all
-yum update -q -y
-
-# install openvswitch
-yum install -q -y openvswitch
-# make sure it's enabled on system start, no need to start it
-# during setup
-systemctl enable openvswitch
-
-# install mininet
-git clone git://github.com/mininet/mininet
-cd mininet
-git checkout -b 2.2.1 2.2.1
-cd ..
-mininet/util/install.sh -nf
-
diff --git a/vagrant/basic-mininet-fedora-node/system_reseal.sh b/vagrant/basic-mininet-fedora-node/system_reseal.sh
deleted file mode 100644 (file)
index 07a0531..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/bin/bash
-
-# vim: sw=2 ts=2 sts=2 et :
-
-if [ -f /.autorelabel ]; then
-  echo "**********************************************"
-  echo "* SYSTEM REQUIRES RELABELING SKIPPING RESEAL *"
-  echo "*     PLEASE RESTART SYSTEM AND RERUN        *"
-  echo "*           PROVISIONING SCRIPTS             *"
-  echo "**********************************************"
-  exit 1;
-fi
-
-# clean-up from any prior cloud-init networking
-rm -rf /etc/sysconfig/network-scripts/{ifcfg,route}-eth*
-
-rm -rf /etc/Pegasus/*.cnf /etc/Pegasus/*.crt /etc/Pegasus/*.csr /etc/Pegasus/*.pem /etc/Pegasus/*.srl /root/anaconda-ks.cfg /root/anaconda-post.log /root/initial-setup-ks.cfg /root/install.log /root/install.log.syslog /var/cache/fontconfig/* /var/cache/gdm/* /var/cache/man/* /var/lib/AccountService/users/* /var/lib/fprint/* /var/lib/logrotate.status /var/log/*.log* /var/log/BackupPC/LOG /var/log/ConsoleKit/* /var/log/anaconda.syslog /var/log/anaconda/* /var/log/apache2/*_log /var/log/apache2/*_log-* /var/log/apt/* /var/log/aptitude* /var/log/audit/* /var/log/btmp* /var/log/ceph/*.log /var/log/chrony/*.log /var/log/cron* /var/log/cups/*_log /var/log/debug* /var/log/dmesg* /var/log/exim4/* /var/log/faillog* /var/log/gdm/* /var/log/glusterfs/*glusterd.vol.log /var/log/glusterfs/glusterfs.log /var/log/httpd/*log /var/log/installer/* /var/log/jetty/jetty-console.log /var/log/journal/* /var/log/lastlog* /var/log/libvirt/libvirtd.log /var/log/libvirt/lxc/*.log /var/log/libvirt/qemu/*.log /var/log/libvirt/uml/*.log /var/log/lightdm/* /var/log/mail/* /var/log/maillog* /var/log/messages* /var/log/ntp /var/log/ntpstats/* /var/log/ppp/connect-errors /var/log/rhsm/* /var/log/sa/* /var/log/secure* /var/log/setroubleshoot/*.log /var/log/spooler* /var/log/squid/*.log /var/log/syslog* /var/log/tallylog* /var/log/tuned/tuned.log /var/log/wtmp* /var/named/data/named.run
-
-rm -rf ~/.viminfo /etc/ssh/ssh*key*
-
-# kill any cloud-init related bits
-rm -rf /var/lib/cloud/*
-
-if [ -e /usr/bin/facter ]
-then
-  if [ `/usr/bin/facter operatingsystem` = 'Ubuntu' ]
-  then
-    rm -rf /etc/hostname* /etc/hosts /etc/network/interfaces /etc/network/interfaces.*.bak~
-    cat <<EOINT >> /etc/network/interfaces
-# Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or
-# /usr/share/doc/ifupdown/examples for more information.
-# The loopback network interface
-auto lo
-iface lo inet loopback
-EOINT
-  fi
-fi
-
-echo "********************************************"
-echo "*   PLEASE SNAPSHOT IMAGE AT THIS TIME     *"
-echo "********************************************"
diff --git a/vagrant/basic-mininet-node/README.md b/vagrant/basic-mininet-node/README.md
deleted file mode 100644 (file)
index 396afbe..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-basic-mininet-node can be used to take an already converted Rackspace
-native base image to a usuable basic system with mininet, netopeer /
-netconf and installation requirements for VTN already setup for use in
-the OpenDaylight build and testing environment
-
-Please see the rackspace-convert-base vagrant setup for creation of the
-needed base image.
-
-This vagrant expects (by default) a personal Rackspace image named
-
-'CentOS 6.5 - Vagrant ready'
-
-To spin up and utilize.
-
-$ RSIMAGE='${baseimagename}' vagrant up --provider=rackspace
-
-Will execute this vagrant against a differently named base image
-
-$ RSRESEAL=true vagrant up --provider=rackspace
-
-NOTE: resealing will cause the vagrant to run the resealing operation.
-This operation will intentionally destroy current SSH pubkeys installed
-on the system as well as reset log files and network configurations. You
-have been warned.
diff --git a/vagrant/basic-mininet-node/Vagrantfile b/vagrant/basic-mininet-node/Vagrantfile
deleted file mode 100644 (file)
index 46e61bf..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby sw=2 ts=2 sts=2 et :
-
-# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
-VAGRANTFILE_API_VERSION = "2"
-
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
-  # root off of the rackspace provider dummy box
-  config.vm.box = "dummy"
-
-  # rackspace systems, even with cloud-init
-  # don't seem to have the cloud int user ${osname} (or similar)
-  # getting the ssh key for some reason, root does for sure
-  # so use that
-  config.ssh.username = 'root'
-
-  # Fedora and EL systems default to requiring tty for sudo
-  # This should have been disabled with the Vagrant ready
-  # base box conversion (see rackspace-convert-base vagrant)
-  # but just to be safe
-  config.ssh.pty = true
-
-  # make sure to set the following in your
-  # ~/.vagrant.d/boxes/dummy/0/rackspace/Vagrantfile
-  # rs.username
-  # rs.api_key
-  # rs.rackspace_region
-  #
-  # If you are not using an SSH token / smartcard also set this
-  # rs.key_name
-  # config.ssh.private_key_path -- set this outside the rackspace block
-  #         in your base box
-  config.vm.provider :rackspace do |rs|
-    # create these base builds always on the smallest system possible
-    rs.flavor = 'general1-1'
-
-    # allow for switching to ORD cloud but default to DFW
-    if (ENV['RSREGION'] == 'ord')
-      rs.rackspace_region = :ord
-    else
-      rs.rackspace_region = :dfw
-    end
-
-    # Default the CentOS 6.5 - Vagrant ready image unless overriden by a RSIMAGE
-    # environment variable
-    if ENV['RSIMAGE']
-      rs.image = ENV['RSIMAGE']
-    else
-      rs.image = 'CentOS 6.5 - Vagrant ready'
-    end
-  end
-
-  # Explicitlly set default shared folder and load lib folder
-  config.vm.synced_folder ".", "/vagrant"
-  config.vm.synced_folder "../lib/", "/vagrant/lib"
-
-  # run our bootstrapping for the ovsdb-devstack system
-  config.vm.provision 'shell', path: 'bootstrap.sh'
-
-
-  #################
-  # LF NETWORKING #
-  #################
-
-  if ENV['LFNETWORK']
-    # reconfigure the network setup to support our special private setup
-    config.vm.provision 'shell', path: '../lib/lf-networking/configure_lf_infra.sh',
-      args: ENV['RSSUBDOMAIN']
-  end
-
-
-  #################
-  # FINAL CLEANUP #
-  #################
-
-  # set RSRESEAL to... anything if you want to snap an image of this box
-  # not setting the environment variable will cause the system to come
-  # up fully and not be in a resealable state
-  if ENV['RSRESEAL']
-    config.vm.provision 'shell', path: '../lib/system_reseal.sh'
-  end
-end
diff --git a/vagrant/basic-mininet-node/bootstrap.sh b/vagrant/basic-mininet-node/bootstrap.sh
deleted file mode 100644 (file)
index 5dbe823..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/bin/bash
-
-# vim: sw=4 ts=4 sts=4 et tw=72 :
-
-yum clean all
-# Add the ODL yum repo (not needed for java nodes, but useful for
-# potential later layers)
-yum install -q -y https://nexus.opendaylight.org/content/repositories/opendaylight-yum-epel-6-x86_64/rpm/opendaylight-release/0.1.0-1.el6.noarch/opendaylight-release-0.1.0-1.el6.noarch.rpm
-
-# Make sure the system is fully up to date
-yum update -q -y
-
-# Add in git (needed for most everything) and XML-XPath as it is useful
-# for doing CLI based CML parsing of POM files
-yum install -q -y git perl-{XML-XPath,Digest-SHA}
-
-# install all available openjdk-devel sets
-yum install -q -y 'java-*-openjdk-devel'
-
-# we currently use Java7 (aka java-1.7.0-openjdk) as our standard make
-# sure that this is the java that alternatives is pointing to, dynamic
-# spin-up scripts can switch to any of the current JREs installed if
-# needed
-alternatives --set java /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
-alternatives --set java_sdk_openjdk /usr/lib/jvm/java-1.7.0-openjdk.x86_64
-
-# To handle the prompt style that is expected all over the environment
-# with how use use robotframework we need to make sure that it is
-# consistent for any of the users that are created during dynamic spin
-# ups
-echo 'PS1="[\u@\h \W]> "' >> /etc/skel/.bashrc
-
-# add in mininet, openvswitch, and netopeer
-yum install -q -y netopeer-server-sl CPqD-ofsoftswitch13 mininet \
-    telnet openvswitch
-
-# we need semanage installed for some of the next bit
-yum install -q -y policycoreutils-python
-
-# netconf / netopeer needs some special modifications to ssh
-semanage port -a -t ssh_port_t -p tcp '830'
-
-# The default /etc/ssh/sshd_config doesn't actually specify a port as such
-# we need to specify both 22 as well as 830 along with the netconf
-# subsystem
-echo << EOSSH >> /etc/ssh/sshd_config
-
-# Added for netconf / netopeer testing
-Port 22
-Port 830
-Subsystem netconf /usr/bin/netopeer-server-sl
-EOSSH
-
-# cbench installation for running openflow performance tests
-
-OF_DIR=$HOME/openflow  # Directory that contains OpenFlow code
-OFLOPS_DIR=$HOME/oflops  # Directory that contains oflops repo
-
-yum install -q -y net-snmp-devel libpcap-devel autoconf make automake libtool libconfig-devel
-
-git clone git://gitosis.stanford.edu/openflow.git $OF_DIR &> /dev/null
-git clone https://github.com/andi-bigswitch/oflops.git $OFLOPS_DIR &> /dev/null
-
-cd $OFLOPS_DIR
-./boot.sh &> /dev/null
-./configure --with-openflow-src-dir=$OF_DIR &> /dev/null
-make &> /dev/null
-make install &> /dev/null
diff --git a/vagrant/docker/README.md b/vagrant/docker/README.md
deleted file mode 100644 (file)
index a66f641..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-The docker Vagrant can be used to take an already converted Rackspace native
-base image into a usuable docker ready image
-
-Please see the baseline vagrant setup for creation of the
-needed base image.
-
-This vagrant expects (by default) a personal Rackspace image named
-
-'Fedora 20 (Heisenbug) - Vagrant ready'
-
-To spin up and utilize.
-
-$ RSIMAGE="${baseimagename}" vagrant up --provider=rackspace
-
-Will execute this vagrant against a differently named base image
-
-$ RSIMAGE="${baseimagename}" RSRESEAL=true vagrant up --provider=rackspace
-
-NOTE: resealing will cause the vagrant to run the resealing operation.
-This operation will intentionally destroy current SSH pubkeys installed
-on the system as well as reset log files and network configurations. You
-have been warned.
diff --git a/vagrant/docker/Vagrantfile b/vagrant/docker/Vagrantfile
deleted file mode 100644 (file)
index 0622a7a..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby sw=2 ts=2 sts=2 et :
-
-# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
-VAGRANTFILE_API_VERSION = "2"
-
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
-  # root off of the openstack provider dummy box
-  config.vm.box = "dummy"
-  config.ssh.username = 'root'
-
-  # make sure to set the following in your
-  # ~/.vagrant.d/boxes/dummy/0/openstack/Vagrantfile
-  #
-  # os.openstack_auth_url
-  # os.endpoint_type
-  # os.flavor
-  # os.tenant_name
-  # os.username
-  # os.password
-  # os.networks
-  #
-  # If you are not using an SSH token / smartcard also set this
-  # os.key_name
-  # config.ssh.private_key_path -- set this outside the openstack block
-  #         in your base box
-  config.vm.provider :openstack do |os, override|
-    if ENV['BOX']
-      override.vm.box = ENV['BOX']
-    else
-      override.vm.box = 'dummy'
-    end
-    config.ssh.username = 'centos'
-    os.flavor = 'm1.small'
-
-    # require an IMAGE to be passed in
-    # IMAGE must be a human name and not an image ID!
-    if ENV['IMAGE']
-      os.image = ENV['IMAGE']
-    else
-      os.image = 'BAD IMAGE'
-      override.ssh.username = 'baduser'
-    end
-
-    case ENV['IMAGE']
-      when /.*ubuntu.*/i
-        override.ssh.username = 'ubuntu'
-
-      when /.*fedora.*/i
-        override.ssh.username = 'fedora'
-
-        # take care of the tty requirement by fedora for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-
-      when /.*centos.*/i
-        override.ssh.username = 'centos'
-
-        # take care of the tty requirement by centos for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-    end
-  end
-
-  # Explicitlly set default shared folder and load lib folder
-  config.vm.synced_folder ".", "/vagrant"
-  config.vm.synced_folder "../lib/", "/vagrant/lib"
-
-  # Do a full system update and enable enforcing if needed
-  config.vm.provision 'shell', path: '../lib/baseline.sh'
-
-  # run our bootstrapping
-  config.vm.provision 'shell', path: 'bootstrap.sh'
-
-  #################
-  # FINAL CLEANUP #
-  #################
-
-  # set RESEAL to... anything if you want to snap an image of this box
-  # not setting the environment variable will cause the system to come
-  # up fully and not be in a resealable state
-  if ENV['RESEAL']
-    config.vm.provision 'shell', path: '../lib/system_reseal.sh'
-  end
-end
diff --git a/vagrant/gbp-ubuntu-docker-ovs-node/Vagrantfile b/vagrant/gbp-ubuntu-docker-ovs-node/Vagrantfile
deleted file mode 100644 (file)
index cb6b627..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby sw=2 ts=2 sts=2 et :
-
-# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
-VAGRANTFILE_API_VERSION = "2"
-
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
-  # root off of the openstack provider dummy box
-  config.vm.box = "dummy"
-  config.ssh.username = 'root'
-
-  # make sure to set the following in your
-  # ~/.vagrant.d/boxes/dummy/0/openstack/Vagrantfile
-  #
-  # os.openstack_auth_url
-  # os.endpoint_type
-  # os.flavor
-  # os.tenant_name
-  # os.username
-  # os.password
-  # os.networks
-  #
-  # If you are not using an SSH token / smartcard also set this
-  # os.key_name
-  # config.ssh.private_key_path -- set this outside the openstack block
-  #         in your base box
-  config.vm.provider :openstack do |os, override|
-    if ENV['BOX']
-      override.vm.box = ENV['BOX']
-    else
-      override.vm.box = 'dummy'
-    end
-    config.ssh.username = 'centos'
-    os.flavor = 'm1.small'
-
-    # require an IMAGE to be passed in
-    # IMAGE must be a human name and not an image ID!
-    if ENV['IMAGE']
-      os.image = ENV['IMAGE']
-    else
-      os.image = 'BAD IMAGE'
-      override.ssh.username = 'baduser'
-    end
-
-    case ENV['IMAGE']
-      when /.*ubuntu.*/i
-        override.ssh.username = 'ubuntu'
-
-      when /.*fedora.*/i
-        override.ssh.username = 'fedora'
-
-        # take care of the tty requirement by fedora for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-
-      when /.*centos.*/i
-        override.ssh.username = 'centos'
-
-        # take care of the tty requirement by centos for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-    end
-  end
-
-  # Explicitlly set default shared folder and load lib folder
-  config.vm.synced_folder ".", "/vagrant"
-  config.vm.synced_folder "../lib/", "/vagrant/lib"
-
-  # Do a full system update and enable enforcing if needed
-  config.vm.provision 'shell', path: '../lib/baseline.sh'
-
-  # run our bootstrapping
-  config.vm.provision 'shell', path: 'bootstrap.sh'
-
-
-  #################
-  # FINAL CLEANUP #
-  #################
-
-  # set RSRESEAL to... anything if you want to snap an image of this box
-  # not setting the environment variable will cause the system to come
-  # up fully and not be in a resealable state
-  if ENV['RSRESEAL']
-    config.vm.provision 'shell', path: '../lib/system_reseal.sh'
-  end
-end
diff --git a/vagrant/integration-robotframework/README.md b/vagrant/integration-robotframework/README.md
deleted file mode 100644 (file)
index 84a24fd..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-integration-robotframework can be used to take an already converted
-Rackspace native base image into a usuable robotframework system for use
-in the OpenDaylight integration testing environment.
-
-Please see the rackspace-convert-base vagrant setup for creation of the
-needed base image.
-
-This vagrant expects (by default) a personal Rackspace image named
-
-'CentOS 6.5 - Vagrant ready'
-
-To spin up and utilize.
-
-$ RSIMAGE='${baseimagename}' vagrant up --provider=rackspace
-
-Will execute this vagrant against a differently named base image
-
-$ RSRESEAL=true vagrant up --provider=rackspace
-
-NOTE: resealing will cause the vagrant to run the resealing operation.
-This operation will intentionally destroy current SSH pubkeys installed
-on the system as well as reset log files and network configurations. You
-have been warned.
diff --git a/vagrant/integration-robotframework/Vagrantfile b/vagrant/integration-robotframework/Vagrantfile
deleted file mode 100644 (file)
index 0622a7a..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby sw=2 ts=2 sts=2 et :
-
-# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
-VAGRANTFILE_API_VERSION = "2"
-
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
-  # root off of the openstack provider dummy box
-  config.vm.box = "dummy"
-  config.ssh.username = 'root'
-
-  # make sure to set the following in your
-  # ~/.vagrant.d/boxes/dummy/0/openstack/Vagrantfile
-  #
-  # os.openstack_auth_url
-  # os.endpoint_type
-  # os.flavor
-  # os.tenant_name
-  # os.username
-  # os.password
-  # os.networks
-  #
-  # If you are not using an SSH token / smartcard also set this
-  # os.key_name
-  # config.ssh.private_key_path -- set this outside the openstack block
-  #         in your base box
-  config.vm.provider :openstack do |os, override|
-    if ENV['BOX']
-      override.vm.box = ENV['BOX']
-    else
-      override.vm.box = 'dummy'
-    end
-    config.ssh.username = 'centos'
-    os.flavor = 'm1.small'
-
-    # require an IMAGE to be passed in
-    # IMAGE must be a human name and not an image ID!
-    if ENV['IMAGE']
-      os.image = ENV['IMAGE']
-    else
-      os.image = 'BAD IMAGE'
-      override.ssh.username = 'baduser'
-    end
-
-    case ENV['IMAGE']
-      when /.*ubuntu.*/i
-        override.ssh.username = 'ubuntu'
-
-      when /.*fedora.*/i
-        override.ssh.username = 'fedora'
-
-        # take care of the tty requirement by fedora for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-
-      when /.*centos.*/i
-        override.ssh.username = 'centos'
-
-        # take care of the tty requirement by centos for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-    end
-  end
-
-  # Explicitlly set default shared folder and load lib folder
-  config.vm.synced_folder ".", "/vagrant"
-  config.vm.synced_folder "../lib/", "/vagrant/lib"
-
-  # Do a full system update and enable enforcing if needed
-  config.vm.provision 'shell', path: '../lib/baseline.sh'
-
-  # run our bootstrapping
-  config.vm.provision 'shell', path: 'bootstrap.sh'
-
-  #################
-  # FINAL CLEANUP #
-  #################
-
-  # set RESEAL to... anything if you want to snap an image of this box
-  # not setting the environment variable will cause the system to come
-  # up fully and not be in a resealable state
-  if ENV['RESEAL']
-    config.vm.provision 'shell', path: '../lib/system_reseal.sh'
-  end
-end
diff --git a/vagrant/lib/lf-networking/README.md b/vagrant/lib/lf-networking/README.md
deleted file mode 100644 (file)
index 9d1365f..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-lf-networking is the final overlay that is run on images to make them
-usable as Jenkins slaves in the OpenDaylight or ODLForge environments.
-
-Please see the rackspace-convert-base vagrant setup for creation of the
-needed base image or use one of the other vagrant configurations
-(utilizing a convert base image) for the source image.
-
-This vagrant expects (by default) a personal Rackspace image named
-
-'CentOS 6.5 - Vagrant ready'
-
-To spin up and utilize.
-
-$ RSIMAGE='${baseimagename}' vagrant up --provider=rackspace
-
-Will execute this vagrant against a differently named base image
-
-This vagrant requires that an environment variable of RSSUBDOMAIN be
-configured so that the networking configuration can be carried out
-properly as the process used makes it difficult at best and impossible
-at worst to detect what the final networking setups should be. This
-needs to be detected before we create the base image due to how
-cloud-init overwrites certain features we're trying to override and we
-therefore 'chattr +i' certain configuration files to keep it from
-breaking things.
-
-RSSUBDOMAIN may be (currently) one of the following options:
-
-dfw.opendaylight.org
-dfw.odlforge.org
-ord.opendaylight.org
-
-NOTE: This vagrant will always execute the resealing operation. This
-operation will intentially destroy current SSH pubkeys installed on the
-system as well as reset log files and network configurations. You have
-been warned.
diff --git a/vagrant/lib/lf-networking/Vagrantfile b/vagrant/lib/lf-networking/Vagrantfile
deleted file mode 100644 (file)
index a162628..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby sw=2 ts=2 sts=2 et :
-
-# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
-VAGRANTFILE_API_VERSION = "2"
-
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
-  config.vm.box = "dummy"
-
-  config.ssh.username = 'root'
-
-  config.vm.provider :rackspace do |rs|
-    rs.flavor = 'general1-1'
-
-    if ENV['RSIMAGE']
-      rs.image = ENV['RSIMAGE']
-    else
-      rs.image = 'CentOS 6.5 - Vagrant ready'
-    end
-
-    # allow for switching to ORD but default to DFW
-    if (ENV['RSREGION'] == 'ord')
-      rs.rackspace_region = :ord
-    else
-      rs.rackspace_region = :dfw
-    end
-  end
-
-  # explicitly configure shared folder syncs
-  config.vm.synced_folder '.', '/vagrant', :disabled => true
-  config.vm.synced_folder '..', '/vagrant/lib'
-
-  # reconfigure the network setup to support our special private setup
-  config.vm.provision 'shell', path: 'configure_lf_infra.sh', args: ENV['RSSUBDOMAIN']
-
-  # reseal the system for imaging
-  config.vm.provision 'shell', path: '../system_reseal.sh'
-end
diff --git a/vagrant/lib/lf-networking/confignetwork.pp b/vagrant/lib/lf-networking/confignetwork.pp
deleted file mode 100644 (file)
index e60df0c..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-# make system modifications to handle being on a private Rackspace network
-
-# lint:ignore:80chars
-notice ("Operating system detected is: '${::operatingsystem} ${::operatingsystemrelease}'")
-# lint:endignore
-notice ("Subdomain being used is: '${::subdomain}'")
-
-# configure nameservers for domains
-case $::subdomain {
-  /^dfw\./: {
-    $ns1 = '72.3.128.241'
-    $ns2 = '72.3.128.240'
-    case $::subdomain {
-      /opendaylight/: {
-        $router = '10.30.11.1'
-      }
-      /odlforge/: {
-        $router = '10.30.12.1'
-      }
-      default: {
-        fail("Unrecognized subdomain ${::subdomain}")
-      }
-    }
-  }
-  /^ord\./: {
-    $ns1 = '173.203.4.9'
-    $ns2 = '173.203.4.8'
-    $router = '10.30.32.1'
-  }
-  default: {
-    fail("Unrecognized subdomain ${::subdomain}")
-  }
-}
-
-# dnsmasq
-class { 'dnsmasq': }
-
-# Setup dnsmasq special domain handlers
-dnsmasq::conf { 'LF-ns1':
-  ensure  => present,
-  content => 'server=/linux-foundation.org/172.17.192.30',
-}
-
-dnsmasq::conf { 'LF-ns2':
-  ensure  => present,
-  content => 'server=/linux-foundation.org/172.17.192.31',
-}
-
-dnsmasq::conf { 'ODL-ns1':
-  ensure  => present,
-  content => 'server=/opendaylight.org/172.17.192.30',
-}
-
-dnsmasq::conf { 'ODL-ns2':
-  ensure  => present,
-  content => 'server=/opendaylight.org/172.17.192.31',
-}
-
-dnsmasq::conf { 'ODLForge-ns1':
-  ensure  => present,
-  content => 'server=/odlforge.org/172.17.192.30',
-}
-
-dnsmasq::conf { 'ODLForge-ns2':
-  ensure  => present,
-  content => 'server=/odlforge.org/172.17.192.31',
-}
-
-# fix the resolver
-file { '/etc/resolv.conf':
-  content => "search ${::subdomain}
-nameserver 127.0.0.1
-nameserver ${ns1}
-nameserver ${ns2}
-options timeout:2
-",
-}
-
-file { '/etc/cloud/cloud.cfg.d/00_lf_resolv.cfg':
-  content => "#cloud-config
-
-manage_resolv_conf: true
-
-resolv_conf:
-  nameservers: ['127.0.0.1', '${ns1}', '${ns2}']
-  searchdomains:
-    - ${::subdomain}
-  options:
-    timeout: 2
-",
-}
-
-file_line { 'add_resolver':
-  path       => $::operatingsystem ? {
-    'Ubuntu' => '/etc/cloud/cloud.cfg',
-    default  => '/etc/cloud/cloud.cfg.d/10_rackspace.cfg',
-  },
-  line  => ' - resolv_conf',
-  after => ' - update_etc_hosts',
-}
-
-# OS specific configuration
-case $::operatingsystem {
-  'CentOS', 'Fedora', 'RedHat': {
-    file { '/etc/sysconfig/network-scripts/route-eth0':
-      content => "default via ${router} dev eth0",
-    }
-
-    # disable the DNS peerage so that our resolv.conf doesn't
-    # get destroyed
-    file_line { 'disable_peerdns':
-      path => '/etc/sysconfig/network',
-      line => 'PEERDNS=no',
-    }
-  }
-  'Ubuntu': {
-    file { '/etc/network/if-up.d/0000routing':
-      content => "#!/bin/sh\nip route add default via ${router} dev eth0",
-      mode    => '0755',
-    }
-
-    file { '/etc/resolvconf/resolv.conf.d/tail':
-      content => "# opendaylight dns
-nameserver ${ns1}
-nameserver ${ns2}
-",
-    }
-  }
-  default: {
-    notice ("${::operatingsystem} is not supported by this configuration")
-  }
-}
diff --git a/vagrant/lib/lf-networking/configure_lf_infra.sh b/vagrant/lib/lf-networking/configure_lf_infra.sh
deleted file mode 100644 (file)
index 06cac0f..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-#!/bin/bash
-
-# script requires information about subdomain
-if [ -z "$1" ]; then
-    >&2 echo "Please provide the subdomain to Vagrant"
-    exit 1
-else
-    SUBDOM=$1
-fi
-
-
-all_systems() {
-    # install specific versions of puppet modules
-    puppet module install puppetlabs-stdlib -v 4.5.1
-    puppet module install puppetlabs-concat -v 1.2.0
-    #puppet module install lex-dnsmasq -v 2.6.1
-    puppet module install saz-dnsmasq -v 1.2.0
-
-    # write the subdomain information into a custom facter fact
-    mkdir -p /etc/facter/facts.d/
-    echo "subdomain=${SUBDOM}" > /etc/facter/facts.d/subdomain.txt
-
-    # final bits
-    puppet apply /vagrant/lib/lf-networking/confignetwork.pp
-
-}
-
-rh_systems_init() {
-    # remove current networking configurations
-    rm -f /etc/sysconfig/network-scripts/ifcfg-eth*
-}
-
-rh_systems_post() {
-    # don't let cloud-init do funny things to our routing
-    chattr +i /etc/sysconfig/network-scripts/route-eth0
-
-    # so that the network stack doesn't futz with our resolv config
-    # after we've configured it
-#    chattr +i /etc/resolv.conf
-}
-
-ubuntu_systems_post() {
-    # don't let cloud-init destroy our routing
-#    chattr +i /etc/network/if-up.d/0000routing
-    echo "---> do nothing for now"
-}
-
-# Execute setup that all systems need
-all_systems
-
-echo "---> Checking distribution"
-FACTER_OSFAMILY=`/usr/bin/facter osfamily`
-FACTER_OS=`/usr/bin/facter operatingsystem`
-case "$FACTER_OSFAMILY" in
-    RedHat)
-        rh_systems_init
-        rh_systems_post
-    ;;
-    Debian)
-        case "$FACTER_OS" in
-            Ubuntu)
-                echo "---> Ubuntu found"
-                ubuntu_systems_post
-            ;;
-            *)
-                "---> Nothing to do for ${FACTER_OS}"
-            ;;
-        esac
-    ;;
-    *)
-        echo "---> Unknown OS: ${FACTER_OSFAMILY}"
-    ;;
-esac
-
-# vim: sw=4 ts=4 sts=4 et :
diff --git a/vagrant/lib/system_reseal.sh b/vagrant/lib/system_reseal.sh
deleted file mode 100644 (file)
index 84b2953..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/bin/bash
-
-# vim: sw=2 ts=2 sts=2 et :
-
-if [ -f /.autorelabel ]; then
-  echo "**********************************************"
-  echo "* SYSTEM REQUIRES RELABELING SKIPPING RESEAL *"
-  echo "*     PLEASE RESTART SYSTEM AND RERUN        *"
-  echo "*           PROVISIONING SCRIPTS             *"
-  echo "**********************************************"
-  exit 1;
-fi
-
-rm -rf /etc/Pegasus/*.cnf /etc/Pegasus/*.crt /etc/Pegasus/*.csr /etc/Pegasus/*.pem /etc/Pegasus/*.srl /root/anaconda-ks.cfg /root/anaconda-post.log /root/initial-setup-ks.cfg /root/install.log /root/install.log.syslog /var/cache/fontconfig/* /var/cache/gdm/* /var/cache/man/* /var/lib/AccountService/users/* /var/lib/fprint/* /var/lib/logrotate.status /var/log/*.log* /var/log/BackupPC/LOG /var/log/ConsoleKit/* /var/log/anaconda.syslog /var/log/anaconda/* /var/log/apache2/*_log /var/log/apache2/*_log-* /var/log/apt/* /var/log/aptitude* /var/log/audit/* /var/log/btmp* /var/log/ceph/*.log /var/log/chrony/*.log /var/log/cron* /var/log/cups/*_log /var/log/debug* /var/log/dmesg* /var/log/exim4/* /var/log/faillog* /var/log/gdm/* /var/log/glusterfs/*glusterd.vol.log /var/log/glusterfs/glusterfs.log /var/log/httpd/*log /var/log/installer/* /var/log/jetty/jetty-console.log /var/log/journal/* /var/log/lastlog* /var/log/libvirt/libvirtd.log /var/log/libvirt/lxc/*.log /var/log/libvirt/qemu/*.log /var/log/libvirt/uml/*.log /var/log/lightdm/* /var/log/mail/* /var/log/maillog* /var/log/messages* /var/log/ntp /var/log/ntpstats/* /var/log/ppp/connect-errors /var/log/rhsm/* /var/log/sa/* /var/log/secure* /var/log/setroubleshoot/*.log /var/log/spooler* /var/log/squid/*.log /var/log/syslog* /var/log/tallylog* /var/log/tuned/tuned.log /var/log/wtmp* /var/named/data/named.run
-
-rm -rf ~/.viminfo /etc/ssh/ssh*key* ~/.ssh/* /root/.ssh/* /home/$(logname)/.ssh/*
-
-# kill any cloud-init related bits
-rm -rf /var/lib/cloud/*
-
-# cleanup /vagrant
-rm -rf /vagrant
-
-# Force a system sync and sleep to get around any SSD issues
-echo "Forcing sync and sleep for 10sec"
-sync
-sleep 10
-
-echo "********************************************"
-echo "*   PLEASE SNAPSHOT IMAGE AT THIS TIME     *"
-echo "********************************************"
diff --git a/vagrant/ovsdb-devstack/README.md b/vagrant/ovsdb-devstack/README.md
deleted file mode 100644 (file)
index 70db039..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-ovsdb-devstack can be used to take an already converted Rackspace native
-base image into a usuable DevStack base image for ODL DevStack testing.
-
-Please see the rackspace-convert-base vagrant setup for creation of the
-needed base image.
-
-This vagrant expects (by default) a personal image named
-
-'Fedora 20 (Heisenbug) - Vagrant ready'
-
-To spin up and utilize.
-
-$ RSIMAGE='${baseimage_name}' vagrant up --provider=rackspace
-
-Will execute this vagrant against a differently named base image
-
-$ RSRESEAL=true vagrant up --provider=rackspace
-
-NOTE: resealing will cause the vagrant to run the resealing operation.
-This operation will intentionally destroy current SSH pubkeys installed
-on the system as well as reset log files and network configurations. You
-have been warned.
diff --git a/vagrant/ovsdb-devstack/Vagrantfile b/vagrant/ovsdb-devstack/Vagrantfile
deleted file mode 100644 (file)
index 0622a7a..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby sw=2 ts=2 sts=2 et :
-
-# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
-VAGRANTFILE_API_VERSION = "2"
-
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
-  # root off of the openstack provider dummy box
-  config.vm.box = "dummy"
-  config.ssh.username = 'root'
-
-  # make sure to set the following in your
-  # ~/.vagrant.d/boxes/dummy/0/openstack/Vagrantfile
-  #
-  # os.openstack_auth_url
-  # os.endpoint_type
-  # os.flavor
-  # os.tenant_name
-  # os.username
-  # os.password
-  # os.networks
-  #
-  # If you are not using an SSH token / smartcard also set this
-  # os.key_name
-  # config.ssh.private_key_path -- set this outside the openstack block
-  #         in your base box
-  config.vm.provider :openstack do |os, override|
-    if ENV['BOX']
-      override.vm.box = ENV['BOX']
-    else
-      override.vm.box = 'dummy'
-    end
-    config.ssh.username = 'centos'
-    os.flavor = 'm1.small'
-
-    # require an IMAGE to be passed in
-    # IMAGE must be a human name and not an image ID!
-    if ENV['IMAGE']
-      os.image = ENV['IMAGE']
-    else
-      os.image = 'BAD IMAGE'
-      override.ssh.username = 'baduser'
-    end
-
-    case ENV['IMAGE']
-      when /.*ubuntu.*/i
-        override.ssh.username = 'ubuntu'
-
-      when /.*fedora.*/i
-        override.ssh.username = 'fedora'
-
-        # take care of the tty requirement by fedora for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-
-      when /.*centos.*/i
-        override.ssh.username = 'centos'
-
-        # take care of the tty requirement by centos for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-    end
-  end
-
-  # Explicitlly set default shared folder and load lib folder
-  config.vm.synced_folder ".", "/vagrant"
-  config.vm.synced_folder "../lib/", "/vagrant/lib"
-
-  # Do a full system update and enable enforcing if needed
-  config.vm.provision 'shell', path: '../lib/baseline.sh'
-
-  # run our bootstrapping
-  config.vm.provision 'shell', path: 'bootstrap.sh'
-
-  #################
-  # FINAL CLEANUP #
-  #################
-
-  # set RESEAL to... anything if you want to snap an image of this box
-  # not setting the environment variable will cause the system to come
-  # up fully and not be in a resealable state
-  if ENV['RESEAL']
-    config.vm.provision 'shell', path: '../lib/system_reseal.sh'
-  end
-end
diff --git a/vagrant/ubuntu-mininet-ovs-2.3/Vagrantfile b/vagrant/ubuntu-mininet-ovs-2.3/Vagrantfile
deleted file mode 100644 (file)
index cb6b627..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby sw=2 ts=2 sts=2 et :
-
-# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
-VAGRANTFILE_API_VERSION = "2"
-
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
-  # root off of the openstack provider dummy box
-  config.vm.box = "dummy"
-  config.ssh.username = 'root'
-
-  # make sure to set the following in your
-  # ~/.vagrant.d/boxes/dummy/0/openstack/Vagrantfile
-  #
-  # os.openstack_auth_url
-  # os.endpoint_type
-  # os.flavor
-  # os.tenant_name
-  # os.username
-  # os.password
-  # os.networks
-  #
-  # If you are not using an SSH token / smartcard also set this
-  # os.key_name
-  # config.ssh.private_key_path -- set this outside the openstack block
-  #         in your base box
-  config.vm.provider :openstack do |os, override|
-    if ENV['BOX']
-      override.vm.box = ENV['BOX']
-    else
-      override.vm.box = 'dummy'
-    end
-    config.ssh.username = 'centos'
-    os.flavor = 'm1.small'
-
-    # require an IMAGE to be passed in
-    # IMAGE must be a human name and not an image ID!
-    if ENV['IMAGE']
-      os.image = ENV['IMAGE']
-    else
-      os.image = 'BAD IMAGE'
-      override.ssh.username = 'baduser'
-    end
-
-    case ENV['IMAGE']
-      when /.*ubuntu.*/i
-        override.ssh.username = 'ubuntu'
-
-      when /.*fedora.*/i
-        override.ssh.username = 'fedora'
-
-        # take care of the tty requirement by fedora for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-
-      when /.*centos.*/i
-        override.ssh.username = 'centos'
-
-        # take care of the tty requirement by centos for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-    end
-  end
-
-  # Explicitlly set default shared folder and load lib folder
-  config.vm.synced_folder ".", "/vagrant"
-  config.vm.synced_folder "../lib/", "/vagrant/lib"
-
-  # Do a full system update and enable enforcing if needed
-  config.vm.provision 'shell', path: '../lib/baseline.sh'
-
-  # run our bootstrapping
-  config.vm.provision 'shell', path: 'bootstrap.sh'
-
-
-  #################
-  # FINAL CLEANUP #
-  #################
-
-  # set RSRESEAL to... anything if you want to snap an image of this box
-  # not setting the environment variable will cause the system to come
-  # up fully and not be in a resealable state
-  if ENV['RSRESEAL']
-    config.vm.provision 'shell', path: '../lib/system_reseal.sh'
-  end
-end
diff --git a/vagrant/ubuntu-mininet/Vagrantfile b/vagrant/ubuntu-mininet/Vagrantfile
deleted file mode 100644 (file)
index cb6b627..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby sw=2 ts=2 sts=2 et :
-
-# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
-VAGRANTFILE_API_VERSION = "2"
-
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
-  # root off of the openstack provider dummy box
-  config.vm.box = "dummy"
-  config.ssh.username = 'root'
-
-  # make sure to set the following in your
-  # ~/.vagrant.d/boxes/dummy/0/openstack/Vagrantfile
-  #
-  # os.openstack_auth_url
-  # os.endpoint_type
-  # os.flavor
-  # os.tenant_name
-  # os.username
-  # os.password
-  # os.networks
-  #
-  # If you are not using an SSH token / smartcard also set this
-  # os.key_name
-  # config.ssh.private_key_path -- set this outside the openstack block
-  #         in your base box
-  config.vm.provider :openstack do |os, override|
-    if ENV['BOX']
-      override.vm.box = ENV['BOX']
-    else
-      override.vm.box = 'dummy'
-    end
-    config.ssh.username = 'centos'
-    os.flavor = 'm1.small'
-
-    # require an IMAGE to be passed in
-    # IMAGE must be a human name and not an image ID!
-    if ENV['IMAGE']
-      os.image = ENV['IMAGE']
-    else
-      os.image = 'BAD IMAGE'
-      override.ssh.username = 'baduser'
-    end
-
-    case ENV['IMAGE']
-      when /.*ubuntu.*/i
-        override.ssh.username = 'ubuntu'
-
-      when /.*fedora.*/i
-        override.ssh.username = 'fedora'
-
-        # take care of the tty requirement by fedora for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-
-      when /.*centos.*/i
-        override.ssh.username = 'centos'
-
-        # take care of the tty requirement by centos for sudo
-        os.user_data = "#!/bin/bash
-/bin/sed -i 's/ requiretty/ !requiretty/' /etc/sudoers;"
-    end
-  end
-
-  # Explicitlly set default shared folder and load lib folder
-  config.vm.synced_folder ".", "/vagrant"
-  config.vm.synced_folder "../lib/", "/vagrant/lib"
-
-  # Do a full system update and enable enforcing if needed
-  config.vm.provision 'shell', path: '../lib/baseline.sh'
-
-  # run our bootstrapping
-  config.vm.provision 'shell', path: 'bootstrap.sh'
-
-
-  #################
-  # FINAL CLEANUP #
-  #################
-
-  # set RSRESEAL to... anything if you want to snap an image of this box
-  # not setting the environment variable will cause the system to come
-  # up fully and not be in a resealable state
-  if ENV['RSRESEAL']
-    config.vm.provision 'shell', path: '../lib/system_reseal.sh'
-  end
-end