[CORD-1569]
Clean up defaults files, removal of old gui config for documentation

Change-Id: I73a1c5bd0dedcfe09d817e4e5d59e1d5fca3c297
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index a83d3c4..0000000
--- a/LICENSE
+++ /dev/null
@@ -1,12 +0,0 @@
-Copyright 2014 The Trustees of Princeton University
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
diff --git a/README.md b/README.md
index 2404454..7cdd26d 100644
--- a/README.md
+++ b/README.md
@@ -5,68 +5,8 @@
 OpenStack, ONOS, and XOS.
 
 It is used as a sub-module of the [main CORD
-repository](https://github.com/opencord/cord), but can independently bring up
-various CORD profiles for development work.
-
-If you want to set up an entire CORD pod on physical hardware, or set up the
-Cord-in-a-Box deployment, you should start at the [CORD
 repository](https://github.com/opencord/cord).
 
-## Using platform-install for development
-
-### Bootstrapping your development environment
-
-There's a helper script,
-[scripts/cord-bootstrap.sh](https://github.com/opencord/platform-install/blob/master/scripts/cord-bootstrap.sh).
-that will install development environment prerequisites on a Ubuntu 14.04 node.
-You can download it with:
-
-```
-curl -o ~/cord-bootstrap.sh https://raw.githubusercontent.com/opencord/platform-install/master/scripts/cord-bootstrap.sh
-```
-
-Running the script will install the [repo](https://code.google.com/p/git-repo/)
-tool, [Ansible](https://docs.ansible.com/ansible/index.html), and
-[Docker](https://www.docker.com/), as well as make a checkout of the CORD
-[manifest](https://gerrit.opencord.org/gitweb?p=manifest.git;a=blob;f=default.xml)
-into `/opt/cord`.
-
-You can specify which gerrit changesets you would like repo to checkout using
-the `-b` option on the script [as documented
-here](https://github.com/opencord/cord/blob/master/docs/quickstart.md#using-cord-in-a-boxsh-to-download-development-code-from-gerrit).
-
-Once you have done this, if you're not already in the `docker` group, you
-should logout and log back into your system to refresh your user account's
-group membership. If you don't do this, any docker command you run or ansible
-runs for you will fail. You can check your group membership by running
-`groups`.
-
-Once you log back in, you may want to run `tmux` to maintain a server-side
-session you can reconnect to, in case of network trouble.
-
-All of the commands below assume you're in the `/opt/cord/build/platform-install` directory.
-
-### Creating a development environment on you machine
-
-If you are doing work that does not involve `openstack` you can create a
-development environment inside a VM on your local machine. This environment is
-mostly designed to do `GUI`, `APIs` and `modeling` related work. It can also be
-useful to test a `synchronizer` whose job is synchronizing data using REST
-APIs.
-
-To do that we provided a `Vagrant` VM.  From this folder just execute `vagrant
-up head-node`. We'll create an Ubuntu based VM with all the `cord` code shared
-from your local machine, so that you can make your changes locally and quickly
-test the outcome.
-
-Once the `vm` is created you can connect to it with `vagrant ssh head-node` and
-then from the `/opt/cord/build/platform-install` execute the profile you are
-interested in.  For instance you can spin up the `frontend` configuration with:
-`ansible-playbook -i inventory/frontend deploy-xos-playbook.yml`.
-
-_Note that the `cord-bootstrap.sh` script is automatically invoked by the
-provisioning script and the `vagrant` vm requires VirtualBox_
-
 ### Credentials
 
 Credentials will be autogenerated and placed in the `credentials/` directory
@@ -75,65 +15,11 @@
 
 For most profiles the XOS admin user is named `xosadmin@opencord.org`.
 
-### Development Loop
-
-Most profiles are run by specifying an inventory file when running
-`ansible-playbook`. For most frontend or mock profiles, you'll want to run the
-`deploy-xos-playbook.yml` playbook.
-
-For example, to run the `frontend` config, you would run:
-
-```
-ansible-playbook -i inventory/frontend deploy-xos-playbook.yml
-```
-
-Setting up the initial environment, and launching XOS for the first time,
-will take about 30 minutes.  You can then explore the environment you've set up.
-
-Suppose you've made a change to your code and want the changes reflected
-in the running XOS containers.  To get there, run:
-
-```
-ansible-playbook -i inventory/frontend redeploy-xos-playbook.yml
-```
-
-Rebuilding and redeploying containers using this method will usually take much
-less time than the initial setup phase.  All changes to the local environment's
-source tree should be reflected in the redeployed containers.  Note that
-running the above playbook will preserve the existing database.
-
-When you're ready to tear down your environment, for example to switch
-to another profile, or to launch the current profile again from a fresh
-database, run:
-
-```
-ansible-playbook -i inventory/frontend teardown-playbook.yml
-```
-
-This will destroy all the docker containers created.  Note that you must run the
-`teardown-playbook.yml` using the same inventory file it was created with,
-otherwise rogue docker containers may still be running after the teardown.
-
-You can then make changes to code and re-run the same or a different profile.
-
 ### Creating a new CORD profile
 
-To create a new CORD profile, you should:
-
-1. Create an inventory file in `inventory/` that defines the `cord_profile`
-   variable, with the name of your profile.
-
-```
-[all:vars]
-cord_profile=my-profile
-```
-
-2. Create a .yaml variables file in `profile_manifests/` with the name of your
-   profile (ex: `my-profile.yaml`), and populate it with your configuration.
-
-3. To test the profile, run the `deploy-xos-playbook.yml` playbook using your
-   inventory profile:
-   `ansible-playbook -i inventory/my-profile deploy-xos-playbook.yml`
+To create a new CORD profile, you should create a .yaml variables file in
+`profile_manifests/` with the name of your profile (ex: `my-profile.yaml`), and
+populate it with your configuration.
 
 ### Making changes and lint checking your changes
 
@@ -143,26 +29,6 @@
 
 ## Specific profiles notes
 
-### api-test
-
-This profile runs API tests for both the REST and TOSCA APIs. This can be done
-in an automated fashion:
-
-`ansible-playbook -i inventory/api-test api-test-playbook.yml`
-
-The XOS credentials in this config are `padmin@vicci.org` and `letmein` (until
-the tests are modified to support generated credentials).
-
-### frontend
-
-Builds a basic XOS frontend installation, useful for UI testing and
-experimentation.
-
-### mock-rcord, mock-mcord
-
-Builds a Mock R-CORD or Mock M-CORD pod, without running service synchronizers
-in a manner similar to frontend.
-
 ### opencloud
 
 Used as a part of the [OpenCloud](http://www.opencloud.us/) deployment. Similar
@@ -178,28 +44,13 @@
 Guide](https://github.com/opencord/cord/blob/master/docs/quickstart.md) for how
 to set up a virtual multi-node R-CORD pod on a single host.
 
-If you've already built a CiaB and want to go through the dev loop described
-above on the head/production node, when running `ansible-playbook` you must
-pass the path to the configuration file that was generated by Gradle during the
-build:
+### ecord
 
-```
-ansible-playbook -i inventory/head-localhost --extra-vars @../genconfig/config.yml playbook.yml
-```
+E-CORD description goes here.
 
-You may find the following shell aliases to be helpful during development:
+### mcord
 
-```
-alias xos-teardown="pushd /opt/cord/build/platform-install; ansible-playbook -i inventory/head-localhost --extra-vars @/opt/cord/build/genconfig/config.yml teardown-playbook.yml"
-alias xos-launch="pushd /opt/cord/build/platform-install; ansible-playbook -i inventory/head-localhost --extra-vars @/opt/cord/build/genconfig/config.yml launch-xos-playbook.yml"
-alias compute-node-refresh="pushd /opt/cord/build/platform-install; ansible-playbook -i /etc/maas/ansible/pod-inventory --extra-vars=@/opt/cord/build/genconfig/config.yml compute-node-refresh-playbook.yml"
-```
-
-With these aliases, tearing down XOS and rebuilding it from a fresh database becomes:
-
-```
-xos-teardown; xos-launch; compute-node-refresh
-```
+M-CORD description goes here.
 
 ## Design Notes for Developers
 
@@ -248,6 +99,6 @@
 more likely to indent and syntax highlight properly in most editors.
 
 Roles should always have the same outcome, so avoid using conditionals or tags
-to change the behavior of a role. 
-
+to change the behavior of a role. These features should only be used for
+avoiding time-consuming tasks in an idempotent manner.
 
diff --git a/Vagrantfile b/Vagrantfile
deleted file mode 100644
index 9cffcbe..0000000
--- a/Vagrantfile
+++ /dev/null
@@ -1,25 +0,0 @@
-Vagrant.configure("2") do |config|
-  # base image
-  config.vm.box = "ubuntu/trusty64"
-
-  # share the folder
-  config.vm.synced_folder "../../", "/opt/cord/", create: true
-  config.vm.synced_folder "./cord_profile/", "/opt/cord_profile/", create: true
-  config.vm.synced_folder ".", "/vagrant", disabled: true
-
-  # set the frontend vm
-  config.vm.define "head-node" do |d|
-    d.vm.network "private_network", ip: "192.168.46.100"
-    d.vm.provider "virtualbox" do |vb|
-      vb.memory = "2048"
-      vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
-      vb.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
-    end
-  end
-
-  config.vm.provision :shell, privileged: false, path: "./scripts/cord-bootstrap.sh"
-  config.vm.provision "ansible_local" do |ansible|
-    ansible.provisioning_path = "/opt/cord/build/platform-install"
-    ansible.playbook = "bootstrap-dev-env.yml"
-  end
-end
diff --git a/ansible.cfg b/ansible.cfg
index 073b1f5..0902052 100644
--- a/ansible.cfg
+++ b/ansible.cfg
@@ -5,5 +5,5 @@
 timeout=30
 
 [ssh_connection]
-ssh_args = -o ControlMaster=auto -o ControlPersist=15s
+ssh_args = -o ControlMaster=auto -o ControlPersist=15s -o ConnectionAttempts=20
 
diff --git a/deploy-openstack-playbook.yml b/deploy-openstack-playbook.yml
index 915f489..a806147 100644
--- a/deploy-openstack-playbook.yml
+++ b/deploy-openstack-playbook.yml
@@ -47,4 +47,4 @@
 - name: Configure Nova with DPDK-enabled flavors
   hosts: head
   roles:
-    - { role: setup-nova-dpdk, when: enable_dpdk | default(False) }
+    - { role: setup-nova-dpdk, when: use_dpdk | default(False) }
diff --git a/PLATFORM_INSTALL_INTERNALS.md b/docs/PLATFORM_INSTALL_INTERNALS.md
similarity index 100%
rename from PLATFORM_INSTALL_INTERNALS.md
rename to docs/PLATFORM_INSTALL_INTERNALS.md
diff --git a/group_vars/all b/group_vars/all
deleted file mode 100644
index 4f71380..0000000
--- a/group_vars/all
+++ /dev/null
@@ -1,3 +0,0 @@
----
-# file: group_vars/all
-ansible_ssh_common_args: "-o ConnectionAttempts=20"
\ No newline at end of file
diff --git a/inventory/devstack b/inventory/devstack
deleted file mode 100644
index 717a046..0000000
--- a/inventory/devstack
+++ /dev/null
@@ -1,8 +0,0 @@
-; devstack configuration
-
-[all:vars]
-cord_profile=devstack
-
-[head]
-localhost ansible_connection=local
-
diff --git a/inventory/localhost b/inventory/localhost
deleted file mode 100644
index 3dcd971..0000000
--- a/inventory/localhost
+++ /dev/null
@@ -1,6 +0,0 @@
-; localhost configuration
-; used for installing prereqs with cord-bootstrap.sh script
-
-[head]
-localhost ansible_connection=local
-
diff --git a/inventory/mock-ecord b/inventory/mock-ecord
deleted file mode 100644
index 0dae463..0000000
--- a/inventory/mock-ecord
+++ /dev/null
@@ -1,8 +0,0 @@
-; mock-ecord configuration
-
-[all:vars]
-cord_profile=mock-ecord
-
-[head]
-localhost ansible_connection=local
-
diff --git a/inventory/mock-ecord-global b/inventory/mock-ecord-global
deleted file mode 100644
index 05c8ed1..0000000
--- a/inventory/mock-ecord-global
+++ /dev/null
@@ -1,13 +0,0 @@
-; mock-ecord-global configuration
-
-[all:vars]
-cord_profile=mock-ecord-global
-
-[config]
-localhost ansible_connection=local
-
-[head]
-localhost ansible_connection=local
-
-[build]
-localhost ansible_connection=local
\ No newline at end of file
diff --git a/inventory/mock-mcord b/inventory/mock-mcord
deleted file mode 100644
index bc2d4d1..0000000
--- a/inventory/mock-mcord
+++ /dev/null
@@ -1,8 +0,0 @@
-; mock-mcord configuration
-
-[all:vars]
-cord_profile=mock-mcord
-
-[head]
-localhost ansible_connection=local
-
diff --git a/inventory/mock-rcord b/inventory/mock-rcord
deleted file mode 100644
index 5148c20..0000000
--- a/inventory/mock-rcord
+++ /dev/null
@@ -1,16 +0,0 @@
-; mock-rcord configuration
-
-[all:vars]
-cord_profile=mock-rcord
-
-[config]
-localhost ansible_connection=local
-
-[head]
-localhost ansible_connection=local
-
-[build]
-localhost ansible_connection=local
-
-[compute]
-
diff --git a/inventory/rcord-new b/inventory/rcord-new
deleted file mode 100644
index 92fb59c..0000000
--- a/inventory/rcord-new
+++ /dev/null
@@ -1,8 +0,0 @@
-; rcord configuration
-
-[all:vars]
-cord_profile=rcord-new
-
-[head]
-localhost ansible_connection=local
-
diff --git a/profile_manifests/ecord-global.yml b/profile_manifests/ecord-global.yml
index e44e4b5..39bad06 100644
--- a/profile_manifests/ecord-global.yml
+++ b/profile_manifests/ecord-global.yml
@@ -1,3 +1,4 @@
+---
 
 # Copyright 2017-present Open Networking Foundation
 #
@@ -13,15 +14,12 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-
----
 # profile_manifests/ecord-global.yml
 # E-CORD Profile Manifest
 
 # Site configuration
 site_name: mysite
 site_humanname: MySite
-# site_suffix: "{{ site_name }}.cord.lab"
 site_suffix: "cord.lab"
 deployment_type: MyDeployment
 
@@ -44,12 +42,6 @@
 gui_background: "cord-bg.jpg" # TODO find ecord image
 gui_payoff: "Your Enterprise VNF orchestrator"
 
-# GUI branding
-gui_branding_name: "ECORD"
-gui_branding_icon: "/static/cord-logo.png"
-gui_branding_favicon: "/static/cord-favicon.png"
-gui_branding_bg: "/static/cord-bg.jpg"
-
 enabled_gui_extensions: []
 
 # paths defined in manifest/default.xml
diff --git a/profile_manifests/ecord.yml b/profile_manifests/ecord.yml
index 4053e81..d793dfe 100644
--- a/profile_manifests/ecord.yml
+++ b/profile_manifests/ecord.yml
@@ -1,3 +1,4 @@
+---
 
 # Copyright 2017-present Open Networking Foundation
 #
@@ -13,8 +14,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-
----
 # profile_manifests/ecord.yaml
 # E-CORD Profile Manifest
 
@@ -46,12 +45,6 @@
 gui_background: "cord-bg.jpg" # TODO find ecord image
 gui_payoff: "Your Enterprise VNF orchestrator"
 
-# GUI branding
-gui_branding_name: "ECORD"
-gui_branding_icon: "/static/cord-logo.png"
-gui_branding_favicon: "/static/cord-favicon.png"
-gui_branding_bg: "/static/cord-bg.jpg"
-
 enabled_gui_extensions: []
 
 # paths defined in manifest/default.xml
diff --git a/profile_manifests/mcord.yml b/profile_manifests/mcord.yml
index ff9c35c..f94799a 100644
--- a/profile_manifests/mcord.yml
+++ b/profile_manifests/mcord.yml
@@ -1,3 +1,4 @@
+---
 
 # Copyright 2017-present Open Networking Foundation
 #
@@ -13,8 +14,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-
----
 # profile_manifests/mcord.yml
 # Configures an M-CORD pod
 
@@ -34,10 +33,6 @@
   - fabric-service.yaml
   - management-net.yaml
   - xos-gui-extensions.yml
-#  - mcord-services.yaml  # should unify this with services.yaml.j2 eventually
-# - public-net.yaml
-# - volt-devices.yaml
-# - vrouter.yaml
 
 xos_other_templates:
   - fabric-network-cfg.json
@@ -46,18 +41,7 @@
 gui_project_name: "M-CORD"
 gui_background: "cord-bg.jpg" # TODO find mcord image
 
-# GUI branding [OLD GUI to be removed]
-gui_branding_name: "MCORD"
-gui_branding_icon: "/static/mcord-logo.png"
-gui_branding_favicon: "/static/mcord-favicon.png"
-gui_branding_bg: "/static/mcord-bg.jpg"
-
 enabled_gui_extensions: []
-#enabled_gui_extensions:
-#  - name: vtr
-#    path: orchestration/xos_services/vtr/xos/gui
-#  - name: rcord
-#    path: orchestration/profiles/rcord/xos/gui
 
 # paths defined in manifest/default.xml
 xos_services:
@@ -75,23 +59,10 @@
   - name: fabric
     path: orchestration/xos_services/fabric
     synchronizer: true
-#  - name: vBBU
-#    path: orchestration/xos_services/vBBU
-#    keypair: mcord_rsa
-#    synchronizer: true
   - name: vmme
     path: orchestration/xos_services/vmme
     keypair: mcord_rsa
     synchronizer: true
-#  - name: vSGW
-#    path: orchestration/xos_services/vSGW
-#    keypair: mcord_rsa
-#    synchronizer: true
-#  - name: vPGWC
-#    path: orchestration/xos_services/vPGWC
-#    keypair: mcord_rsa
-#    synchronizer: true
-# needed onboarding synchronizer doesn't require service code to be present when started
   - name: exampleservice
     path: orchestration/xos_services/exampleservice
     keypair: exampleservice_rsa
@@ -101,8 +72,6 @@
     keypair: monitoringservice_rsa
     synchronizer: false
 
-# profile_library: "mcord"
-
 # SSL server certificate generation
 server_certs:
   - cn: "keystone.{{ site_suffix }}"
diff --git a/profile_manifests/mock-ecord-global.yml b/profile_manifests/mock-ecord-global.yml
deleted file mode 100644
index 91fa0be..0000000
--- a/profile_manifests/mock-ecord-global.yml
+++ /dev/null
@@ -1,82 +0,0 @@
-
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-
----
-# profile_manifests/mock-ecord.yml
-# creates a mock E-CORD pod
-
-site_name: mock-ecord
-deployment_type: "Mock E-CORD Global Pod"
-
-credentials_dir: "{{ playbook_dir }}/credentials"
-xos_admin_user: "xosadmin@opencord.org"
-xos_admin_pass: "{{ lookup('password', credentials_dir ~ '/xosadmin@opencord.org chars=ascii_letters,digits') }}"
-xos_admin_first: XOS
-xos_admin_last: Admin
-
-frontend_only: False
-use_openstack: False
-use_vtn: False
-needs_pki_install: True
-
-build_xos_base_image: True
-
-xos_tosca_config_templates:
-  - mock-onos.yaml
-  - vnodglobal-service.yaml
-  - xos-gui-extensions.yml
-
-# GUI Config [new GUI]
-gui_project_name: "E-CORD"
-gui_background: "cord-bg.jpg" # TODO find ecord image
-gui_payoff: "Your Enterprise VNF orchestrator"
-
-# GUI branding
-gui_branding_name: "ECORD"
-gui_branding_icon: "/static/cord-logo.png"
-gui_branding_favicon: "/static/cord-favicon.png"
-gui_branding_bg: "/static/cord-bg.jpg"
-
-enabled_gui_extensions:
-  - name: metro-net-gui
-    path: orchestration/xos_services/metro-net/xos/gui
-    extra_files:
-      - app/style/style.css
-
-# paths defined in manifest/default.xml
-xos_services:
-  - name: onos
-    path: orchestration/xos_services/onos-service
-  - name: metro-net
-    path: orchestration/xos_services/metro-net
-
-xos_service_sshkeys:
-  - name: onos_rsa
-    source_path: "/dev/null"
-  - name: onos_rsa.pub
-    source_path: "/dev/null"
-
-# site domain suffix
-site_suffix: opencord.org
-
-# SSL server certificate generation
-server_certs:
-  - cn: "xos-core.{{ site_suffix }}"
-    subj: "/C=US/ST=California/L=Menlo Park/O=ON.Lab/OU=Test Deployment/CN=xos-core.{{ site_suffix }}"
-    altnames:
-      - "DNS:xos-core.{{ site_suffix }}"
-
-xos_images: []
\ No newline at end of file
diff --git a/profile_manifests/mock-ecord.yml b/profile_manifests/mock-ecord.yml
deleted file mode 100644
index 7c10dc8..0000000
--- a/profile_manifests/mock-ecord.yml
+++ /dev/null
@@ -1,96 +0,0 @@
-
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-
----
-# profile_manifests/mock-ecord.yml
-# creates a mock E-CORD pod
-
-site_name: mock-ecord
-deployment_type: "Mock E-CORD Pod"
-
-credentials_dir: "{{ playbook_dir }}/credentials"
-xos_admin_user: "xosadmin@opencord.org"
-xos_admin_pass: "{{ lookup('password', credentials_dir ~ '/xosadmin@opencord.org chars=ascii_letters,digits') }}"
-xos_admin_first: XOS
-xos_admin_last: Admin
-
-frontend_only: False
-use_openstack: False
-use_vtn: False
-needs_pki_install: True
-
-build_xos_base_image: True
-
-xos_tosca_config_templates:
-  - management-net.yaml
-  - mock-onos.yaml
-#  - vtn-service.yaml # rimosso
-#  - fabric-service.yaml # rimosso
-  - ecord-services.yaml
-  - vee-service.yaml
-  - xos-gui-extensions.yml
-
-# GUI Config [new GUI]
-gui_project_name: "E-CORD"
-gui_background: "cord-bg.jpg" # TODO find ecord image
-gui_payoff: "Your Enterprise VNF orchestrator"
-
-# GUI branding
-gui_branding_name: "ECORD"
-gui_branding_icon: "/static/cord-logo.png"
-gui_branding_favicon: "/static/cord-favicon.png"
-gui_branding_bg: "/static/cord-bg.jpg"
-
-# paths defined in manifest/default.xml
-xos_services:
-  - name: openstack
-    path: orchestration/xos_services/openstack
-  - name: onos
-    path: orchestration/xos_services/onos-service
-  - name: vtn
-    path: orchestration/xos_services/vtn-service
-  - name: fabric
-    path: orchestration/xos_services/fabric
-  - name: vrouter
-    path: orchestration/xos_services/vrouter
-  - name: veg
-    path: orchestration/xos_services/vEG
-  - name: vnodlocal
-    path: orchestration/xos_services/metronet-local
-  - name: vee
-    path: orchestration/xos_services/vEE
-
-xos_service_sshkeys:
-  - name: onos_rsa
-    source_path: "/dev/null"
-  - name: onos_rsa.pub
-    source_path: "/dev/null"
-  - name: veg_rsa
-    source_path: "/dev/null"
-  - name: veg_rsa.pub
-    source_path: "/dev/null"
-
-# site domain suffix
-site_suffix: opencloud.us
-
-# SSL server certificate generation
-server_certs:
-  - cn: "xos-core.{{ site_suffix }}"
-    subj: "/C=US/ST=California/L=Menlo Park/O=ON.Lab/OU=Test Deployment/CN=xos-core.{{ site_suffix }}"
-    altnames:
-      - "DNS:xos-core.{{ site_suffix }}"
-
-xos_images: []
\ No newline at end of file
diff --git a/profile_manifests/mock-mcord.yml b/profile_manifests/mock-mcord.yml
deleted file mode 100644
index 42b21d5..0000000
--- a/profile_manifests/mock-mcord.yml
+++ /dev/null
@@ -1,76 +0,0 @@
-
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-
----
-# vars/mock-mcord.yaml
-# creates a mock MCORD pod
-
-site_name: mock-mcord
-deployment_type: "Mock M-CORD Pod"
-
-credentials_dir: "{{ playbook_dir }}/credentials"
-xos_admin_user: "xosadmin@opencord.org"
-xos_admin_pass: "{{ lookup('password', credentials_dir ~ '/xosadmin@opencord.org chars=ascii_letters,digits') }}"
-xos_admin_first: XOS
-xos_admin_last: Admin
-
-frontend_only: True
-use_openstack: False
-use_vtn: False
-needs_pki_install: True
-
-build_xos_base_image: True
-
-xos_tosca_config_templates:
-  - sample.yaml
-  - management-net.yaml
-  - mock-mcord.yaml
-  - xos-gui-extensions.yml
-
-# GUI Config [new GUI]
-gui_project_name: "M-CORD"
-gui_payoff: "Your way toward 5G"
-gui_routes:
-  - label: "Slices"
-    state: "xos.core.slice"
-  - label: "Nodes"
-    state: "xos.core.node"
-  - label: "Instances"
-    state: "xos.core.instance"
-  - label: "MCORD"
-    state: "xos.mcord"
-  - label: "Topology"
-    state: "xos.mcord.topology"
-    parent: "xos.mcord"
-
-# GUI branding
-gui_branding_name: "M-CORD"
-gui_branding_icon: "/static/cord-logo.png"
-gui_branding_favicon: "/static/cord-favicon.png"
-gui_branding_bg: "/static/mcord-bg.jpg"
-gui_service_view_class: "core.views.mCordServiceGrid.ServiceGridView"
-
-# site domain suffix
-site_suffix: opencloud.us
-
-# SSL server certificate generation
-server_certs:
-  - cn: "xos-core.{{ site_suffix }}"
-    subj: "/C=US/ST=California/L=Menlo Park/O=ON.Lab/OU=Test Deployment/CN=xos-core.{{ site_suffix }}"
-    altnames:
-      - "DNS:xos-core.{{ site_suffix }}"
-
-xos_images: []
\ No newline at end of file
diff --git a/profile_manifests/mock-rcord.yml b/profile_manifests/mock-rcord.yml
deleted file mode 100644
index a714b1a..0000000
--- a/profile_manifests/mock-rcord.yml
+++ /dev/null
@@ -1,108 +0,0 @@
-
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-
----
-# vars/frontend-rcord.yaml
-# creates a mock R-CORD pod
-
-site_name: mock-rcord
-deployment_type: "Mock R-CORD Pod"
-
-xos_admin_user: "xosadmin@opencord.org"
-xos_admin_pass: "{{ lookup('password', credentials_dir ~ '/xosadmin@opencord.org chars=ascii_letters,digits') }}"
-xos_admin_first: XOS
-xos_admin_last: Admin
-
-credentials_dir: "{{ playbook_dir }}/credentials"
-
-frontend_only: True
-use_openstack: False
-use_vtn: True
-needs_pki_install: True
-
-build_xos_base_image: True
-
-xos_tosca_config_templates:
-  - management-net.yaml
-  - mock-onos.yaml
-  - cord-services.yaml
-  - public-net.yaml
-    #  - test-subscriber.yaml # broken? Missing lan_network config on vOLT ?
-  - xos-gui-extensions.yml
-
-# GUI Config [new GUI]
-gw_port: 3000
-gui_api_endpoint: "/xosapi/v1"
-gui_websocket: "/"
-gui_project_name: "R-CORD"
-gui_favicon: "cord-favicon.png"
-gui_background: "cord-bg.jpg"
-gui_payoff: "Your VNF orchestrator"
-gui_logo: "cord-logo.png"
-gui_routes:
-  - label: "Slices"
-    state: "xos.core.slice"
-  - label: "Nodes"
-    state: "xos.core.node"
-  - label: "Instances"
-    state: "xos.core.instance"
-
-enabled_gui_extensions:
-  - name: vtr
-    path: orchestration/xos_services/vtr/xos/gui
-  - name: rcord
-    path: orchestration/profiles/rcord/xos/gui
-
-# GUI branding [OLD GUI to be removed]
-gui_branding_name: "CORD"
-gui_branding_icon: "/static/cord-logo.png"
-gui_branding_favicon: "/static/cord-favicon.png"
-gui_branding_bg: "/static/cord-bg.jpg"
-
-# paths defined in manifest/default.xml
-xos_services:
-  - name: volt
-    path: orchestration/xos_services/olt-service
-    keypair: volt_rsa
-  - name: onos
-    path: orchestration/xos_services/onos-service
-    keypair: onos_rsa
-  - name: vrouter
-    path: orchestration/xos_services/vrouter
-  - name: addressmanager
-    path: orchestration/xos_services/addressmanager
-  - name: vsg
-    path: orchestration/xos_services/vsg
-    keypair: vsg_rsa
-  - name: vtr
-    path: orchestration/xos_services/vtr
-    keypair: vsg_rsa
-  - name: fabric
-    path: orchestration/xos_services/fabric
-
-profile_library: "rcord"
-
-# site domain suffix
-site_suffix: opencord.org
-
-# SSL server certificate generation
-server_certs:
-  - cn: "xos-core.{{ site_suffix }}"
-    subj: "/C=US/ST=California/L=Menlo Park/O=ON.Lab/OU=Test Deployment/CN=xos-core.{{ site_suffix }}"
-    altnames:
-      - "DNS:xos-core.{{ site_suffix }}"
-
-xos_images: []
\ No newline at end of file
diff --git a/profile_manifests/rcord.yml b/profile_manifests/rcord.yml
index c68ef8a..eecae0a 100644
--- a/profile_manifests/rcord.yml
+++ b/profile_manifests/rcord.yml
@@ -1,3 +1,4 @@
+---
 
 # Copyright 2017-present Open Networking Foundation
 #
@@ -13,8 +14,6 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-
----
 # profile_manifests/rcord.yml
 # R-CORD Profile Manifest
 
@@ -42,12 +41,6 @@
 xos_other_templates:
   - fabric-network-cfg.json
 
-# GUI branding [OLD GUI to be removed]
-gui_branding_name: "CORD"
-gui_branding_icon: "/static/cord-logo.png"
-gui_branding_favicon: "/static/cord-favicon.png"
-gui_branding_bg: "/static/cord-bg.jpg"
-
 enabled_gui_extensions:
   - name: vtr
     path: orchestration/xos_services/vtr/xos/gui
diff --git a/roles/compute-node-enable-maas/defaults/main.yml b/roles/compute-node-enable-maas/defaults/main.yml
index 5335970..62cedcb 100644
--- a/roles/compute-node-enable-maas/defaults/main.yml
+++ b/roles/compute-node-enable-maas/defaults/main.yml
@@ -1,3 +1,4 @@
+---
 
 # Copyright 2017-present Open Networking Foundation
 #
@@ -13,14 +14,11 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-
----
 # compute-node-enable-maas/defaults/main.yml
 
-credentials_dir: "/opt/credentials"
 head_cord_profile_dir: "/opt/cord_profile"
 
 xos_admin_user: "xosadmin@opencord.org"
-xos_admin_pass: "{{ lookup('password', credentials_dir ~ '/xosadmin@opencord.org chars=ascii_letters,digits') }}"
+maas_xos_admin_pass: "{{ lookup('file', '/opt/credentials/xosadmin@opencord.org') }}"
 
 xos_ui_port: 9000
diff --git a/roles/compute-node-enable-maas/tasks/main.yml b/roles/compute-node-enable-maas/tasks/main.yml
index 135d882..5a00ad8 100644
--- a/roles/compute-node-enable-maas/tasks/main.yml
+++ b/roles/compute-node-enable-maas/tasks/main.yml
@@ -33,7 +33,7 @@
   xostosca:
     url: "http://xos.{{ site_suffix }}:{{ xos_ui_port }}/api/utility/tosca/run/"
     user: "{{ xos_admin_user }}"
-    password:  "{{ xos_admin_pass }}"
+    password:  "{{ maas_xos_admin_pass }}"
     recipe: "{{ lookup('file', '/tmp/' + item ) }}"
   with_items:
     - openstack.yaml
@@ -47,7 +47,7 @@
   xostosca:
     url: "http://xos.{{ site_suffix }}:{{ xos_ui_port }}/api/utility/tosca/run/"
     user: "{{ xos_admin_user }}"
-    password:  "{{ xos_admin_pass }}"
+    password:  "{{ maas_xos_admin_pass }}"
     recipe: "{{ lookup('file', '/tmp/' + item ) }}"
   with_items:
     - vtn-service.yaml
diff --git a/roles/cord-profile/defaults/main.yml b/roles/cord-profile/defaults/main.yml
index 8612e86..4a3af66 100644
--- a/roles/cord-profile/defaults/main.yml
+++ b/roles/cord-profile/defaults/main.yml
@@ -93,14 +93,6 @@
   - label: "Instances"
     state: "xos.core.instance"
 
-# GUI branding, used in xos_common_config.j2
-disable_minidashboard: "True"
-gui_branding_name: "OpenCloud"
-gui_branding_icon: "/static/logo.png"
-gui_branding_favicon: "/static/favicon.png"
-gui_branding_bg: "/static/bg.jpg"
-gui_service_view_class: False
-
 # used in admin-openrc.sh.j2
 keystone_admin_password: "{{ lookup('password', credentials_dir ~ '/cord_keystone_admin chars=ascii_letters,digits') }}"
 
diff --git a/roles/juju-setup/defaults/main.yml b/roles/juju-setup/defaults/main.yml
index 882473d..0802ced 100644
--- a/roles/juju-setup/defaults/main.yml
+++ b/roles/juju-setup/defaults/main.yml
@@ -1,3 +1,4 @@
+---
 
 # Copyright 2017-present Open Networking Foundation
 #
@@ -13,10 +14,8 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-
----
 # juju-setup/defaults/main.yml
-
+#
 # note: juju_config_path and charm_versions are also set in
 # `juju-compute-setup/defaults/main.yml`.  Keep these in sync.
 
@@ -31,7 +30,7 @@
 
 keystone_admin_password: "{{ lookup('password', credentials_dir ~ '/cord_keystone_admin chars=ascii_letters,digits') }}"
 
-enable_dpdk: False
+use_dpdk: False
 vcpu_pin_set: "^0,^2"
 hugepages: "60%"
 dpdk_socket_memory: "1024,0"
diff --git a/roles/juju-setup/templates/juju_config.yml.j2 b/roles/juju-setup/templates/juju_config.yml.j2
index cd6b929..f3db2ae 100644
--- a/roles/juju-setup/templates/juju_config.yml.j2
+++ b/roles/juju-setup/templates/juju_config.yml.j2
@@ -1,4 +1,4 @@
-
+---
 {#
 Copyright 2017-present Open Networking Foundation
 
@@ -15,8 +15,6 @@
 limitations under the License.
 #}
 
-
----
 # juju configuration file for CORD deployments
 
 ceilometer:
@@ -49,7 +47,7 @@
   onos-vtn-port: 8182
   neutron-security-groups: "True"
   overlay-network-type: vxlan
-  {% if enable_dpdk -%}
+  {% if use_dpdk -%}
   onos-vtn-branch: cord-2.0-dpdk-kilo
   {% endif %}
 
@@ -60,7 +58,7 @@
   config-flags: "force_config_drive=always"
   console-access-protocol: novnc
   network-manager: Neutron
-  {% if enable_dpdk -%}
+  {% if use_dpdk -%}
   scheduler-default-filters: "RetryFilter,AvailabilityZoneFilter,CoreFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ServerGroupAntiAffinityFilter,ServerGroupAffinityFilter,NUMATopologyFilter"
   {% endif %}
 
@@ -68,7 +66,7 @@
   openstack-origin: "cloud:trusty-kilo"
   virt-type: kvm
   disable-neutron-security-groups: "True"
-  {% if enable_dpdk -%}
+  {% if use_dpdk -%}
   config-flags: "firewall_driver=nova.virt.firewall.NoopFirewallDriver,vcpu_pin_set={{ vcpu_pin_set }}"
   enable-dpdk: True
   hugepages: "{{ hugepages }}"
diff --git a/roles/onos-fabric-install/defaults/main.yml b/roles/onos-fabric-install/defaults/main.yml
index 775ab97..2551ed6 100644
--- a/roles/onos-fabric-install/defaults/main.yml
+++ b/roles/onos-fabric-install/defaults/main.yml
@@ -18,7 +18,7 @@
 # onos-fabric-install/defaults/main.yml
 
 # paths
-head_onos_fabric_dir: "/opt/onos_fabric/"
+head_onos_fabric_dir: "/opt/onos_fabric"
 
 # ONOS docker image to use
 pull_docker_registry: ""
diff --git a/roles/onos-fabric-install/tasks/main.yml b/roles/onos-fabric-install/tasks/main.yml
index f664550..b6bd712 100644
--- a/roles/onos-fabric-install/tasks/main.yml
+++ b/roles/onos-fabric-install/tasks/main.yml
@@ -41,5 +41,6 @@
 
 - name: Start ONOS for fabric
   docker_service:
+    project_name: "onosfabric"
     project_src: "{{ head_onos_fabric_dir }}"
 
diff --git a/roles/teardown-onos/defaults/main.yml b/roles/teardown-onos/defaults/main.yml
new file mode 100644
index 0000000..abab6d0
--- /dev/null
+++ b/roles/teardown-onos/defaults/main.yml
@@ -0,0 +1,20 @@
+---
+# Copyright 2017-present Open Networking Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# teardown-onos/defaults/main.yml
+
+head_onos_cord_dir: "/opt/onos_cord"
+head_onos_fabric_dir: "/opt/onos_fabric"
+
diff --git a/roles/teardown-onos/tasks/main.yml b/roles/teardown-onos/tasks/main.yml
new file mode 100644
index 0000000..5d12823
--- /dev/null
+++ b/roles/teardown-onos/tasks/main.yml
@@ -0,0 +1,37 @@
+---
+# Copyright 2017-present Open Networking Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# teardown-onos/tasks/main.yml
+#
+# Destroys the ONOS containers
+# NOTE: ignoring errors so that incomplete builds can be removed
+
+- name: Stop and remove onos-cord containers
+  docker_service:
+    project_name: "onoscord"
+    project_src: "{{ head_onos_cord_dir }}"
+    state: absent
+    remove_images: local
+  ignore_errors: yes
+
+- name: Stop and remove onos-fabric containers
+  when: use_fabric
+  docker_service:
+    project_name: "onosfabric"
+    project_src: "{{ head_onos_fabric_dir }}"
+    state: absent
+    remove_images: local
+  ignore_errors: yes
+
diff --git a/roles/test-exampleservice/defaults/main.yml b/roles/test-exampleservice/defaults/main.yml
index 8550ade..c6c615f 100644
--- a/roles/test-exampleservice/defaults/main.yml
+++ b/roles/test-exampleservice/defaults/main.yml
@@ -1,4 +1,4 @@
-
+---
 # Copyright 2017-present Open Networking Foundation
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
@@ -13,15 +13,12 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-
----
 # test-exampleservice/defaults/main.yml
 
 head_cord_profile_dir: "/opt/cord_profile"
-credentials_dir: "/opt/credentials"
 
 xos_ui_port: 9000
 
 xos_admin_user: "xosadmin@opencord.org"
-xos_admin_pass: "{{ lookup('password', credentials_dir ~ '/xosadmin@opencord.org chars=ascii_letters,digits') }}"
+maas_xos_admin_pass: "{{ lookup('file', '/opt/credentials/xosadmin@opencord.org') }}"
 
diff --git a/roles/test-exampleservice/tasks/main.yml b/roles/test-exampleservice/tasks/main.yml
index 865631c..168697f 100644
--- a/roles/test-exampleservice/tasks/main.yml
+++ b/roles/test-exampleservice/tasks/main.yml
@@ -22,7 +22,7 @@
   xostosca:
     url: "http://xos.{{ site_suffix }}:{{ xos_ui_port }}/api/utility/tosca/run/"
     user: "{{ xos_admin_user }}"
-    password:  "{{ xos_admin_pass }}"
+    password:  "{{ maas_xos_admin_pass }}"
     recipe: "{{ lookup('file', head_cord_profile_dir + '/test-exampleservice.yaml' ) }}"
 
 - name: Wait for ExampleService VM to come up
diff --git a/scripts/cleanup.sh b/scripts/clean_openstack.sh
similarity index 97%
rename from scripts/cleanup.sh
rename to scripts/clean_openstack.sh
index 22ea636..051a141 100755
--- a/scripts/cleanup.sh
+++ b/scripts/clean_openstack.sh
@@ -29,7 +29,7 @@
   neutron net-delete $NETWORK
 }
 
-source ./admin-openrc.sh
+source /opt/cord_profile/admin-openrc.sh
 
 echo "Deleting VMs"
 # Delete all VMs
diff --git a/scripts/cord-bootstrap.sh b/scripts/cord-bootstrap.sh
deleted file mode 100644
index 8a4e7b8..0000000
--- a/scripts/cord-bootstrap.sh
+++ /dev/null
@@ -1,145 +0,0 @@
-
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-
-#!/usr/bin/env bash
-# cord-bootstrap.sh
-# Bootstraps environment and downloads CORD repos
-
-set -e
-set -x
-
-CORDDIR=/opt/cord
-
-function bootstrap() {
-
-  if [ ! -x "/usr/bin/ansible" ]
-  then
-    echo "Installing Ansible..."
-    sudo apt-get update
-    sudo apt-get install -y software-properties-common
-    sudo apt-add-repository -y ppa:ansible/ansible
-    sudo apt-get update
-    sudo apt-get -y install python-dev libffi-dev python-pip libssl-dev sshpass python-netaddr ansible
-    sudo pip install markupsafe
-  fi
-
-  if [ ! -x "/usr/local/bin/repo" ]
-  then
-    echo "Installing repo..."
-    REPO_SHA256SUM="e147f0392686c40cfd7d5e6f332c6ee74c4eab4d24e2694b3b0a0c037bf51dc5"
-    curl -o /tmp/repo https://storage.googleapis.com/git-repo-downloads/repo
-    echo "$REPO_SHA256SUM  /tmp/repo" | sha256sum -c -
-    sudo mv /tmp/repo /usr/local/bin/repo
-    sudo chmod a+x /usr/local/bin/repo
-  fi
-
-  if [ ! -d "$CORDDIR" ]
-  then
-    echo "Downloading CORD/XOS..."
-
-    if [ ! -e "~/.gitconfig" ]
-    then
-      echo "No ~/.gitconfig, setting testing defaults"
-      git config --global user.name 'Test User'
-      git config --global user.email 'test@null.com'
-      git config --global color.ui false
-    fi
-
-    mkdir $CORDDIR && cd $CORDDIR
-    repo init -u https://gerrit.opencord.org/manifest -b master
-    repo sync
-
-    # check out gerrit branches using repo
-    for gerrit_branch in ${GERRIT_BRANCHES[@]}; do
-      echo "checking out opencord gerrit branch: $gerrit_branch"
-      repo download ${gerrit_branch/:/ }
-    done
-  fi
-
-  if [ ! -x "/usr/bin/docker" ]
-  then
-    echo "Installing Devel Tools..."
-    cd ${CORDDIR}/build/platform-install
-    ansible-playbook -i inventory/localhost devel-tools-playbook.yml
-  fi
-
-  set +x
-  echo "*******************************************************************************"
-  echo "*  IMPORTANT: Logout and login so your account is added to the docker group!  *"
-  echo "*   Then 'cd ${CORDDIR}/build/platform-install' and start your CORD profile.  *"
-  echo "*        Need help?  Check out the wiki at: https://wiki.opencord.org/        *"
-  echo "*******************************************************************************"
-
-}
-
-function cleanup() {
-  if [ ! -x "/usr/bin/ansible" ]
-  then
-    echo "Ansible not installed, can't cleanup. Is this the initial run?"
-  else
-    echo "Cleaning up - destroying docker containers..."
-    cd ${CORDDIR}/build/platform-install
-    ansible-playbook -i inventory/localhost teardown-playbook.yaml
-  fi
-}
-
-function cord_profile() {
-  echo "Running a profile is broken due to docker group membership issue"
-}
-
-# options that may be set by getopt
-GERRIT_BRANCHES=
-CLEANUP=0
-CORD_PROFILE=""
-
-while getopts "b:hcp:" opt; do
-  case ${opt} in
-    b ) GERRIT_BRANCHES+=("$OPTARG")
-      ;;
-    c ) CLEANUP=1
-      ;;
-    h ) echo "Usage:"
-      echo "    $0                prep system to run a CORD profile"
-      echo "    $0 -b <project:changeset/revision>  checkout a changesets from gerrit. Can"
-      echo "                      be used multiple times."
-      echo "    $0 -c             cleanup from previous test"
-      echo "    $0 -p <profile>   prep then start running the specified profile"
-      echo "    $0 -h             display this help message"
-      exit 0
-      ;;
-    p ) CORD_PROFILE=$OPTARG
-      ;;
-    \? ) echo "Invalid option: -$OPTARG"
-      exit 1
-      ;;
-  esac
-done
-
-# "main" function
-if [[ $CLEANUP -eq 1 ]]
-then
-  cleanup
-fi
-
-bootstrap
-
-if [[ $CORD_PROFILE -ne "" ]]
-then
-  set -x
-  cord_profile
-fi
-
-exit 0