X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Fintegration%2Finclude-raw-integration-configure-clustering.sh;h=fda080ddf10716cf8446a33f30fa4cb3577f1cee;hb=refs%2Fchanges%2F17%2F38317%2F2;hp=35b7f08c04b8e1c9f35f1146d96153f77d4c09b5;hpb=b8c6801eb6b1bf677ce8602f304a429d4f8e6062;p=releng%2Fbuilder.git diff --git a/jjb/integration/include-raw-integration-configure-clustering.sh b/jjb/integration/include-raw-integration-configure-clustering.sh index 35b7f08c0..fda080ddf 100644 --- a/jjb/integration/include-raw-integration-configure-clustering.sh +++ b/jjb/integration/include-raw-integration-configure-clustering.sh @@ -5,62 +5,111 @@ echo "#################################################" AKKACONF=/tmp/${BUNDLEFOLDER}/configuration/initial/akka.conf MODULESCONF=/tmp/${BUNDLEFOLDER}/configuration/initial/modules.conf MODULESHARDSCONF=/tmp/${BUNDLEFOLDER}/configuration/initial/module-shards.conf -JOLOKIACONF=/tmp/${BUNDLEFOLDER}/deploy/jolokia.xml +CONTROLLERMEM="2048m" + +if [ ${CONTROLLERSCOPE} == 'all' ]; then + ACTUALFEATURES="odl-integration-compatible-with-all,${CONTROLLERFEATURES}" + CONTROLLERMEM="3072m" +else + ACTUALFEATURES="${CONTROLLERFEATURES}" +fi +# Some versions of jenkins job builder result in feature list containing spaces +# and ending in newline. Remove all that. +ACTUALFEATURES=`echo "${ACTUALFEATURES}" | tr -d '\n \r'` # Utility function for joining strings. function join { - delim=',\n\t\t' + delim=' ' final=$1; shift for str in $* ; do - final=${final}${delim}${str} + final=${final}${delim}${str} done echo ${final} } -# Create the strings for data and rpc seed nodes -# First create various arrays with one element per controller. -# Then merge each array using the join utility defined above. - +# Create the string for nodes for i in `seq 1 ${NUM_ODL_SYSTEM}` ; do CONTROLLERIP=ODL_SYSTEM_${i}_IP - data_seed_nodes[$i]=\\\"akka.tcp:\\/\\/opendaylight-cluster-data@${!CONTROLLERIP}:2550\\\" - rpc_seed_nodes[$i]=\\\"akka.tcp:\\/\\/odl-cluster-rpc@${!CONTROLLERIP}:2551\\\" - member_names[$i]=\\\"member-${i}\\\" + nodes[$i]=${!CONTROLLERIP} done -data_seed_list=$(join ${data_seed_nodes[@]}) -rpc_seed_list=$(join ${rpc_seed_nodes[@]}) -member_name_list=$(join ${member_names[@]}) +nodes_list=$(join ${nodes[@]}) + +echo ${nodes_list} -# echo ${data_seed_list} -# echo ${rpc_seed_list} -# echo ${member_name_list} +# Run script plan in case it exists +if [ -f ${WORKSPACE}/test/csit/scriptplans/${TESTPLAN} ]; then + echo "scriptplan exists!!!" + echo "Changing the scriptplan path..." + cat ${WORKSPACE}/test/csit/scriptplans/${TESTPLAN} | sed "s:integration:${WORKSPACE}:" > scriptplan.txt + cat scriptplan.txt + for line in $( egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' scriptplan.txt ); do + echo "Executing ${line}..." + source ${line} + done +fi # Create the configuration script to be run on controllers. cat > ${WORKSPACE}/configuration-script.sh <> \${CUSTOMPROP} + cat \${CUSTOMPROP} +fi + +echo "Configure java home and max memory..." +MEMCONF=/tmp/${BUNDLEFOLDER}/bin/setenv +sed -ie 's%^# export JAVA_HOME%export JAVA_HOME="\${JAVA_HOME:-${JAVA_HOME}}"%g' \${MEMCONF} +sed -ie 's/JAVA_MAX_MEM="2048m"/JAVA_MAX_MEM="${CONTROLLERMEM}"/g' \${MEMCONF} +cat \${MEMCONF} + +echo "Set Java version" +sudo /usr/sbin/alternatives --install /usr/bin/java java ${JAVA_HOME}/bin/java 1 +sudo /usr/sbin/alternatives --set java ${JAVA_HOME}/bin/java +echo "JDK default version ..." +java -version + +echo "Set JAVA_HOME" +export JAVA_HOME="${JAVA_HOME}" +# Did you know that in HERE documents, single quote is an ordinary character, but backticks are still executing? +JAVA_RESOLVED=\`readlink -e "\${JAVA_HOME}/bin/java"\` +echo "Java binary pointed at by JAVA_HOME: \${JAVA_RESOLVED}" + +# Copy shard file if exists +if [ -f /tmp/custom_shard_config.txt ]; then + echo "Custom shard config exists!!!" + echo "Copying the shard config..." + cp /tmp/custom_shard_config.txt /tmp/${BUNDLEFOLDER}/bin/ +fi + +echo "Configuring cluster" +/tmp/${BUNDLEFOLDER}/bin/configure_cluster.sh \$1 ${nodes_list} echo "Dump akka.conf" cat ${AKKACONF} @@ -71,6 +120,11 @@ cat ${MODULESCONF} echo "Dump module-shards.conf" cat ${MODULESHARDSCONF} +EOF + +# Create the startup script to be run on controllers. +cat > ${WORKSPACE}/startup-script.sh <