You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ud...@apache.org on 2013/12/11 05:40:21 UTC

git commit: Update Stratos Installer to support Stratos Manager STRATOS-243

Updated Branches:
  refs/heads/master 5ec222424 -> d56fb769c


Update Stratos Installer to support Stratos Manager
STRATOS-243


Project: http://git-wip-us.apache.org/repos/asf/incubator-stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-stratos/commit/d56fb769
Tree: http://git-wip-us.apache.org/repos/asf/incubator-stratos/tree/d56fb769
Diff: http://git-wip-us.apache.org/repos/asf/incubator-stratos/diff/d56fb769

Branch: refs/heads/master
Commit: d56fb769c58810ef732e23ed96bb61ad1cd08807
Parents: 5ec2224
Author: Udara Liyanage <ud...@wso2.com>
Authored: Wed Dec 11 10:08:18 2013 -0500
Committer: Udara Liyanage <ud...@wso2.com>
Committed: Wed Dec 11 10:08:18 2013 -0500

----------------------------------------------------------------------
 tools/stratos-installer/conf/setup.conf         |  80 +-
 .../stratos-installer/config/sc/bin/stratos.sh  | 301 --------
 .../config/sc/repository/conf/axis2/axis2.xml   | 724 -------------------
 .../repository/conf/cartridge-config.properties |  23 +-
 .../sc/repository/conf/etc/logging-config.xml   |  40 -
 .../config/sc/repository/conf/log4j.properties  | 171 -----
 tools/stratos-installer/setup.sh                | 231 ++----
 tools/stratos-installer/start-servers.sh        |   2 +-
 8 files changed, 109 insertions(+), 1463 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/d56fb769/tools/stratos-installer/conf/setup.conf
----------------------------------------------------------------------
diff --git a/tools/stratos-installer/conf/setup.conf b/tools/stratos-installer/conf/setup.conf
index 0e75ca3..740a921 100644
--- a/tools/stratos-installer/conf/setup.conf
+++ b/tools/stratos-installer/conf/setup.conf
@@ -30,6 +30,7 @@
 # ----------------------------------------------------------------------------
 
 
+# ----------------------------------------------------------------------------
 # General configuration
 # ----------------------------------------------------------------------------
 export setup_path= #Folder path containing stratos_setup
@@ -39,10 +40,33 @@ export stratos_path= #Folder which stratos will be installed
 export JAVA_HOME= #Java home path
 
 export log_path=/var/log/apache-stratos
-export hostip="ip" #Machine ip on which setup script run
+
 export host_user="" #A host user account for stratos. If not provided deafult is assumed stratos. If no account #named stratos exist it will be created.
-export mysql_connector_jar=$stratos_pack_path/"mysql-connector-java-5.1.25.jar" #mysql connector jar file name
+
 export stratos_domain="stratos.apache.org"
+
+export mb_ip="mb-ip"	# Machine ip on which mb run
+export cep_ip="cep-ip"	# Machine ip on which cep run
+export cc_ip="cc-ip" 	# Machine ip on which cc run
+export as_ip="as-ip"	# Machine ip on which auto scalar run
+export sm_ip="sc-ip"	# Machine ip on which sc run
+
+export cc_port_offset=1
+export sm_port_offset=2
+export as_port_offset=3
+export cep_port_offset=4
+export mb_port_offset=5
+
+export mb_hostname="mb.$stratos_domain"
+export cep_hostname="cep.$stratos_domain"
+export sm_hostname="$stratos_domain"
+export cc_hostname="cc.$stratos_domain"
+export lb_hostname="lb.$stratos_domain"
+export as_hostname="as.$stratos_domain"
+
+
+export mysql_connector_jar=$stratos_pack_path/"mysql-connector-java-5.1.25.jar" #mysql connector jar file name
+
 export resource_path=$setup_path/resources
 export script_path=$setup_path/scripts
 
@@ -52,10 +76,10 @@ export script_path=$setup_path/scripts
 export mb_path=$stratos_path/"wso2mb-2.1.0"
 export mb_pack=$stratos_pack_path/"wso2mb-2.1.0.zip"
 
-export mb_hostname=mb.$stratos_domain
-export mb_port_offset=5
+
+
 export mb_listen_port=$((5672 + $mb_port_offset))
-export mb_ip="mb-ip" # Machine ip on which mb run
+
 
 
 # CEP configuration
@@ -66,10 +90,10 @@ export cep_extension_jar=$stratos_pack_path/"org.apache.stratos.cep.extension-1.
 export cep_path=$stratos_path/"wso2cep-3.0.0"
 export cep_pack=$stratos_pack_path/"wso2cep-3.0.0.zip"
 
-export cep_hostname=cep.$stratos_domain
-export cep_port_offset=4
+
+
 export cep_listen_port=$((7611 + $cep_port_offset))
-export cep_ip="cep-ip" # Machine ip on which cep run
+
 
 
 # SC configuration
@@ -89,14 +113,13 @@ export stratos_foundation_db_port="3306"
 export stratos_foundation_db_user="root"
 export stratos_foundation_db_pass="mysql"
 
-export sc_https_port="9445"
-export sc_http_port="9765"
-export sc_port_offset=2
-export sc_hostname="$stratos_domain"
-export elb_ip="elb ip" #Machine ip on which elb run
+
+
+
+export sc_https_port=$((9443 + $sc_port_offset))
+export sc_http_port=$((9763 + $sc_port_offset))
+
 export cassandra_port="9163"
-export sc_ip=$hostip
-export agent_ip="agent ip" #Machine ip on which agent run
 export keypair_path="<keypair_path>"
 
 # Git repo cofiguration. This will be needed only if you need to setup an internal git repo.
@@ -115,9 +138,10 @@ export axis2c_pack="axis2-1.6.2-bin.zip"
 export cc_path=$stratos_path/"apache-stratos-cc-4.0.0-SNAPSHOT"
 export cc_pack=$stratos_pack_path/"apache-stratos-cc-4.0.0-SNAPSHOT.zip"
 
-export cc_hostname="cc.$stratos_domain"
-export cc_port_offset=1
+
+
 export cc_https_port=$((9443 + $cc_port_offset))
+
 export mb_cassandra_host="localhost"
 export mb_cassandra_port="9161"
 
@@ -127,7 +151,7 @@ export mb_cassandra_port="9161"
 
 export lb_path=$stratos_path/"apache-stratos-lb-4.0.0-SNAPSHOT"
 export lb_pack=$stratos_pack_path/"apache-stratos-lb-4.0.0-SNAPSHOT.zip"
-export lb_hostname="lb.$stratos_domain"
+
 export lb_port_offset=0
 export lb_port=$((9443 + $lb_port_offset))
 
@@ -137,22 +161,10 @@ export lb_port=$((9443 + $lb_port_offset))
 
 export as_path=$stratos_path/"apache-stratos-autoscaler-4.0.0-SNAPSHOT"
 export as_pack=$stratos_pack_path/"apache-stratos-autoscaler-4.0.0-SNAPSHOT.zip"
-export as_hostname="as.$stratos_domain"
-export as_port_offset=3
-export as_https_port=$((9443 + $as_port_offset))
 
 
+export as_https_port=$((9443 + $as_port_offset))
 
-# BAM configuration
-# ----------------------------------------------------------------------------
-#export bam_port_offset=3
-#export bam_port="9446"
-#export bam_ip=$hostip
-#export bam_reciever_port="7614"
-#export bam_reciever_secured_port="7714"
-#export bam_hostname="$stratos_domain"
-#export bam_path="wso2bam-2.3.0"
-#export bam_pack="wso2bam-2.3.0.zip"
 
 
 # IaaS Providers
@@ -173,9 +185,6 @@ export ec2_availability_zone="<ec2_availability_zone>"
 export ec2_security_groups="<ec2_security_groups>"
 export ec2_instance_type="m1.large"
 export ec2_image_id=""
-export ec2_php_cartridge_image_id="ami-8a733bd8" 
-export ec2_mysql_cartridge_image_id="ami-3e753d6c"
-export ec2_tomcat_cartridge_image_id="ami-6484cc36"
 
 # Openstack
 export openstack_provider_enabled=true
@@ -192,9 +201,6 @@ export nova_region="RegionOne"
 export openstack_instance_type_tiny="RegionOne\/1"
 export openstack_instance_type_small="RegionOne\/2"
 export openstack_security_groups="security-groups"
-export openstack_php_cartridge_image_id=""
-export openstack_mysql_cartridge_image_id=""
-export openstack_tomcat_cartridge_image_id=""
 
 
 # Cassandra configuration

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/d56fb769/tools/stratos-installer/config/sc/bin/stratos.sh
----------------------------------------------------------------------
diff --git a/tools/stratos-installer/config/sc/bin/stratos.sh b/tools/stratos-installer/config/sc/bin/stratos.sh
deleted file mode 100644
index ab6133f..0000000
--- a/tools/stratos-installer/config/sc/bin/stratos.sh
+++ /dev/null
@@ -1,301 +0,0 @@
-#!/bin/sh
-# ----------------------------------------------------------------------------
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you 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.
-# ----------------------------------------------------------------------------
-# Main Script for the Server
-#
-# Environment Variable Prequisites
-#
-#   CARBON_HOME   Home of WSO2 Carbon installation. If not set I will  try
-#                   to figure it out.
-#
-#   JAVA_HOME       Must point at your Java Development Kit installation.
-#
-#   JAVA_OPTS       (Optional) Java runtime options used when the commands
-#                   is executed.
-#
-# NOTE: Borrowed generously from Apache Tomcat startup scripts.
-# -----------------------------------------------------------------------------
-
-# OS specific support.  $var _must_ be set to either true or false.
-#ulimit -n 100000
-
-cygwin=false;
-darwin=false;
-os400=false;
-mingw=false;
-case "`uname`" in
-CYGWIN*) cygwin=true;;
-MINGW*) mingw=true;;
-OS400*) os400=true;;
-Darwin*) darwin=true
-        if [ -z "$JAVA_VERSION" ] ; then
-             JAVA_VERSION="CurrentJDK"
-           else
-             echo "Using Java version: $JAVA_VERSION"
-           fi
-           if [ -z "$JAVA_HOME" ] ; then
-             JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/${JAVA_VERSION}/Home
-           fi
-           ;;
-esac
-
-# resolve links - $0 may be a softlink
-PRG="$0"
-
-while [ -h "$PRG" ]; do
-  ls=`ls -ld "$PRG"`
-  link=`expr "$ls" : '.*-> \(.*\)$'`
-  if expr "$link" : '.*/.*' > /dev/null; then
-    PRG="$link"
-  else
-    PRG=`dirname "$PRG"`/"$link"
-  fi
-done
-
-# Get standard environment variables
-PRGDIR=`dirname "$PRG"`
-
-# Only set CARBON_HOME if not already set
-[ -z "$CARBON_HOME" ] && CARBON_HOME=`cd "$PRGDIR/.." ; pwd`
-
-# Set AXIS2_HOME. Needed for One Click JAR Download
-AXIS2_HOME=$CARBON_HOME
-
-# For Cygwin, ensure paths are in UNIX format before anything is touched
-if $cygwin; then
-  [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
-  [ -n "$CARBON_HOME" ] && CARBON_HOME=`cygpath --unix "$CARBON_HOME"`
-  [ -n "$AXIS2_HOME" ] && CARBON_HOME=`cygpath --unix "$CARBON_HOME"`
-fi
-
-# For OS400
-if $os400; then
-  # Set job priority to standard for interactive (interactive - 6) by using
-  # the interactive priority - 6, the helper threads that respond to requests
-  # will be running at the same priority as interactive jobs.
-  COMMAND='chgjob job('$JOBNAME') runpty(6)'
-  system $COMMAND
-
-  # Enable multi threading
-  QIBM_MULTI_THREADED=Y
-  export QIBM_MULTI_THREADED
-fi
-
-# For Migwn, ensure paths are in UNIX format before anything is touched
-if $mingw ; then
-  [ -n "$CARBON_HOME" ] &&
-    CARBON_HOME="`(cd "$CARBON_HOME"; pwd)`"
-  [ -n "$JAVA_HOME" ] &&
-    JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
-  [ -n "$AXIS2_HOME" ] &&
-    CARBON_HOME="`(cd "$CARBON_HOME"; pwd)`"
-  # TODO classpath?
-fi
-
-if [ -z "$JAVACMD" ] ; then
-  if [ -n "$JAVA_HOME"  ] ; then
-    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
-      # IBM's JDK on AIX uses strange locations for the executables
-      JAVACMD="$JAVA_HOME/jre/sh/java"
-    else
-      JAVACMD="$JAVA_HOME/bin/java"
-    fi
-  else
-    JAVACMD=java
-  fi
-fi
-
-if [ ! -x "$JAVACMD" ] ; then
-  echo "Error: JAVA_HOME is not defined correctly."
-  echo " CARBON cannot execute $JAVACMD"
-  exit 1
-fi
-
-# if JAVA_HOME is not set we're not happy
-if [ -z "$JAVA_HOME" ]; then
-  echo "You must set the JAVA_HOME variable before running CARBON."
-  exit 1
-fi
-
-if [ -e "$CARBON_HOME/wso2carbon.pid" ]; then
-  PID=`cat "$CARBON_HOME"/wso2carbon.pid`
-fi
-
-# ----- Process the input command ----------------------------------------------
-for c in $*
-do
-    if [ "$c" = "--debug" ] || [ "$c" = "-debug" ] || [ "$c" = "debug" ]; then
-          CMD="--debug"
-          continue
-    elif [ "$CMD" = "--debug" ]; then
-          if [ -z "$PORT" ]; then
-                PORT=$c
-          fi
-    elif [ "$c" = "--stop" ] || [ "$c" = "-stop" ] || [ "$c" = "stop" ]; then
-          CMD="stop"
-    elif [ "$c" = "--start" ] || [ "$c" = "-start" ] || [ "$c" = "start" ]; then
-          CMD="start"
-    elif [ "$c" = "--version" ] || [ "$c" = "-version" ] || [ "$c" = "version" ]; then
-          CMD="version"
-    elif [ "$c" = "--restart" ] || [ "$c" = "-restart" ] || [ "$c" = "restart" ]; then
-          CMD="restart"
-    elif [ "$c" = "--test" ] || [ "$c" = "-test" ] || [ "$c" = "test" ]; then
-          CMD="test"
-    fi
-done
-
-if [ "$CMD" = "--debug" ]; then
-  if [ "$PORT" = "" ]; then
-    echo " Please specify the debug port after the --debug option"
-    exit 1
-  fi
-  if [ -n "$JAVA_OPTS" ]; then
-    echo "Warning !!!. User specified JAVA_OPTS will be ignored, once you give the --debug option."
-  fi
-  CMD="RUN"
-  JAVA_OPTS="-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=$PORT"
-  echo "Please start the remote debugging client to continue..."
-elif [ "$CMD" = "start" ]; then
-  if [ -e "$CARBON_HOME/wso2carbon.pid" ]; then
-    if  ps -p $PID >&- ; then
-      echo "Process is already running"
-      exit 0
-    fi
-  fi
-  export CARBON_HOME=$CARBON_HOME
-# using nohup bash to avoid erros in solaris OS.TODO
-  nohup bash $CARBON_HOME/bin/stratos.sh > /dev/null 2>&1 &
-  exit 0
-elif [ "$CMD" = "stop" ]; then
-  export CARBON_HOME=$CARBON_HOME
-  kill -term `cat $CARBON_HOME/wso2carbon.pid`
-  exit 0
-elif [ "$CMD" = "restart" ]; then
-  export CARBON_HOME=$CARBON_HOME
-  kill -term `cat $CARBON_HOME/wso2carbon.pid`
-  process_status=0
-  pid=`cat $CARBON_HOME/wso2carbon.pid`
-  while [ "$process_status" -eq "0" ]
-  do
-        sleep 1;
-        ps -p$pid 2>&1 > /dev/null
-        process_status=$?
-  done
-
-# using nohup bash to avoid erros in solaris OS.TODO
-  nohup bash $CARBON_HOME/bin/stratos.sh > /dev/null 2>&1 &
-  exit 0
-elif [ "$CMD" = "test" ]; then
-    JAVACMD="exec "$JAVACMD""
-elif [ "$CMD" = "version" ]; then
-  cat $CARBON_HOME/bin/version.txt
-  cat $CARBON_HOME/bin/wso2carbon-version.txt
-  exit 0
-fi
-
-# ---------- Handle the SSL Issue with proper JDK version --------------------
-jdk_16=`$JAVA_HOME/bin/java -version 2>&1 | grep "1.[6|7]"`
-if [ "$jdk_16" = "" ]; then
-   echo " Starting WSO2 Carbon (in unsupported JDK)"
-   echo " [ERROR] CARBON is supported only on JDK 1.6 and 1.7"
-fi
-
-CARBON_XBOOTCLASSPATH=""
-for f in "$CARBON_HOME"/lib/xboot/*.jar
-do
-    if [ "$f" != "$CARBON_HOME/lib/xboot/*.jar" ];then
-        CARBON_XBOOTCLASSPATH="$CARBON_XBOOTCLASSPATH":$f
-    fi
-done
-
-JAVA_ENDORSED_DIRS="$CARBON_HOME/lib/endorsed":"$JAVA_HOME/jre/lib/endorsed":"$JAVA_HOME/lib/endorsed"
-
-CARBON_CLASSPATH=""
-if [ -e "$JAVA_HOME/lib/tools.jar" ]; then
-    CARBON_CLASSPATH="$JAVA_HOME/lib/tools.jar"
-fi
-for f in "$CARBON_HOME"/bin/*.jar
-do
-    if [ "$f" != "$CARBON_HOME/bin/*.jar" ];then
-        CARBON_CLASSPATH="$CARBON_CLASSPATH":$f
-    fi
-done
-for t in "$CARBON_HOME"/lib/commons-lang*.jar
-do
-    CARBON_CLASSPATH="$CARBON_CLASSPATH":$t
-done
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin; then
-  JAVA_HOME=`cygpath --absolute --windows "$JAVA_HOME"`
-  CARBON_HOME=`cygpath --absolute --windows "$CARBON_HOME"`
-  AXIS2_HOME=`cygpath --absolute --windows "$CARBON_HOME"`
-  CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
-  JAVA_ENDORSED_DIRS=`cygpath --path --windows "$JAVA_ENDORSED_DIRS"`
-  CARBON_CLASSPATH=`cygpath --path --windows "$CARBON_CLASSPATH"`
-  CARBON_XBOOTCLASSPATH=`cygpath --path --windows "$CARBON_XBOOTCLASSPATH"`
-fi
-
-# ----- Execute The Requested Command -----------------------------------------
-
-echo JAVA_HOME environment variable is set to $JAVA_HOME
-echo CARBON_HOME environment variable is set to $CARBON_HOME
-
-cd "$CARBON_HOME"
-
-START_EXIT_STATUS=121
-status=$START_EXIT_STATUS
-
-#To monitor a Carbon server in remote JMX mode on linux host machines, set the below system property.
-#   -Djava.rmi.server.hostname="your.IP.goes.here"
-
-while [ "$status" = "$START_EXIT_STATUS" ]
-do
-    $JAVACMD \
-    -Xbootclasspath/a:"$CARBON_XBOOTCLASSPATH" \
-    -Xms256m -Xmx1024m -XX:MaxPermSize=256m \
-    -XX:+HeapDumpOnOutOfMemoryError \
-    -XX:HeapDumpPath="$CARBON_HOME/repository/logs/heap-dump.hprof" \
-    $JAVA_OPTS \
-    -Dcom.sun.management.jmxremote \
-    -classpath "$CARBON_CLASSPATH" \
-    -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
-    -Djava.io.tmpdir="$CARBON_HOME/tmp" \
-    -Dcatalina.base="$CARBON_HOME/lib/tomcat" \
-    -Dwso2.server.standalone=true \
-    -Dcarbon.registry.root=/ \
-    -Djava.command="$JAVACMD" \
-    -Dcarbon.home="$CARBON_HOME" \
-    -Djava.util.logging.config.file="$CARBON_HOME/repository/conf/log4j.properties" \
-    -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager \
-    -Dcarbon.config.dir.path="$CARBON_HOME/repository/conf" \
-    -Dcomponents.repo="$CARBON_HOME/repository/components/plugins" \
-    -Dconf.location="$CARBON_HOME/repository/conf"\
-    -Dcom.atomikos.icatch.file="$CARBON_HOME/lib/transactions.properties" \
-    -Dcom.atomikos.icatch.hide_init_file_path=true \
-    -Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true \
-    -Dcom.sun.jndi.ldap.connect.pool.authentication=simple  \
-    -Dcom.sun.jndi.ldap.connect.pool.timeout=3000  \
-    -Dorg.terracotta.quartz.skipUpdateCheck=true \
-    -Djava.security.egd=file:/dev/./urandom \
-    -Dfile.encoding=UTF8 \
-    -Dloadbalancer.conf=file:repository/conf/loadbalancer.conf \
-    -Dmb.server.ip=MB_HOSTNAME:MB_LISTEN_PORT \
-    org.wso2.carbon.bootstrap.Bootstrap $*
-    status=$?
-done

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/d56fb769/tools/stratos-installer/config/sc/repository/conf/axis2/axis2.xml
----------------------------------------------------------------------
diff --git a/tools/stratos-installer/config/sc/repository/conf/axis2/axis2.xml b/tools/stratos-installer/config/sc/repository/conf/axis2/axis2.xml
deleted file mode 100644
index 62df377..0000000
--- a/tools/stratos-installer/config/sc/repository/conf/axis2/axis2.xml
+++ /dev/null
@@ -1,724 +0,0 @@
-<!--
-  -  Licensed to the Apache Software Foundation (ASF) under one
-  -  or more contributor license agreements.  See the NOTICE file
-  -  distributed with this work for additional information
-  -  regarding copyright ownership.  The ASF licenses this file
-  -  to you 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.
--->
-
-<axisconfig name="AxisJava2.0">
-
-    <!-- ================================================= -->
-    <!-- Globally engaged modules -->
-    <!-- ================================================= -->
-    <module ref="addressing"/>
-
-    <!-- ================================================= -->
-    <!-- Parameters -->
-    <!-- ================================================= -->
-    <parameter name="hotdeployment">${hotdeployment}</parameter>
-    <parameter name="hotupdate">${hotupdate}</parameter>
-    <parameter name="enableMTOM" locked="false">optional</parameter>
-    <parameter name="cacheAttachments">true</parameter>
-    <parameter name="attachmentDIR">work/mtom</parameter>
-    <parameter name="sizeThreshold">4000</parameter>
-
-    <parameter name="EnableChildFirstClassLoading">${childfirstCL}</parameter>
-
-    <!--
-    The exposeServiceMetadata parameter decides whether the metadata (WSDL, schema, policy) of
-    the services deployed on Axis2 should be visible when ?wsdl, ?wsdl2, ?xsd, ?policy requests
-    are received.
-    This parameter can be defined in the axi2.xml file, in which case this will be applicable
-    globally, or in the services.xml files, in which case, it will be applicable to the
-    Service groups and/or services, depending on the level at which the parameter is declared.
-    This value of this parameter defaults to true.
-    -->
-    <parameter name="exposeServiceMetadata">true</parameter>
-
-    <!--
-    Defines how the persistence of WS-ReliableMessaging is handled
-
-    Possible value are: inmemory & persistent
-    -->
-    <!-- Following parameter will completely disable REST handling in both the servlets-->
-    <parameter name="disableREST" locked="false">false</parameter>
-
-    <parameter name="Sandesha2StorageManager">inmemory</parameter>
-
-    <!-- This deployment interceptor will be called whenever before a module is initialized or
-     service is deployed -->
-    <listener class="org.wso2.carbon.core.deployment.DeploymentInterceptor"/>
-
-    <!-- setting servicePath. contextRoot is defined in the carbon.xml file -->
-    <parameter name="servicePath">services</parameter>
-
-    <!--the directory in which .aar services are deployed inside axis2 repository-->
-    <parameter name="ServicesDirectory">axis2services</parameter>
-
-    <!--the directory in which modules are deployed inside axis2 repository-->
-    <parameter name="ModulesDirectory">axis2modules</parameter>
-
-    <parameter name="userAgent" locked="true">
-        @product.name@-@product.version@
-    </parameter>
-    <parameter name="server" locked="true">
-        @product.name@-@product.version@
-    </parameter>
-
-    <!-- ========================================================================-->
-
-    <!--During a fault, stacktrace can be sent with the fault message. The following flag will control -->
-    <!--that behaviour.-->
-    <parameter name="sendStacktraceDetailsWithFaults">false</parameter>
-
-    <!--If there aren't any information available to find out the fault reason, we set the message of the expcetion-->
-    <!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be -->
-    <!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag-->
-    <!--is set then, Axis2 tries to get the first exception and set its message as the faultreason/Reason.-->
-    <parameter name="DrillDownToRootCauseForFaultReason">false</parameter>
-
-    <!--Set the flag to true if you want to enable transport level session mangment-->
-    <parameter name="manageTransportSession">true</parameter>
-
-    <!-- Synapse Configuration file -->
-    <parameter name="SynapseConfig.ConfigurationFile" locked="false">./repository/deployment/server/synapse-configs</parameter>
-
-    <!-- Synapse Home parameter -->
-    <parameter name="SynapseConfig.HomeDirectory" locked="false">.</parameter>
-
-    <!-- Resolve root used to resolve synapse references like schemas inside a WSDL -->
-    <parameter name="SynapseConfig.ResolveRoot" locked="false">.</parameter>
-
-    <!-- Synapse Server name parameter -->
-    <parameter name="SynapseConfig.ServerName" locked="false">WSO2 Carbon Server</parameter>
-
-    <!--By default, JAXWS services are created by reading annotations. WSDL and schema are generated-->
-    <!--using a separate WSDL generator only when ?wsdl is called. Therefore, even if you engage-->
-    <!--policies etc.. to AxisService, it doesn't appear in the WSDL. By setting the following property-->
-    <!--to true, you can create the AxisService using the generated WSDL and remove the need for a-->
-    <!--WSDL generator. When ?wsdl is called, WSDL is generated in the normal way.-->
-    <parameter name="useGeneratedWSDLinJAXWS">${jaxwsparam}</parameter>
-
-    <!-- Deployer for the dataservice. -->
-    <!--<deployer extension="dbs" directory="dataservices" class="org.wso2.dataservices.DBDeployer"/>-->
-
-    <!-- Axis1 deployer for Axis2-->
-    <!--<deployer extension="wsdd" class="org.wso2.carbon.axis1services.Axis1Deployer" directory="axis1services"/>-->
-
-    <!-- POJO service deployer for Jar -->
-    <!--<deployer extension="jar" class="org.apache.axis2.deployment.POJODeployer" directory="pojoservices"/>-->
-
-    <!-- POJO service deployer for Class  -->
-    <!--<deployer extension="class" class="org.apache.axis2.deployment.POJODeployer" directory="pojoservices"/>-->
-
-    <!-- JAXWS service deployer  -->
-    <!--<deployer extension=".jar" class="org.apache.axis2.jaxws.framework.JAXWSDeployer" directory="servicejars"/>-->
-    <!-- ================================================= -->
-    <!-- Message Receivers -->
-    <!-- ================================================= -->
-    <!--This is the Default Message Receiver for the system , if you want to have MessageReceivers for -->
-    <!--all the other MEP implement it and add the correct entry to here , so that you can refer from-->
-    <!--any operation -->
-    <!--Note : You can ovride this for particular service by adding the same element with your requirement-->
-
-    <messageReceivers>
-        <messageReceiver mep="http://www.w3.org/ns/wsdl/in-only"
-                         class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
-        <messageReceiver mep="http://www.w3.org/ns/wsdl/robust-in-only"
-                         class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
-        <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
-                         class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
-    </messageReceivers>
-
-    <messageFormatters>
-        <messageFormatter contentType="application/x-www-form-urlencoded"
-                         class="org.apache.axis2.transport.http.XFormURLEncodedFormatter"/>
-        <messageFormatter contentType="multipart/form-data"
-                         class="org.apache.axis2.transport.http.MultipartFormDataFormatter"/>
-        <messageFormatter contentType="application/xml"
-                         class="org.apache.axis2.transport.http.ApplicationXMLFormatter"/>
-        <messageFormatter contentType="text/xml"
-                         class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
-        <messageFormatter contentType="application/soap+xml"
-                          class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
-
-        <!--JSON Message Formatters-->
-        <messageFormatter contentType="application/json"
-                          class="org.apache.axis2.json.JSONMessageFormatter"/>
-        <messageFormatter contentType="application/json/badgerfish"
-                          class="org.apache.axis2.json.JSONBadgerfishMessageFormatter"/>
-        <messageFormatter contentType="text/javascript"
-                          class="org.apache.axis2.json.JSONMessageFormatter"/>
-
-        <!--messageFormatter contentType="application/x-www-form-urlencoded"
-                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
-        <!--messageFormatter contentType="multipart/form-data"
-                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
-        <!--messageFormatter contentType="application/xml"
-                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
-        <!--messageFormatter contentType="text/html"
-                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
-        <!--messageFormatter contentType="application/soap+xml"
-                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
-        <!--messageFormatter contentType="x-application/hessian"
-			class="org.apache.synapse.format.hessian.HessianMessageFormatter"/-->
-        <!--<messageFormatter contentType="">
-			class="org.apache.synapse.format.hessian.HessianMessageFormatter"/-->
-    </messageFormatters>
-
-    <messageBuilders>
-        <messageBuilder contentType="application/xml"
-                        class="org.apache.axis2.builder.ApplicationXMLBuilder"/>
-        <messageBuilder contentType="application/x-www-form-urlencoded"
-                        class="org.apache.axis2.builder.XFormURLEncodedBuilder"/>
-        <messageBuilder contentType="multipart/form-data"
-                        class="org.apache.axis2.builder.MultipartFormDataBuilder"/>
-
-        <!--JSON Message Builders-->
-        <messageBuilder contentType="application/json"
-                        class="org.apache.axis2.json.JSONOMBuilder"/>
-        <messageBuilder contentType="application/json/badgerfish"
-                        class="org.apache.axis2.json.JSONBadgerfishOMBuilder"/>
-        <messageBuilder contentType="text/javascript"
-                        class="org.apache.axis2.json.JSONOMBuilder"/>
-        
-        <!--messageBuilder contentType="application/xml"
-     		        class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
-        <!--messageBuilder contentType="application/x-www-form-urlencoded"
-                        class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
-        <!--messageBuilder contentType="multipart/form-data"
-                        class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
-        <!--messageBuilder contentType="multipart/related"
-                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
-        <!--messageBuilder contentType="application/soap+xml"
-                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
-        <!--messageBuilder contentType="text/plain"
-                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
-        <!--messageBuilder contentType="text/xml"
-                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
-        <!--messageFormatter contentType="text/plain"
-                        class="org.apache.axis2.format.PlainTextBuilder"/-->
-        <!--messageBuilder contentType="x-application/hessian"
-		       class="org.apache.synapse.format.hessian.HessianMessageBuilder"/-->
-    </messageBuilders>
-
-
-    <!-- ================================================= -->
-    <!-- In Transports -->
-    <!-- ================================================= -->
-    <transportReceiver name="http"
-                       class="org.wso2.carbon.core.transports.http.HttpTransportListener">
-        <!--
-           Uncomment the following if you are deploying this within an application server. You
-           need to specify the HTTP port of the application server
-        -->
-        <parameter name="port">9763</parameter>
-
-        <!--
-       Uncomment the following to enable Apache2 mod_proxy. The port on the Apache server is 80
-       in this case.
-        -->
-        <!--<parameter name="proxyPort">80</parameter>-->
-    </transportReceiver>
-
-    <!--Please uncomment this in Multiple Instance Scenario if you want to use NIO Transport Recievers and 
- 	Remove the current transport REceivers in axis2.xml -->    
-    <!--transportReceiver name="http" class="org.apache.synapse.transport.nhttp.HttpCoreNIOListener">
-        <parameter name="port" locked="false">8280</parameter>
-        <parameter name="non-blocking" locked="false">true</parameter>
-    </transportReceiver>
-    
-    <transportReceiver name="https" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSSLListener">
-        <parameter name="port" locked="false">8243</parameter>
-        <parameter name="non-blocking" locked="false">true</parameter>
-        <parameter name="keystore" locked="false">
-            <KeyStore>
-                <Location>repository/resources/security/wso2carbon.jks</Location>
-                <Type>JKS</Type>
-                <Password>wso2carbon</Password>
-                <KeyPassword>wso2carbon</KeyPassword>
-            </KeyStore>
-        </parameter>
-        <parameter name="truststore" locked="false">
-            <TrustStore>
-                <Location>repository/resources/security/client-truststore.jks</Location>
-                <Type>JKS</Type>
-                <Password>wso2carbon</Password>
-            </TrustStore>
-        </parameter>
-    </transportReceiver-->
-    
-
-
-    <transportReceiver name="https"
-                       class="org.wso2.carbon.core.transports.http.HttpsTransportListener">
-        <!--
-           Uncomment the following if you are deploying this within an application server. You
-           need to specify the HTTPS port of the application server
-        -->
-        <parameter name="port">9443</parameter>
-
-        <!--
-       Uncomment the following to enable Apache2 mod_proxy. The port on the Apache server is 443
-       in this case.
-        -->
-        <!--<parameter name="proxyPort">443</parameter>-->
-    </transportReceiver>
-
-    <!--
-       Uncomment the following segment to enable TCP transport.
-       Note : Addressing module should be engaged for TCP transport to work
-    -->
-    <!--<transportReceiver name="tcp"
-                       class="org.apache.axis2.transport.tcp.TCPServer">
-        <parameter name="port">6667</parameter>
-    </transportReceiver>-->
-
-    <!--
-     To Enable Mail Transport Listener, please uncomment the following.
-    -->
-    <!--<transportReceiver name="mailto" class="org.apache.axis2.transport.mail.MailTransportListener">
-
-    </transportReceiver>-->
-
-
-    <!--
-      Uncomment this and configure as appropriate for JMS transport support,
-      after setting up your JMS environment (e.g. ActiveMQ)
-    -->
-    <!--<transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener">
-        <parameter name="myTopicConnectionFactory">
-        	<parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
-        	<parameter name="java.naming.provider.url">tcp://localhost:61616</parameter>
-        	<parameter name="transport.jms.ConnectionFactoryJNDIName">TopicConnectionFactory</parameter>
-        </parameter>
-
-        <parameter name="myQueueConnectionFactory">
-        	<parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
-        	<parameter name="java.naming.provider.url">tcp://localhost:61616</parameter>
-        	<parameter name="transport.jms.ConnectionFactoryJNDIName">QueueConnectionFactory</parameter>
-        </parameter>
-
-        <parameter name="default">
-        	<parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
-        	<parameter name="java.naming.provider.url">tcp://localhost:61616</parameter>
-        	<parameter name="transport.jms.ConnectionFactoryJNDIName">QueueConnectionFactory</parameter>
-        </parameter>
-    </transportReceiver>-->
-
-    <!-- ================================================= -->
-    <!-- Out Transports -->
-    <!-- ================================================= -->
-
-    <transportSender name="tcp"
-                     class="org.apache.axis2.transport.tcp.TCPTransportSender"/>
-    <transportReceiver name="local" class="org.wso2.carbon.core.transports.local.CarbonLocalTransportReceiver"/>
-    <transportSender name="local" class="org.wso2.carbon.core.transports.local.CarbonLocalTransportSender"/>
-    <!--<transportSender name="jms"
-                     class="org.apache.axis2.transport.jms.JMSSender"/>-->
-    <transportSender name="http"
-                     class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
-        <parameter name="PROTOCOL">HTTP/1.1</parameter>
-        <parameter name="Transfer-Encoding">chunked</parameter>
-        <!-- This parameter has been added to overcome problems encounted in SOAP action parameter -->
-        <parameter name="OmitSOAP12Action">true</parameter>
-    </transportSender>
-    <transportSender name="https"
-                     class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
-        <parameter name="PROTOCOL">HTTP/1.1</parameter>
-        <parameter name="Transfer-Encoding">chunked</parameter>
-        <!-- This parameter has been added to overcome problems encounted in SOAP action parameter -->
-        <parameter name="OmitSOAP12Action">true</parameter>
-    </transportSender>
-
-    <!-- To enable mail transport sender, ncomment the following and change the parameters
-         accordingly-->
-    <!--<transportSender name="mailto"
-                     class="org.apache.axis2.transport.mail.MailTransportSender">
-        <parameter name="mail.smtp.from">synapse.demo.1@gmail.com</parameter>
-        <parameter name="mail.smtp.user">synapse.demo.1</parameter>
-        <parameter name="mail.smtp.password">mailpassword</parameter>
-        <parameter name="mail.smtp.host">smtp.gmail.com</parameter>
-
-        <parameter name="mail.smtp.port">587</parameter>
-        <parameter name="mail.smtp.starttls.enable">true</parameter>
-        <parameter name="mail.smtp.auth">true</parameter>
-    </transportSender>-->
-
-    <!--Please uncomment this in Multiple Instance Scenario if you want to use NIO sender -->
-    <!--  
-    <transportSender name="http" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSender">
-        <parameter name="non-blocking" locked="false">true</parameter>
-    </transportSender>
-    <transportSender name="https" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSSLSender">
-        <parameter name="non-blocking" locked="false">true</parameter>
-        <parameter name="keystore" locked="false">
-            <KeyStore>
-                <Location>repository/resources/security/wso2carbon.jks</Location>
-                <Type>JKS</Type>
-                <Password>wso2carbon</Password>
-                <KeyPassword>wso2carbon</KeyPassword>
-            </KeyStore>
-        </parameter>
-        <parameter name="truststore" locked="false">
-            <TrustStore>
-                <Location>repository/resources/security/client-truststore.jks</Location>
-                <Type>JKS</Type>
-                <Password>wso2carbon</Password>
-            </TrustStore>
-        </parameter>
-    </transportSender>
-	-->
-
-
-
-    <!-- ================================================= -->
-    <!-- Phases  -->
-    <!-- ================================================= -->
-    <phaseOrder type="InFlow">
-        <!--  System pre defined phases       -->
-        <!--
-           The MsgInObservation phase is used to observe messages as soon as they are
-           received. In this phase, we could do some things such as SOAP message tracing & keeping
-           track of the time at which a particular message was received
-
-           NOTE: This should be the very first phase in this flow
-        -->
-        <phase name="MsgInObservation"/>
-
-        <phase name="Validation"/>
-        <phase name="Transport">
-            <handler name="RequestURIBasedDispatcher"
-                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
-                <order phase="Transport"/>
-            </handler>
-            <handler name="SOAPActionBasedDispatcher"
-                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
-                <order phase="Transport"/>
-            </handler>
-        </phase>
-        <phase name="Addressing">
-             <handler name="AddressingBasedDispatcher"
-                     class="org.wso2.carbon.core.multitenancy.MultitenantAddressingBasedDispatcher">
-                 <order phase="Addressing"/>
-            </handler>
-        </phase>
-        <phase name="Ghost">
-            <handler name="GhostDispatcher" class="org.wso2.carbon.core.dispatchers.GhostDispatcher"/>
-        </phase>
-        <phase name="Security"/>
-        <phase name="PreDispatch"/>
-        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
-            <handler name="RequestURIBasedDispatcher"
-                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
-            <handler name="SOAPActionBasedDispatcher"
-                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
-            <handler name="RequestURIOperationDispatcher"
-                     class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
-            <handler name="SOAPMessageBodyBasedDispatcher"
-                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
-
-            <handler name="HTTPLocationBasedDispatcher"
-                     class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
-        </phase>
-        <!--  System pre defined phases       -->
-        <phase name="RMPhase"/>
-        <phase name="OpPhase"/>
-        <!--   After Postdispatch phase module author or or service author can add any phase he want      -->
-        <phase name="OperationInPhase"/>
-    </phaseOrder>
-    <phaseOrder type="OutFlow">
-        <!-- Handlers related to unified-endpoint component are added to the UEPPhase -->
-        <phase name="UEPPhase" />
-        <phase name="RMPhase"/>
-        <phase name="OpPhase"/>
-        <!--      user can add his own phases to this area  -->
-        <phase name="OperationOutPhase"/>
-        <!--system predefined phase-->
-        <!--these phase will run irrespective of the service-->
-        <phase name="PolicyDetermination"/>
-        <phase name="MessageOut"/>
-	    <phase name="Security"/>
-
-        <!--
-           The MsgOutObservation phase is used to observe messages just before the
-           responses are sent out. In this phase, we could do some things such as SOAP message
-           tracing & keeping track of the time at which a particular response was sent.
-
-           NOTE: This should be the very last phase in this flow
-        -->
-        <phase name="MsgOutObservation"/>
-	<!--Following phase is added to publish stats -->
-        <phase name="StatReporting"/>
-    </phaseOrder>
-    <phaseOrder type="InFaultFlow">
-        <!--  System pre defined phases       -->
-        <!--
-           The MsgInObservation phase is used to observe messages as soon as they are
-           received. In this phase, we could do some things such as SOAP message tracing & keeping
-           track of the time at which a particular message was received
-
-           NOTE: This should be the very first phase in this flow
-        -->
-        <phase name="MsgInObservation"/>
-
-        <phase name="Validation"/>
-        <phase name="Transport">
-            <handler name="RequestURIBasedDispatcher"
-                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
-                <order phase="Transport"/>
-            </handler>
-            <handler name="SOAPActionBasedDispatcher"
-                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
-                <order phase="Transport"/>
-            </handler>
-        </phase>
-
-        <phase name="Addressing">
-             <handler name="AddressingBasedDispatcher"
-                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
-                 <order phase="Addressing"/>
-             </handler>
-        </phase>
-        <phase name="Ghost">
-            <handler name="GhostDispatcher" class="org.wso2.carbon.core.dispatchers.GhostDispatcher"/>
-        </phase>
-        <phase name="Security"/>
-        <phase name="PreDispatch"/>
-        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
-            <handler name="RequestURIBasedDispatcher"
-                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
-            <handler name="SOAPActionBasedDispatcher"
-                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
-            <handler name="RequestURIOperationDispatcher"
-                     class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
-            <handler name="SOAPMessageBodyBasedDispatcher"
-                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
-
-            <handler name="HTTPLocationBasedDispatcher"
-                     class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
-        </phase>
-        <phase name="RMPhase"/>
-        <phase name="OpPhase"/>
-        <!--      user can add his own phases to this area  -->
-        <phase name="OperationInFaultPhase"/>
-    </phaseOrder>
-    <phaseOrder type="OutFaultFlow">
-        <!-- Handlers related to unified-endpoint component are added to the UEPPhase -->
-        <phase name="UEPPhase" />
-        <phase name="RMPhase"/>
-        <!--      user can add his own phases to this area  -->
-        <phase name="OperationOutFaultPhase"/>
-        <phase name="PolicyDetermination"/>
-        <phase name="MessageOut"/>
-        <phase name="Security"/>
-        <!--
-           The MsgOutObservation phase is used to observe messages just before the
-           responses are sent out. In this phase, we could do some things such as SOAP message
-           tracing & keeping track of the time at which a particular response was sent.
-
-           NOTE: This should be the very last phase in this flow
-        -->
-        <phase name="MsgOutObservation"/>
-        <!--Following phase is added to publish stats -->
-	<phase name="StatReporting"/>
-    </phaseOrder>
-
-    <!-- ================================================= -->
-    <!-- Clustering  -->
-    <!-- ================================================= -->
-    <!--
-     To enable clustering for this node, set the value of "enable" attribute of the "clustering"
-     element to "true". The initialization of a node in the cluster is handled by the class
-     corresponding to the "class" attribute of the "clustering" element. It is also responsible for
-     getting this node to join the cluster.
-     -->
-    <clustering class="org.apache.axis2.clustering.tribes.TribesClusteringAgent" enable="true">
-
-        <!--
-           This parameter indicates whether the cluster has to be automatically initalized
-           when the AxisConfiguration is built. If set to "true" the initialization will not be
-           done at that stage, and some other party will have to explictly initialize the cluster.
-        -->
-        <parameter name="AvoidInitiation">true</parameter>
-
-        <!--
-           The membership scheme used in this setup. The only values supported at the moment are
-           "multicast" and "wka"
-
-           1. multicast - membership is automatically discovered using multicasting
-           2. wka - Well-Known Address based multicasting. Membership is discovered with the help
-                    of one or more nodes running at a Well-Known Address. New members joining a
-                    cluster will first connect to a well-known node, register with the well-known node
-                    and get the membership list from it. When new members join, one of the well-known
-                    nodes will notify the others in the group. When a member leaves the cluster or
-                    is deemed to have left the cluster, it will be detected by the Group Membership
-                    Service (GMS) using a TCP ping mechanism.
-        -->
-        <parameter name="membershipScheme">wka</parameter>
-
-        <!--
-         The clustering domain/group. Nodes in the same group will belong to the same multicast
-         domain. There will not be interference between nodes in different groups.
-        -->
-        <parameter name="domain">wso2.carbon.domain</parameter>
-
-        <!--
-           When a Web service request is received, and processed, before the response is sent to the
-           client, should we update the states of all members in the cluster? If the value of
-           this parameter is set to "true", the response to the client will be sent only after
-           all the members have been updated. Obviously, this can be time consuming. In some cases,
-           such this overhead may not be acceptable, in which case the value of this parameter
-           should be set to "false"
-        -->
-        <parameter name="synchronizeAll">true</parameter>
-
-        <!--
-          The maximum number of times we need to retry to send a message to a particular node
-          before giving up and considering that node to be faulty
-        -->
-        <parameter name="maxRetries">10</parameter>
-
-        <!-- The multicast address to be used -->
-        <parameter name="mcastAddress">228.0.0.4</parameter>
-
-        <!-- The multicast port to be used -->
-        <parameter name="mcastPort">45564</parameter>
-
-        <!-- The frequency of sending membership multicast messages (in ms) -->
-        <parameter name="mcastFrequency">500</parameter>
-
-        <!-- The time interval within which if a member does not respond, the member will be
-         deemed to have left the group (in ms)
-         -->
-        <parameter name="memberDropTime">3000</parameter>
-
-        <!--
-           The IP address of the network interface to which the multicasting has to be bound to.
-           Multicasting would be done using this interface.
-        -->
-        <!--
-            <parameter name="mcastBindAddress">127.0.0.1</parameter>
-        -->
-            <!-- The host name or IP address of this member -->
-        
-        <parameter name="localMemberHost">SC_HOSTNAME</parameter>
-        
-
-        <!--
-            The bind adress of this member. The difference between localMemberHost & localMemberBindAddress
-            is that localMemberHost is the one that is advertised by this member, while localMemberBindAddress
-            is the address to which this member is bound to.
-        -->
-        <!--
-        <parameter name="localMemberBindAddress">127.0.0.1</parameter>
-        -->
-
-        <!--
-        The TCP port used by this member. This is the port through which other nodes will
-        contact this member
-         -->
-        <parameter name="localMemberPort">SC_CLUSTER_PORT</parameter>
-
-        <!--
-            The bind port of this member. The difference between localMemberPort & localMemberBindPort
-            is that localMemberPort is the one that is advertised by this member, while localMemberBindPort
-            is the port to which this member is bound to.
-        -->
-        <!--
-        <parameter name="localMemberBindPort">4001</parameter>
-        -->
-
-        <!--
-        Preserve message ordering. This will be done according to sender order.
-        -->
-        <parameter name="preserveMessageOrder">true</parameter>
-
-        <!--
-        Maintain atmost-once message processing semantics
-        -->
-        <parameter name="atmostOnceMessageSemantics">false</parameter>
-
-        <!--
-        Properties specific to this member
-        -->
-        <parameter name="properties">
-            <property name="backendServerURL" value="https://${hostName}:${httpsPort}/services/"/>
-            <property name="mgtConsoleURL" value="https://${hostName}:${httpsPort}/"/>
-        </parameter>
-
-        <!--
-           The list of static or well-known members. These entries will only be valid if the
-           "membershipScheme" above is set to "wka"
-        -->
-       <!-- <members>
-            <member>
-                <hostName>127.0.0.1</hostName>
-                <port>4000</port>
-            </member>
-            <member>
-                <hostName>127.0.0.1</hostName>
-                <port>4001</port>
-            </member>
-        </members> -->
-
-        <!--
-        Enable the groupManagement entry if you need to run this node as a cluster manager.
-        Multiple application domains with different GroupManagementAgent implementations
-        can be defined in this section.
-        -->
-        <groupManagement enable="false">
-            <applicationDomain name="apache.axis2.application.domain"
-                               description="Axis2 group"
-                               agent="org.apache.axis2.clustering.management.DefaultGroupManagementAgent"/>
-        </groupManagement>
-
-        <!--
-           This interface is responsible for handling management of a specific node in the cluster
-           The "enable" attribute indicates whether Node management has been enabled
-        -->
-        <nodeManager class="org.apache.axis2.clustering.management.DefaultNodeManager"
-                     enable="true"/>
-
-        <!--
-           This interface is responsible for handling state replication. The property changes in
-           the Axis2 context hierarchy in this node, are propagated to all other nodes in the cluster.
-
-           The "excludes" patterns can be used to specify the prefixes (e.g. local_*) or
-           suffixes (e.g. *_local) of the properties to be excluded from replication. The pattern
-           "*" indicates that all properties in a particular context should not be replicated.
-
-            The "enable" attribute indicates whether context replication has been enabled
-        -->
-        <stateManager class="org.apache.axis2.clustering.state.DefaultStateManager"
-                      enable="false">
-            <replication>
-                <defaults>
-                    <exclude name="local_*"/>
-                    <exclude name="LOCAL_*"/>
-                </defaults>
-                <context class="org.apache.axis2.context.ConfigurationContext">
-                    <exclude name="local_*"/>
-                </context>
-                <context class="org.apache.axis2.context.ServiceGroupContext">
-                    <exclude name="local_*"/>
-                </context>
-                <context class="org.apache.axis2.context.ServiceContext">
-                    <exclude name="local_*"/>
-                </context>
-            </replication>
-        </stateManager>
-    </clustering>
-</axisconfig>

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/d56fb769/tools/stratos-installer/config/sc/repository/conf/cartridge-config.properties
----------------------------------------------------------------------
diff --git a/tools/stratos-installer/config/sc/repository/conf/cartridge-config.properties b/tools/stratos-installer/config/sc/repository/conf/cartridge-config.properties
index 382efa6..398c2da 100644
--- a/tools/stratos-installer/config/sc/repository/conf/cartridge-config.properties
+++ b/tools/stratos-installer/config/sc/repository/conf/cartridge-config.properties
@@ -20,10 +20,11 @@
 #
 
 # Configuration properties
+
+sc.ip=SC_IP
 autoscalerService.url=https://CC_HOSTNAME:CC_HTTPS_PORT/services/CloudControllerService/
 autoscaler.time.out=190000
 cartridge.agent.epr=https://AGENT_HOSTNAME:AGENT_PORT/services/CartridgeAgentService
-#cloud.controller.ip=172.17.0.1
 git.host.name=git.STRATOS_DOMAIN
 git.host.ip=GIT_IP
 git.repo.notification.url=https://SC_HOSTNAME:SC_HTTPS_PORT/services/RepoNotificationService/
@@ -34,23 +35,17 @@ adc.jdbc.url=jdbc:mysql://STRATOS_FOUNDATION_DB_HOSTNAME:STRATOS_FOUNDATION_DB_P
 adc.jdbc.username=STRATOS_FOUNDATION_DB_USER
 adc.jdbc.password=STRATOS_FOUNDATION_DB_PASS
 adc.jdbc.driver=com.mysql.jdbc.Driver
-#adc.jdbc.db=STRATOS_DB_SCHEMA
 
+mb.ip=MB_IP
+mb.port=MB_LISTEN_PORT
+cep.ip=CEP_IP
+cep.port=CEP_LISTEN_PORT
+
+feature.externalrepo.validation.enabled=true
 feature.internalrepo.enabled=false
 feature.multitenant.multiplesubscription.enabled=false
 
-
-mb.server.ip=MB_HOSTNAME:MB_LISTEN_PORT
-
 append.script=SCRIPT_PATH/add_entry_zone_file.sh
 remove.script=SCRIPT_PATH/remove_entry_zone_file.sh
 bind.file.path=/etc/bind/db.STRATOS_DOMAIN
-elb.ip=ELB_IP
-
-#bam.ip=BAM_IP
-#bam.port=BAM_PORT
-
-cartridge.key=KEYPAIR_PATH
-
-cartridge.cluster.max.limit=5
-max.attempts=50
+elb.ip=LB_IP

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/d56fb769/tools/stratos-installer/config/sc/repository/conf/etc/logging-config.xml
----------------------------------------------------------------------
diff --git a/tools/stratos-installer/config/sc/repository/conf/etc/logging-config.xml b/tools/stratos-installer/config/sc/repository/conf/etc/logging-config.xml
deleted file mode 100644
index 6c51885..0000000
--- a/tools/stratos-installer/config/sc/repository/conf/etc/logging-config.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<!--
- ~ Licensed to the Apache Software Foundation (ASF) under one
- ~ or more contributor license agreements.  See the NOTICE file
- ~ distributed with this work for additional information
- ~ regarding copyright ownership.  The ASF licenses this file
- ~ to you 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.
- -->
-
-<!--
-    This is the configuration file for logging specific properties.
--->
-
-<loggingConfig xmlns="http://wso2.org/projects/carbon/carbon.xml">
-    <isDataFromCassandra>false</isDataFromCassandra>
-    <!--Set the BAM Event publisher host url which specifies the log location where the logs are hosted-->
-    <cassandraHost>BAM_HOSTNAME:CASSANDRA_PORT</cassandraHost>
-    <cassandraConsistencyLevel>ONE</cassandraConsistencyLevel>
-    <cassandraAutoDiscovery enable="false" delay="1000"/>
-    <retryDownedHosts enable="true" queueSize="10"/>
-    <userName>admin</userName>
-    <password>admin</password>
-    <!--archivedHost>http://127.0.0.1/logs/stratos/0/WSO2%20Stratos%20Manager/</archivedHost-->
-    <archivedHost>hdfs://localhost:9000</archivedHost>
-    <archivedHDFSPath>/stratos/logs</archivedHDFSPath>
-    <archivedUser>admin</archivedUser>
-    <archivedPassword>admin</archivedPassword>
-    <archivedPort>80</archivedPort>
-    <archivedRealm>Stratos</archivedRealm>
-</loggingConfig>

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/d56fb769/tools/stratos-installer/config/sc/repository/conf/log4j.properties
----------------------------------------------------------------------
diff --git a/tools/stratos-installer/config/sc/repository/conf/log4j.properties b/tools/stratos-installer/config/sc/repository/conf/log4j.properties
deleted file mode 100644
index 54e7ca0..0000000
--- a/tools/stratos-installer/config/sc/repository/conf/log4j.properties
+++ /dev/null
@@ -1,171 +0,0 @@
-#
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you 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.
-#
-#
-
-#
-# This is the log4j configuration file used by WSO2 Carbon
-#
-# IMPORTANT : Please do not remove or change the names of any
-# of the Appenders defined here. The layout pattern & log file
-# can be changed using the WSO2 Carbon Management Console, and those
-# settings will override the settings in this file.
-#
-
-log4j.rootLogger=INFO, CARBON_CONSOLE, CARBON_LOGFILE, CARBON_MEMORY
-
-log4j.logger.AUDIT_LOG=INFO, AUDIT_LOGFILE
-log4j.logger.org.apache.axis2.wsdl.codegen.writer.PrettyPrinter=ERROR, CARBON_LOGFILE, CARBON_MEMORY
-log4j.logger.org.apache.axis2.clustering=INFO, CARBON_CONSOLE, CARBON_LOGFILE
-log4j.logger.org.apache=INFO, CARBON_LOGFILE, CARBON_MEMORY
-log4j.logger.org.apache.catalina=WARN
-log4j.logger.org.apache.tomcat=WARN
-log4j.logger.org.wso2.carbon.apacheds=WARN
-log4j.logger.org.apache.directory.server.ldap=WARN
-log4j.logger.org.apache.directory.server.core.event=WARN
-log4j.logger.com.atomikos=INFO,ATOMIKOS
-log4j.logger.org.quartz=WARN
-log4j.logger.org.apache.jackrabbit.webdav=WARN
-log4j.logger.org.apache.juddi=ERROR
-log4j.logger.org.apache.commons.digester.Digester=WARN
-log4j.logger.org.apache.jasper.compiler.TldLocationsCache=WARN
-log4j.logger.org.apache.qpid=WARN
-log4j.logger.org.apache.qpid.server.Main=INFO
-log4j.logger.qpid.message=WARN
-log4j.logger.qpid.message.broker.listening=INFO
-log4j.logger.org.apache.tiles=WARN
-log4j.logger.org.apache.commons.httpclient=ERROR
-log4j.logger.org.apache.coyote=WARN
-log4j.logger.org.apache.solr=ERROR
-log4j.logger.org.infinispan=WARN
-log4j.logger.org.jgroups=ERROR
-log4j.logger.me.prettyprint.cassandra.hector.TimingLogger=ERROR
-log4j.logger.org.wso2=INFO
-log4j.logger.org.apache.axis2.enterprise=FATAL, CARBON_LOGFILE, CARBON_MEMORY
-log4j.logger.org.opensaml.xml=WARN, CARBON_LOGFILE, CARBON_MEMORY
-log4j.logger.org.apache.directory.shared.ldap=WARN, CARBON_LOGFILE, CARBON_MEMORY
-log4j.logger.org.apache.directory.server.ldap.handlers=WARN, CARBON_LOGFILE, CARBON_MEMORY 
-#Following are to remove false error messages from startup (IS)
-log4j.logger.org.apache.directory.shared.ldap.entry.DefaultServerAttribute=FATAL, CARBON_LOGFILE, CARBON_MEMORY
-log4j.logger.org.apache.directory.server.core.DefaultDirectoryService=ERROR, CARBON_LOGFILE, CARBON_MEMORY
-log4j.logger.org.apache.directory.shared.ldap.ldif.LdifReader=ERROR, CARBON_LOGFILE, CARBON_MEMORY
-log4j.logger.org.apache.directory.server.ldap.LdapProtocolHandler=ERROR, CARBON_LOGFILE, CARBON_MEMORY
-log4j.logger.org.apache.directory.server.core=ERROR, CARBON_LOGFILE, CARBON_MEMORY
-#Hive Related Log configurations
-log4j.logger.DataNucleus=ERROR
-log4j.logger.Datastore=ERROR
-log4j.logger.Datastore.Schema=ERROR
-log4j.logger.JPOX.Datastore=ERROR
-log4j.logger.JPOX.Plugin=ERROR
-log4j.logger.JPOX.MetaData=ERROR
-log4j.logger.JPOX.Query=ERROR
-log4j.logger.JPOX.General=ERROR
-log4j.logger.JPOX.Enhancer=ERROR
-log4j.logger.org.apache.hadoop.hive=WARN
-log4j.logger.hive=WARN
-log4j.logger.ExecMapper=WARN
-log4j.logger.ExecReducer=WARN
-log4j.logger.net.sf.ehcache.config.ConfigurationFactory=ERROR
-
-log4j.logger.trace.messages=TRACE,CARBON_TRACE_LOGFILE
-
-log4j.additivity.org.apache.axis2.clustering=false
-log4j.additivity.com.atomikos=false
-
-# CARBON_CONSOLE is set to be a ConsoleAppender using a PatternLayout.
-log4j.appender.CARBON_CONSOLE=org.apache.log4j.ConsoleAppender
-log4j.appender.CARBON_CONSOLE.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
-# ConversionPattern will be overridden by the configuration setting in the DB
-log4j.appender.CARBON_CONSOLE.layout.ConversionPattern=[%d] %P%5p {%c} - %x %m%n
-log4j.appender.CARBON_CONSOLE.layout.TenantPattern=%U%@%D[%T]
-log4j.appender.CARBON_CONSOLE.threshold=DEBUG
-
-# The memory appender for logging
-log4j.appender.CARBON_MEMORY=org.wso2.carbon.logging.appender.CarbonMemoryAppender
-log4j.appender.CARBON_MEMORY.bufferSize=2000
-log4j.appender.CARBON_MEMORY.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
-# ConversionPattern will be overridden by the configuration setting in the DB
-log4j.appender.CARBON_MEMORY.layout.ConversionPattern=TID: [%T] [%S] [%d] %P%5p {%c} - %x %m {%c}%n
-log4j.appender.CARBON_MEMORY.layout.TenantPattern=%U%@%D [%T] [%S]
-log4j.appender.CARBON_MEMORY.columnList=%T,%S,%A,%d,%c,%p,%m,%H,%I,%Stacktrace
-log4j.appender.CARBON_MEMORY.threshold=DEBUG
-
-# CARBON_LOGFILE is set to be a DailyRollingFileAppender using a PatternLayout.
-log4j.appender.CARBON_LOGFILE=org.apache.log4j.DailyRollingFileAppender
-# Log file will be overridden by the configuration setting in the DB
-# This path should be relative to WSO2 Carbon Home
-log4j.appender.CARBON_LOGFILE.File=${carbon.home}/repository/logs/${instance.log}/wso2carbon${instance.log}.log
-log4j.appender.CARBON_LOGFILE.Append=true
-log4j.appender.CARBON_LOGFILE.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
-# ConversionPattern will be overridden by the configuration setting in the DB
-log4j.appender.CARBON_LOGFILE.layout.ConversionPattern=TID: [%T] [%S] [%d] %P%5p {%c} - %x %m {%c}%n
-log4j.appender.CARBON_LOGFILE.layout.TenantPattern=%U%@%D [%T] [%S]
-log4j.appender.CARBON_LOGFILE.threshold=DEBUG
-
-log4j.appender.CARBON_SYS_LOG = org.apache.log4j.net.SyslogAppender
-log4j.appender.CARBON_SYS_LOG.layout=org.apache.log4j.PatternLayout
-log4j.appender.CARBON_SYS_LOG.layout.ConversionPattern=[%d] %5p {%c} - %x %m {%c}%n
-log4j.appender.CARBON_SYS_LOG.SyslogHost=localhost
-log4j.appender.CARBON_SYS_LOG.Facility=USER
-log4j.appender.CARBON_SYS_LOG.threshold=DEBUG
-
-# LOGEVENT is set to be a LogEventAppender using a PatternLayout to send logs to LOGEVENT 
-log4j.appender.LOGEVENT=org.wso2.carbon.logging.appender.LogEventAppender
-log4j.appender.LOGEVENT.url=tcp://BAM_HOSTNAME:BAM_RECEIVER_PORT
-log4j.appender.LOGEVENT.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
-log4j.appender.LOGEVENT.columnList=%T,%S,%A,%d,%c,%p,%m,%I,%Stacktrace
-log4j.appender.LOGEVENT.userName=admin
-log4j.appender.LOGEVENT.password=admin
-log4j.appender.LOGEVENT.processingLimit=1000
-log4j.appender.LOGEVENT.maxTolerableConsecutiveFailure=20
-
-# Appender config to CARBON_TRACE_LOGFILE
-log4j.appender.CARBON_TRACE_LOGFILE=org.apache.log4j.DailyRollingFileAppender
-log4j.appender.CARBON_TRACE_LOGFILE.File=${carbon.home}/repository/logs/${instance.log}/wso2carbon-trace-messages${instance.log}.log
-log4j.appender.CARBON_TRACE_LOGFILE.Append=true
-log4j.appender.CARBON_TRACE_LOGFILE.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
-log4j.appender.CARBON_TRACE_LOGFILE.layout.ConversionPattern=[%d] %P%5p {%c} - %x %m {%c}%n
-log4j.appender.CARBON_TRACE_LOGFILE.layout.TenantPattern=%U%@%D [%T] [%S]
-log4j.appender.CARBON_TRACE_LOGFILE.threshold=TRACE
-log4j.additivity.trace.messages=false
-
-# Appender config to AUDIT_LOGFILE
-log4j.appender.AUDIT_LOGFILE=org.apache.log4j.DailyRollingFileAppender
-log4j.appender.AUDIT_LOGFILE.File=${carbon.home}/repository/logs/audit.log
-log4j.appender.AUDIT_LOGFILE.Append=true
-log4j.appender.AUDIT_LOGFILE.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
-log4j.appender.AUDIT_LOGFILE.layout.ConversionPattern=[%d] %P%5p - %x %m %n
-log4j.appender.AUDIT_LOGFILE.layout.TenantPattern=%U%@%D [%T] [%S]
-log4j.appender.AUDIT_LOGFILE.threshold=INFO
-log4j.additivity.AUDIT_LOG=false
-
-# Appender config to send Atomikos transaction logs to new log file tm.out.
-log4j.appender.ATOMIKOS = org.apache.log4j.RollingFileAppender
-log4j.appender.ATOMIKOS.File = repository/logs/tm.out
-log4j.appender.ATOMIKOS.Append = true
-log4j.appender.ATOMIKOS.layout = org.apache.log4j.PatternLayout
-log4j.appender.ATOMIKOS.layout.ConversionPattern=%p %t %c - %m%n
-
-# This file is used to override the default logger settings, and is used to remove unwanted logs from Shindig appearing on the console.
-
-# Specification of Handler used by Console Logger
-handlers=java.util.logging.ConsoleHandler
-
-# Replacing default INFO level with SEVERE
-java.util.logging.ConsoleHandler.level=SEVERE

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/d56fb769/tools/stratos-installer/setup.sh
----------------------------------------------------------------------
diff --git a/tools/stratos-installer/setup.sh b/tools/stratos-installer/setup.sh
index ea31ecc..ea14265 100755
--- a/tools/stratos-installer/setup.sh
+++ b/tools/stratos-installer/setup.sh
@@ -35,9 +35,9 @@ mb="false"
 cc="false"
 lb="false"
 as="false"
-sc="false"
+sm="false"
 cep="false"
-product_list="mb;cc;cep;lb;as;sc"
+product_list="mb;cc;cep;lb;as;sm"
 enable_internal_git=false
 
 function help {
@@ -46,12 +46,12 @@ function help {
     echo "setup.sh -u <host username> -p \"<product list>\""
     echo "product list : [mb, cc, lb, as, sm, cep]"
     echo "Example:"
-    echo "sudo ./setup.sh -p \"cc llb\""
+    echo "sudo ./setup.sh -p \"cc lb\""
     echo "sudo ./setup.sh -p \"all\""
     echo ""
     echo "-u: <host username> The login user of the host."
     echo "-p: <product list> Apache Stratos products to be installed on this node. Provide one or more names of the servers."
-    echo "    The available servers are cc, lb, as, sc or all. 'all' means you need to setup all servers in this machine. Default is all"
+    echo "    The available servers are cc, lb, as, sm or all. 'all' means you need to setup all servers in this machine. Default is all"
     echo "-g: <enable_internal_git> true|false Whether enable internal git repo for Stratos2. Default is false"
     echo ""
 }
@@ -92,29 +92,24 @@ do
     if [[ $x = "as" ]]; then
         as="true"
     fi
-    if [[ $x = "sc" ]]; then
-        sc="true"
+    if [[ $x = "sm" ]]; then
+        sm="true"
     fi
     if [[ $x = "all" ]]; then
         mb="true"
         cc="true"
         lb="true"
         as="true"
-        sc="true"
+        sm="true"
     fi
 done
+
 product_list=`echo $product_list | sed 's/^ *//g' | sed 's/ *$//g'`
 if [[ -z $product_list || $product_list = "" ]]; then
     help
     exit 1
 fi
 
-function helpsetup {
-    echo ""
-    echo "Set up the environment variables correctly in conf/setup.conf"
-    echo ""
-}
-
 echo "user provided in conf/setup.conf is $host_user. If you want to provide some other user name please specify it at the prompt."
 echo "If you want to continue with $host_user just press enter to continue"
 read username
@@ -134,6 +129,27 @@ export $enable_internal_git
 export $host_user
 export hostname=`hostname -f`
 
+function helpsetup {
+    echo ""
+    echo "Please set up the $1 related environment variables correctly in conf/setup.conf"
+    echo ""
+}
+
+function general_conf_validate {
+    if [[ ! -d $JAVA_HOME ]]; then
+        echo "Please set the JAVA_HOME environment variable for the running user"
+        exit 1
+    fi
+    export JAVA_HOME=$JAVA_HOME
+
+    if [[ -z $stratos_domain ]]; then
+        echo "Please specify the stratos domain"
+        exit 1
+    fi
+}
+
+general_conf_validate
+
 function setup_validate {    
     if [[ -z $hostname ]]; then
         echo "Set up the hostname of the node"
@@ -198,6 +214,14 @@ function setup_validate {
         fi
     fi
 
+    if [[ ( -z $cc_ip ) ]]; then
+        cc_ip=$(ifconfig eth0| sed -En 's/127.0.0.1//;s/.*inet (addr:)?(([0-9]*\.){3}[0-9]*).*/\2/p')
+        if [[ ( -z $cc_ip ) ]]; then
+            helpsetup
+            exit 1
+        fi
+    fi
+
     if [[ ( -z $as_ip ) ]]; then
         as_ip=$(ifconfig eth0| sed -En 's/127.0.0.1//;s/.*inet (addr:)?(([0-9]*\.){3}[0-9]*).*/\2/p')
         if [[ ( -z $as_ip ) ]]; then
@@ -269,11 +293,7 @@ function setup_validate {
         exit 1
     fi
 
-    if [[ ! -d $JAVA_HOME ]]; then
-        echo "Please set the JAVA_HOME environment variable for the running user"
-        exit 1
-    fi
-    export JAVA_HOME=$JAVA_HOME
+
 
     if [[ $ec2_provider_enabled = "false" && $openstack_provider_enabled = "false" ]]; then
         echo "Please enable at least one of the IaaS providers in conf/setup.conf file"
@@ -404,39 +424,33 @@ if [[ $cep = "true" ]]; then
 fi
 
 
+# ------------------------------------------------
+# Setup SC
+# ------------------------------------------------
 if [[ $sc = "true" ]]; then
-    ##
-#    mysql -u${userstore_db_user} -p${userstore_db_pass} -e "GRANT ALL PRIVILEGES ON *.* TO '${userstore_db_user}'@'%'   IDENTIFIED BY '${userstore_db_pass}' WITH GRANT OPTION;flush privileges;"
-
-
-    # Setup SC
-    #--------------------------------------------------
     echo "Setup SC" >> $LOG
-    echo "Configuring SC"
+    echo "Configuring Stratos Controller"
 
-    cp -f ./config/sc/repository/conf/cartridge-config.properties $sc_path/repository/conf/
     cp -f ./config/sc/repository/conf/carbon.xml $sc_path/repository/conf/
-    cp -f ./config/sc/repository/conf/axis2/axis2.xml $sc_path/repository/conf/axis2
-    cp -f ./config/sc/bin/stratos.sh $sc_path/bin/
-    cp -fr ./config/sc/repository/resources/user-data/* $sc_path/repository/resources/user-data/
+    cp -f ./config/cc/repository/conf/jndi.properties $cc_path/repository/conf/
+    cp -f ./config/sc/repository/conf/cartridge-config.properties $sc_path/repository/conf/
     cp -f ./config/sc/repository/conf/datasources/master-datasources.xml $sc_path/repository/conf/datasources/
-    cp -f ./config/sc/repository/conf/datasources/stratos-datasources.xml $sc_path/repository/conf/datasources/
     cp -f $mysql_connector_jar $sc_path/repository/components/lib/
-    cp -f ./config/sc/repository/conf/log4j.properties  $sc_path/repository/conf/
-    cp -f ./config/sc/repository/conf/etc/logging-config.xml  $sc_path/repository/conf/etc/
+
     pushd $sc_path
 
-    echo "Set mb hostname and mb port in bin/stratos.sh." >> $LOG
-    cp -f ./bin/stratos.sh bin/stratos.sh.orig
-    cat bin/stratos.sh.orig | sed -e "s@MB_HOSTNAME:MB_LISTEN_PORT@$mb_hostname:$mb_listen_port@g" > bin/stratos.sh
+    echo "In repository/conf/carbon.xml"
+    cp -f repository/conf/carbon.xml repository/conf/carbon.xml.orig
+    cat repository/conf/carbon.xml.orig | sed -e "s@SC_PORT_OFFSET@$sc_port_offset@g" > repository/conf/carbon.xml
 
-    echo "Change CC hostname in repository/conf/cartridge-config.properties" >> $LOG
+    echo "In repository/conf/jndi.properties"
+    cp -f repository/conf/jndi.properties repository/conf/jndi.properties.orig
+    cat repository/conf/jndi.properties.orig | sed -e "s@MB_HOSTNAME:MB_LISTEN_PORT@$mb_hostname:$mb_listen_port@g" > repository/conf/jndi.properties
 
-    cp -f repository/conf/cartridge-config.properties repository/conf/cartridge-config.properties.orig
-    cat repository/conf/cartridge-config.properties.orig | sed -e "s@CC_HOSTNAME:CC_HTTPS_PORT@$cc_hostname:$cc_https_port@g" > repository/conf/cartridge-config.properties
+    echo "In repository/conf/cartridge-config.properties" >> $LOG
 
     cp -f repository/conf/cartridge-config.properties repository/conf/cartridge-config.properties.orig
-    cat repository/conf/cartridge-config.properties.orig | sed -e "s@AGENT_HOSTNAME:AGENT_PORT@$agent_ip:$agent_https_port@g" > repository/conf/cartridge-config.properties
+    cat repository/conf/cartridge-config.properties.orig | sed -e "s@CC_HOSTNAME:CC_HTTPS_PORT@$cc_hostname:$cc_https_port@g" > repository/conf/cartridge-config.properties
 
     cp -f repository/conf/cartridge-config.properties repository/conf/cartridge-config.properties.orig
     cat repository/conf/cartridge-config.properties.orig | sed -e "s@STRATOS_DOMAIN@$stratos_domain@g" > repository/conf/cartridge-config.properties
@@ -461,28 +475,7 @@ if [[ $sc = "true" ]]; then
     cp -f repository/conf/cartridge-config.properties repository/conf/cartridge-config.properties.orig
     cat repository/conf/cartridge-config.properties.orig | sed -e "s@STRATOS_FOUNDATION_DB_SCHEMA@$stratos_foundation_db_schema@g" > repository/conf/cartridge-config.properties
 
-    cp -f repository/conf/cartridge-config.properties repository/conf/cartridge-config.properties.orig
-    cat repository/conf/cartridge-config.properties.orig | sed -e "s@MB_HOSTNAME:MB_LISTEN_PORT@$mb_hostname:$mb_listen_port@g" > repository/conf/cartridge-config.properties
-
-    cp -f repository/conf/cartridge-config.properties repository/conf/cartridge-config.properties.orig
-    cat repository/conf/cartridge-config.properties.orig | sed -e "s@ELB_IP@$elb_ip@g" > repository/conf/cartridge-config.properties
-
-    cp -f repository/conf/cartridge-config.properties repository/conf/cartridge-config.properties.orig
-    cat repository/conf/cartridge-config.properties.orig | sed -e "s@BAM_IP@$bam_ip@g" > repository/conf/cartridge-config.properties
-
-    cp -f repository/conf/cartridge-config.properties repository/conf/cartridge-config.properties.orig
-    cat repository/conf/cartridge-config.properties.orig | sed -e "s@BAM_PORT@$bam_port@g" > repository/conf/cartridge-config.properties
-
-    cp -f repository/conf/cartridge-config.properties repository/conf/cartridge-config.properties.orig
-    cat repository/conf/cartridge-config.properties.orig | sed -e "s@KEYPAIR_PATH@$keypair_path@g" > repository/conf/cartridge-config.properties
-
-    cp -f repository/conf/cartridge-config.properties repository/conf/cartridge-config.properties.orig
-    cat repository/conf/cartridge-config.properties.orig | sed -e "s@SCRIPT_PATH@$script_path@g" > repository/conf/cartridge-config.properties
-
-    cp -f repository/conf/cartridge-config.properties repository/conf/cartridge-config.properties.orig
-    cat repository/conf/cartridge-config.properties.orig | sed -e "s@HOST_USER@$host_user@g" > repository/conf/cartridge-config.properties
-
-    echo "Change mysql password in repository/conf/datasources/master-datasources.xml" >> $LOG
+    echo "In repository/conf/datasources/master-datasources.xml" >> $LOG
     cp -f repository/conf/datasources/master-datasources.xml repository/conf/datasources/master-datasources.xml.orig
     cat repository/conf/datasources/master-datasources.xml.orig | sed -e "s@USERSTORE_DB_HOSTNAME@$userstore_db_hostname@g" > repository/conf/datasources/master-datasources.xml
 
@@ -498,37 +491,6 @@ if [[ $sc = "true" ]]; then
     cp -f repository/conf/datasources/master-datasources.xml repository/conf/datasources/master-datasources.xml.orig
     cat repository/conf/datasources/master-datasources.xml.orig | sed -e "s@USERSTORE_DB_PASS@$userstore_db_pass@g" > repository/conf/datasources/master-datasources.xml
 
-    echo "Change mysql password in repository/conf/datasources/master-datasources.xml" >> $LOG
-    cp -f repository/conf/datasources/stratos-datasources.xml repository/conf/datasources/stratos-datasources.xml.orig
-    cat repository/conf/datasources/stratos-datasources.xml.orig | sed -e "s@BILLING_DB_HOSTNAME@$billing_db_hostanme@g" > repository/conf/datasources/stratos-datasources.xml
-
-    cp -f repository/conf/datasources/stratos-datasources.xml repository/conf/datasources/stratos-datasources.xml.orig
-    cat repository/conf/datasources/stratos-datasources.xml.orig | sed -e "s@BILLING_DB_PORT@$billing_db_port@g" > repository/conf/datasources/stratos-datasources.xml
-
-    cp -f repository/conf/datasources/stratos-datasources.xml repository/conf/datasources/stratos-datasources.xml.orig
-    cat repository/conf/datasources/stratos-datasources.xml.orig | sed -e "s@BILLING_DB_SCHEMA@$billing_db_schema@g" > repository/conf/datasources/stratos-datasources.xml
-
-    cp -f repository/conf/datasources/stratos-datasources.xml repository/conf/datasources/stratos-datasources.xml.orig
-    cat repository/conf/datasources/stratos-datasources.xml.orig | sed -e "s@BILLING_USERNAME@$billing_db_username@g" > repository/conf/datasources/stratos-datasources.xml
-
-    cp -f repository/conf/datasources/stratos-datasources.xml repository/conf/datasources/stratos-datasources.xml.orig
-    cat repository/conf/datasources/stratos-datasources.xml.orig | sed -e "s@BILLING_PASSWORD@$billing_db_password@g" > repository/conf/datasources/stratos-datasources.xml
-    
-    cp -f repository/conf/axis2/axis2.xml repository/conf/axis2/axis2.xml.orig
-    cat repository/conf/axis2/axis2.xml.orig | sed -e "s@SC_HOSTNAME@${sc_hostname}@g" > repository/conf/axis2/axis2.xml
-    
-    cp -f repository/conf/axis2/axis2.xml repository/conf/axis2/axis2.xml.orig
-    cat repository/conf/axis2/axis2.xml.orig | sed -e "s@SC_CLUSTER_PORT@${sc_cluster_port}@g" > repository/conf/axis2/axis2.xml
-    
-    cp -f repository/conf/carbon.xml repository/conf/carbon.xml.orig
-    cat repository/conf/carbon.xml.orig | sed -e "s@SC_PORT_OFFSET@${sc_port_offset}@g" > repository/conf/carbon.xml
-    
-    cp -f repository/conf/log4j.properties repository/conf/log4j.properties.orig
-    cat repository/conf/log4j.properties.orig | sed -e "s@BAM_HOSTNAME:BAM_RECEIVER_PORT@$bam_hostname:$bam_reciever_port@g" > repository/conf/log4j.properties
-
-    cp -f repository/conf/etc/logging-config.xml repository/conf/etc/logging-config.xml.orig
-    cat repository/conf/etc/logging-config.xml.orig | sed -e "s@BAM_HOSTNAME:CASSANDRA_PORT@$bam_hostname:$cassandra_port@g" > repository/conf/etc/logging-config.xml
-
     popd # sc_path
 
 
@@ -538,29 +500,10 @@ if [[ $sc = "true" ]]; then
 
     echo "Creating userstore database"
     mysql -u$userstore_db_user -p$userstore_db_pass < $resource_path/userstore.sql
-    #mysql -u$userstore_db_user -p$userstore_db_pass < $resource_path/registry.sql   #registry schema is only for AF
     
     echo "Creating stratos_foundation database"
     mysql -u$stratos_foundation_db_user -p$stratos_foundation_db_pass < $resource_path/stratos_foundation.sql
 
-    #mysql -u$billing_db_username -p$billing_db_password < $resource_path/billing-mysql.sql
-
-    #mysql -u$billing_db_username -p$billing_db_password < $resource_path/metering_mysql.sql
-
-    #Namespace Binding
-    # -----------------------------------------------
-    echo "bind Namespaces" >> $LOG
-    #apt-get install bind9 zip
-    #Copy the /db.stratos.com file into /etc/bind. Edit it as necessary
-    #cp -f ./resources/db.stratos.com $resource_path/db.$stratos_domain
-    #echo "Set ELb Hostname in /etc/bind/db.stratos.com" >> $LOG
-    #cat $resource_path/db.$stratos_domain | sed -e "s@SC_HOSTNAME@$sc_hostname@g" | sed -e "s@ELB_IP@$elb_ip@g" | sed -e "s@STRATOS_DOMAIN@$stratos_domain@g" > /etc/bind/db.$stratos_domain
-
-    #echo "Add the following content to /etc/bind/named.conf.local" >> $LOG
-    #echo "zone \"$stratos_domain\" {" >> /etc/bind/named.conf.local
-    #echo "      type master;" >> /etc/bind/named.conf.local
-    #echo "      file \"/etc/bind/db.$stratos_domain\";" >> /etc/bind/named.conf.local
-    #echo "};" >> /etc/bind/named.conf.local
 
     #Copy https://svn.wso2.org/repos/wso2/scratch/hosting/build/tropos/resources/append_zone_file.sh into /opt/scripts folder
     if [[ ! -d $stratos_path/scripts ]]; then
@@ -671,71 +614,9 @@ if [[ $as = "true" ]]; then
 fi
 
 
-# Setup BAM
-# --------------------------------------------------
-if [[ $bam = "true" ]]; then
- echo "Setup BAM" >> $LOG
- echo "Configuring the BAM"
- cp -f ./config/bam/bin/stratos.sh $bam_path/bin/
- cp -f ./config/bam/repository/conf/carbon.xml $bam_path/repository/conf/
- cp -f ./config/bam/repository/conf/etc/cassandra-component.xml $bam_path/repository/conf/etc/
- cp -f ./config/bam/repository/conf/etc/cassandra.yaml $bam_path/repository/conf/etc/
- cp -f ./config/bam/repository/conf/datasources/master-datasources.xml $bam_path/repository/conf/datasources/
- cp -f $mysql_connector_jar $bam_path/repository/components/lib/
-
-  pushd $bam_path
-
-  cp -f repository/conf/carbon.xml repository/conf/carbon.xml.orig
-  cat repository/conf/carbon.xml.orig | sed -e "s@BAM_PORT_OFFSET@${bam_port_offset}@g" > repository/conf/carbon.xml
-
-  cp -f repository/conf/etc/cassandra.yaml repository/conf/etc/cassandra.yaml.orig
-  cat repository/conf/etc/cassandra.yaml.orig | sed -e "s@BAM_HOSTNAME@${bam_hostname}@g" > repository/conf/etc/cassandra.yaml
-
-  cp -f repository/conf/etc/cassandra-component.xml repository/conf/etc/cassandra-component.xml.orig
-  cat repository/conf/etc/cassandra-component.xml.orig | sed -e "s@BAM_HOSTNAME:CASSANDRA_PORT@$bam_hostname:$cassandra_port@g" > repository/conf/etc/cassandra-component.xml
-
- echo "Change mysql password in repository/conf/datasources/master-datasources.xml" >> $LOG
-    cp -f repository/conf/datasources/master-datasources.xml repository/conf/datasources/master-datasources.xml.orig
-    cat repository/conf/datasources/master-datasources.xml.orig | sed -e "s@BILLING_DB_HOSTNAME@$billing_db_hostanme@g" > repository/conf/datasources/master-datasources.xml
-
-    cp -f repository/conf/datasources/master-datasources.xml repository/conf/datasources/master-datasources.xml.orig
-    cat repository/conf/datasources/master-datasources.xml.orig | sed -e "s@BILLING_DB_PORT@$billing_db_port@g" > repository/conf/datasources/master-datasources.xml
-
-    cp -f repository/conf/datasources/master-datasources.xml repository/conf/datasources/master-datasources.xml.orig
-    cat repository/conf/datasources/master-datasources.xml.orig | sed -e "s@BILLING_DB_SCHEMA@$billing_db_schema@g" > repository/conf/datasources/master-datasources.xml
-
-    cp -f repository/conf/datasources/master-datasources.xml repository/conf/datasources/master-datasources.xml.orig
-    cat repository/conf/datasources/master-datasources.xml.orig | sed -e "s@BILLING_USERNAME@$billing_db_username@g" > repository/conf/datasources/master-datasources.xml
-
-    cp -f repository/conf/datasources/master-datasources.xml repository/conf/datasources/master-datasources.xml.orig
-    cat repository/conf/datasources/master-datasources.xml.orig | sed -e "s@BILLING_PASSWORD@$billing_db_password@g" > repository/conf/datasources/master-datasources.xml
-
- popd #bam_path
-fi
-
-
-# Configure cartridges
-# ---------------------------------------------------------
-if [[ "$openstack_provider_enabled" = "true" ]]; then
-    ./openstack-cartridge.sh
-fi
-if [[ "$ec2_provider_enabled" = "true" ]]; then
-    ./ec2-cartridge.sh
-fi
-
-echo 'Changing owner of '$stratos_path' to '$host_user:$host_user
-chown $host_user:$host_user $stratos_path -R
-
-echo "Apache Stratos setup has successfully completed"
-
-read -p "Do you want to start the servers [y/n]? " answer
-if [[ $answer != y ]] ; then
-    exit 1
-fi
-
-
+# ------------------------------------------------
 # Starting the servers
-# ---------------------------------------------------------
+# ------------------------------------------------
 echo "Starting the servers" >> $LOG
 #Starting the servers in the following order is recommended
 #mb, cc, elb, is, agent, sc

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/d56fb769/tools/stratos-installer/start-servers.sh
----------------------------------------------------------------------
diff --git a/tools/stratos-installer/start-servers.sh b/tools/stratos-installer/start-servers.sh
index 1e4b851..414b8ab 100755
--- a/tools/stratos-installer/start-servers.sh
+++ b/tools/stratos-installer/start-servers.sh
@@ -156,7 +156,7 @@ if [[ $sc = "true" ]]; then
     echo ${sc_path}
 
     echo "Starting SC server ..." >> $LOG
-    nohup ${sc_path}/bin/stratos.sh -DportOffset=$sc_port_offset &
+    nohup ${sc_path}/bin/stratos.sh &
     echo "SC server started" >> $LOG
     sleep $SLEEP