Add keystone middleware to devstack

Add the keystonemiddleware repository to devstack to support testing
with tempest and stable branches.

Change-Id: Ib635465e6568d9cd51d6e432ec8b8633a27d19ce
diff --git a/lib/keystone b/lib/keystone
index 69fba0f..e30d410 100644
--- a/lib/keystone
+++ b/lib/keystone
@@ -39,6 +39,7 @@
 KEYSTONE_AUTH_CACHE_DIR=${KEYSTONE_AUTH_CACHE_DIR:-/var/cache/keystone}
 KEYSTONE_WSGI_DIR=${KEYSTONE_WSGI_DIR:-/var/www/keystone}
 
+KEYSTONEMIDDLEWARE_DIR=$DEST/keystonemiddleware
 KEYSTONECLIENT_DIR=$DEST/python-keystoneclient
 
 # Set up additional extensions, such as oauth1, federation
@@ -438,6 +439,12 @@
     sudo install -D -m 0644 -o $STACK_USER {$KEYSTONECLIENT_DIR/tools/,/etc/bash_completion.d/}keystone.bash_completion
 }
 
+# install_keystonemiddleware() - Collect source and prepare
+function install_keystonemiddleware {
+    git_clone $KEYSTONEMIDDLEWARE_REPO $KEYSTONEMIDDLEWARE_DIR $KEYSTONEMIDDLEWARE_BRANCH
+    setup_install $KEYSTONEMIDDLEWARE_DIR
+}
+
 # install_keystone() - Collect source and prepare
 function install_keystone {
     # only install ldap if the service has been enabled
diff --git a/stack.sh b/stack.sh
index a7f6b2c..5dfe6eb 100755
--- a/stack.sh
+++ b/stack.sh
@@ -722,6 +722,9 @@
     install_heatclient
 fi
 
+# Install middleware
+install_keystonemiddleware
+
 git_clone $OPENSTACKCLIENT_REPO $OPENSTACKCLIENT_DIR $OPENSTACKCLIENT_BRANCH
 setup_develop $OPENSTACKCLIENT_DIR
 
diff --git a/stackrc b/stackrc
index a517fbb..52879b0 100644
--- a/stackrc
+++ b/stackrc
@@ -153,6 +153,10 @@
 KEYSTONECLIENT_REPO=${KEYSTONECLIENT_REPO:-${GIT_BASE}/openstack/python-keystoneclient.git}
 KEYSTONECLIENT_BRANCH=${KEYSTONECLIENT_BRANCH:-master}
 
+# keystone middleware
+KEYSTONEMIDDLEWARE_REPO=${KEYSTONEMIDDLEWARE_REPO:-${GIT_BASE}/openstack/keystonemiddleware.git}
+KEYSTONEMIDDLEWARE_BRANCH=${KEYSTONEMIDDLEWARE_BRANCH:-master}
+
 # compute service
 NOVA_REPO=${NOVA_REPO:-${GIT_BASE}/openstack/nova.git}
 NOVA_BRANCH=${NOVA_BRANCH:-master}