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 f497431..51e1cf7 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:
   - name: vnaasgui
     path: orchestration/xos_services/vnaas/xos/gui
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 be6d34b..0000000
--- a/profile_manifests/mock-ecord-global.yml
+++ /dev/null
@@ -1,83 +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
-  - vnaasglobal-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: vnaasgui
-    path: orchestration/xos_services/vnaas/xos/gui
-    extra_files:
-      - app/style/style.css
-      - mapconstants.js
-
-# paths defined in manifest/default.xml
-xos_services:
-  - name: onos
-    path: orchestration/xos_services/onos-service
-  - name: vnaas
-    path: orchestration/xos_services/vnaas
-
-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 be070cc..f94e86a 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
