Merge changes from topic 'var-overrides'
[fuel.git] / prototypes / sfc_tacker / poc.tacker-up.sh
index be647b4..caad3f8 100755 (executable)
@@ -27,6 +27,9 @@ CLIENT=$(echo python-python-tackerclient_*_all.deb)
 JSONRPC=$(echo python-jsonrpclib_*_all.deb)
 SERVER=$(echo python-tacker_*_all.deb)
 
+#fuel admin user name
+fadm="fadm"
+
 # Function checks whether crudini is available, if not - installs
 function chkCrudini () {
     if [[ ! -f '/usr/bin/crudini' ]]; then
@@ -55,6 +58,7 @@ ____EOF
 
 # Function setting up the build/deploy environment
 function envSetup () {
+    apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BCE5CC461FA22B08
     apt-get update
     apt-get install -y git python-pip python-all debhelper
     chkPPkg stdeb
@@ -87,7 +91,7 @@ function buildTackerServer () {
     fi
     cd $MYDIR
     rm -rf $MYREPO
-    git clone  -b 'SFC_brahmaputra' https://github.com/trozet/tacker.git $MYREPO
+    git clone  -b 'SFC_colorado' https://github.com/trozet/tacker.git $MYREPO
     cd $MYREPO
     patch -p  1 <<EOFSCP
 diff -ruN a/setup.cfg b/setup.cfg
@@ -133,13 +137,13 @@ function blessPackage () {
     dpkg-deb --control "$DEBFILE" "${TMPDIR}/DEBIAN"
     cd "$TMPDIR"
     patch -p 1 <<EOFDC
-diff -ruN a/DEBIAN/control b/DEBIAN/control
---- a/DEBIAN/control   2016-02-08 10:06:18.000000000 +0000
-+++ b/DEBIAN/control   2016-02-08 10:45:09.501373675 +0000
+diff -ruN DEBIAN/control DEBIAN/control
+--- a/DEBIAN/control      2016-08-19 11:53:10.000000000 +0000
++++ b/DEBIAN/control      2016-08-19 12:01:49.629096317 +0000
 @@ -4,7 +4,7 @@
  Architecture: all
  Maintainer: OpenStack <openstack-dev@lists.openstack.org>
- Installed-Size: 1575
+ Installed-Size: 1566
 -Depends: python (>= 2.7), python (<< 2.8), python:any (>= 2.7.1-0ubuntu2), python-pbr, python-paste, python-pastedeploy, python-routes, python-anyjson, python-babel, python-eventlet, python-greenlet, python-httplib2, python-requests, python-iso8601, python-jsonrpclib, python-jinja2, python-kombu, python-netaddr, python-sqlalchemy (>= 1.0~), python-sqlalchemy (<< 1.1), python-webob, python-heatclient, python-keystoneclient, alembic, python-six, python-stevedore, python-oslo.config, python-oslo.messaging-, python-oslo.rootwrap, python-novaclient
 +Depends: python (>= 2.7), python (<< 2.8), python:any (>= 2.7.1-0ubuntu2), python-pbr, python-paste, python-pastedeploy, python-routes, python-anyjson, python-babel, python-eventlet, python-greenlet, python-httplib2, python-requests, python-iso8601, python-jsonrpclib, python-jinja2, python-kombu, python-netaddr, python-sqlalchemy (>= 1.0~), python-sqlalchemy (<< 1.1), python-webob, python-heatclient, python-keystoneclient, alembic, python-six, python-stevedore, python-oslo.config, python-oslo.messaging, python-oslo.rootwrap, python-novaclient
  Section: python
@@ -239,15 +243,15 @@ function populate_client() {
     for anode in $clusternodes ; do
         if [ "$anode" != "$myaddr" ] ; then
             echo "Installing $CLIENT on $anode"
-            scp ${SSH_OPTIONS[@]} $CLIENT $anode:$CLIENT
-            ssh ${SSH_OPTIONS[@]} $anode dpkg -i $CLIENT
-            ssh ${SSH_OPTIONS[@]} $anode rm $CLIENT
+            scp ${SSH_OPTIONS[@]} -i "${MYDIR}/.ssh/id_rsa" ${CLIENT} ${fadm}@${anode}:${CLIENT}
+            ssh ${SSH_OPTIONS[@]} -i "${MYDIR}/.ssh/id_rsa" ${fadm}@${anode} sudo dpkg -i ${CLIENT}
+            ssh ${SSH_OPTIONS[@]} -i "${MYDIR}/.ssh/id_rsa" ${fadm}@${anode} rm ${CLIENT}
         fi
     done
 }
 
 # Function orchestrate the Tacker service
-function orchestarte () {
+function orchestrate () {
     rm -rf /etc/puppet/modules/tacker
     pushd /etc/puppet/modules
     git clone https://github.com/trozet/puppet-tacker.git tacker
@@ -262,12 +266,15 @@ function orchestarte () {
 
     auth_uri=$(crudini --get '/etc/heat/heat.conf' 'keystone_authtoken' 'auth_uri')
     identity_uri=$(crudini --get '/etc/heat/heat.conf' 'keystone_authtoken' 'identity_uri')
+    int_addr=$(ifconfig br-mesh | sed -n '/inet addr/s/.*addr.\([^ ]*\) .*/\1/p')
+    odl_addr=$(hiera management_vip)
     mgmt_addr=$(ifconfig br-mgmt | sed -n '/inet addr/s/.*addr.\([^ ]*\) .*/\1/p')
     pub_addr=$(ifconfig br-ex-lnx | sed -n '/inet addr/s/.*addr.\([^ ]*\) .*/\1/p')
     rabbit_host=$(crudini --get '/etc/heat/heat.conf' 'oslo_messaging_rabbit' 'rabbit_hosts'| cut -d ':' -f 1)
     rabbit_password=$(crudini --get '/etc/heat/heat.conf' 'oslo_messaging_rabbit' 'rabbit_password')
     sql_host=$(hiera database_vip)
     database_connection="mysql://tacker:tacker@${sql_host}/tacker"
+    internal_url="http://${int_addr}:${bind_port}"
     admin_url="http://${mgmt_addr}:${bind_port}"
     public_url="http://${pub_addr}:${bind_port}"
     heat_api_vip=$(crudini --get '/etc/heat/heat.conf' 'heat_api' 'bind_host')
@@ -296,7 +303,7 @@ function orchestarte () {
      rabbit_host           => '${rabbit_host}',
      rabbit_password       => '${rabbit_password}',
      heat_uri              => '${heat_uri}',
-     opendaylight_host     => '${mgmt_addr}',
+     opendaylight_host     => '${odl_addr}',
      opendaylight_port     => '${odl_port}',
    }
 
@@ -309,12 +316,17 @@ function orchestarte () {
      password            => '${myPassword}',
      tenant              => '${service_tenant}',
      admin_url           => '${admin_url}',
-     internal_url        => '${admin_url}',
+     internal_url        => '${internal_url}',
      public_url          => '${public_url}',
      region              => '${myRegion}',
    }
 EOF
 
+    apt-get install -y mysql-client-5.5
+    cat > /usr/bin/tacker-manage <<EOFAKEMANAGE
+#!/bin/bash
+EOFAKEMANAGE
+    chmod +x /usr/bin/tacker-manage
     puppet apply configure_tacker.pp
     rm -f tackerc
     cat > tackerc <<EOFRC
@@ -344,12 +356,13 @@ function populate_rc() {
     myaddr=$(ifconfig br-fw-admin | sed -n '/inet addr/s/.*addr.\([^ ]*\) .*/\1/p')
     for anode in $clusternodes ; do
         if [ "$anode" != "$myaddr" ] ; then
-            echo "Populating seetings to $anode"
-            scp ${SSH_OPTIONS[@]} tackerc $anode:tackerc
+            echo "Populating settings to $anode"
+            scp ${SSH_OPTIONS[@]} -i "${MYDIR}/.ssh/id_rsa" tackerc ${fadm}@${anode}:tackerc
         fi
     done
 }
 
+
 envSetup
 deployTackerClient
 deployJsonrpclib
@@ -357,9 +370,11 @@ buildTackerServer
 blessPackage
 deployTackerServer
 populate_client
-orchestarte
+orchestrate
 populate_rc
 
+git clone https://github.com/trozet/sfc-random.git
+
 remove_repo "$MYREPO"
 remove_repo "$DEPREPO"
 remove_repo "$CLIREPO"