Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

319 lines (233 sloc) 10.254 kb
<?xml version="1.0"?>
<project name="portal-test-cluster" basedir="." default="test" xmlns:antelope="antlib:ise.antelope.tasks">
<import file="build-test.xml" />
<target name="prepare-cluster-apache-node-1">
<if>
<or>
<not>
<isset property="apache.http.win32.dir" />
</not>
<not>
<isset property="apache.http.win32.install" />
</not>
<not>
<isset property="apache.http.win32.modjk" />
</not>
</or>
<then>
<fail>
.
Please set "apache.http.win32.dir", "apache.http.win32.install", and
"apache.http.win32.modjk" in test.properties to point to an Apache installation
file.
</fail>
</then>
</if>
<exec executable="${pscp.executable}">
<arg line="-pw ${vm.password} ${apache.http.win32.dir}${apache.http.win32.install} ${vm.username}@${vm.host.cluster-node-1}:/" />
</exec>
<exec executable="${plink.executable}">
<arg line="-pw ${vm.password} ${vm.username}@${vm.host.cluster-node-1} cmd.exe /c msiexec /i C:\${apache.http.win32.install} /quiet" />
</exec>
<property name="remote.host" value="${vm.host.cluster-node-1}" />
<property name="remote.file" value="/Progra~1/Apache~1/Apache2.2/conf/httpd.conf" />
<tstamp>
<format property="tstamp.value" pattern="yyyyMMddkkmmssSSS" />
</tstamp>
<exec executable="${pscp.executable}">
<arg line="-pw ${vm.password} ${vm.username}@${remote.host}:${remote.file} ${tstamp.value}" />
</exec>
<replace file="${tstamp.value}">
<replacetoken><![CDATA[ServerAdmin ]]></replacetoken>
<replacevalue><![CDATA[ServerAdmin admin@localhost]]></replacevalue>
</replace>
<echo file="${tstamp.value}" append="true">${line.separator}Include conf.d/*.conf</echo>
<exec executable="${pscp.executable}">
<arg line="-pw ${vm.password} ${tstamp.value} ${vm.username}@${remote.host}:${remote.file}" />
</exec>
<delete file="${tstamp.value}" />
<exec executable="${pscp.executable}">
<arg line="-pw ${vm.password} ${apache.http.win32.dir}${apache.http.win32.modjk} ${vm.username}@${vm.host.cluster-node-1}:/Progra~1/Apache~1/Apache2.2/modules" />
</exec>
<tstamp>
<format property="tstamp.value" pattern="yyyyMMddkkmmssSSS" />
</tstamp>
<mkdir dir="${tstamp.value}/conf" />
<mkdir dir="${tstamp.value}/conf.d" />
<echo file="${tstamp.value}/conf/workers.properties">worker.list=node-1,node-2,loadbalancer
worker.node-1.port=8009
worker.node-1.host=${vm.host.cluster-node-1}
worker.node-1.type=ajp13
worker.node-1.connection_pool_size=10
worker.node-2.port=8009
worker.node-2.host=${vm.host.cluster-node-2}
worker.node-2.type=ajp13
worker.node-2.connection_pool_size=10
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=node-1,node-2
worker.loadbalancer.sticky_session=1</echo>
<echo file="${tstamp.value}/conf.d/mod_jk.conf">LoadModule jk_module modules/${apache.http.win32.modjk}
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkLogLevel info
JkShmFile logs/jk-runtime-status</echo>
<echo file="${tstamp.value}/conf.d/virtual_host.conf"><![CDATA[NameVirtualHost *:80
<VirtualHost *:80>
JkMount /* loadbalancer
</VirtualHost>]]></echo>
<exec executable="${pscp.executable}">
<arg line="-pw ${vm.password} -r ${tstamp.value}/conf ${vm.username}@${vm.host.cluster-node-1}:/Progra~1/Apache~1/Apache2.2" />
</exec>
<exec executable="${pscp.executable}">
<arg line="-pw ${vm.password} -r ${tstamp.value}/conf.d ${vm.username}@${vm.host.cluster-node-1}:/Progra~1/Apache~1/Apache2.2" />
</exec>
<delete dir="${tstamp.value}" />
<exec executable="${plink.executable}">
<arg line="-pw ${vm.password} ${vm.username}@${vm.host.cluster-node-1} C:\Progra~1\Apache~1\Apache2.2\bin\httpd.exe -k install -n Apache2.2 -f C:\Progra~1\Apache~1\Apache2.2\conf\httpd.conf" />
</exec>
</target>
<target name="prepare-cluster-tomcat">
<antcall target="prepare-cluster-tomcat-node-1" />
<antcall target="prepare-cluster-tomcat-node-2" />
</target>
<target name="prepare-cluster-tomcat-node-1">
<ant antfile="build-test-tomcat.xml" target="prepare-cluster-tomcat-node">
<property name="cluster-node.host" value="${vm.host.cluster-node-1}" />
<property name="cluster-node.value" value="node-1" />
</ant>
</target>
<target name="prepare-cluster-tomcat-node-2">
<ant antfile="build-test-tomcat.xml" target="prepare-cluster-tomcat-node">
<property name="cluster-node.host" value="${vm.host.cluster-node-2}" />
<property name="cluster-node.value" value="node-2" />
</ant>
</target>
<target name="prepare-cluster-vm-node">
<echo>Copying ${vm.drive}\${cluster-node.host}\${cluster-node.host}.vmdk.alpha-2010-02-02 to ${vm.drive}\${cluster-node.host}\${cluster-node.host}.vmdk</echo>
<exec executable="cmd">
<arg line="/c copy /y ${vm.drive}\${cluster-node.host}\${cluster-node.host}.vmdk.alpha-2010-02-02 ${vm.drive}\${cluster-node.host}\${cluster-node.host}.vmdk" />
</exec>
<exec dir="${vm.drive}/${cluster-node.host}" executable="${vmware-cmd.executable}">
<arg line="${vm.drive}\${cluster-node.host}\${cluster-node.host}.vmx start" />
</exec>
<sleep seconds="30" />
<echo file="execute-remote-command.bat">
if not exist C:\Java\jdk-1.6.0_23 ${unzip.executable} -oq ${java.jdk.zip} -d C:\Java
${setx.executable} /m JAVA_HOME C:\Java\jdk-1.6.0_23
if not %PATH:~0,7%==C:\Java ${setx.executable} /m PATH "C:\Java\jdk-1.6.0_23\bin;%PATH%"
</echo>
<antcall target="execute-remote-command">
<param name="vm.host" value="${cluster-node.host}" />
</antcall>
<echo>Restarting ${cluster-node.host}.</echo>
<exec dir="${vm.drive}/${cluster-node.host}" executable="${vmware-cmd.executable}">
<arg line="${vm.drive}\${cluster-node.host}\${cluster-node.host}.vmx reset" />
</exec>
<sleep seconds="60" />
</target>
<target name="prepare-cluster-vm-node-1">
<antcall target="prepare-cluster-vm-node">
<param name="cluster-node.host" value="${vm.host.cluster-node-1}" />
</antcall>
</target>
<target name="prepare-cluster-vm-node-2">
<antcall target="prepare-cluster-vm-node">
<param name="cluster-node.host" value="${vm.host.cluster-node-2}" />
</antcall>
</target>
<target name="prepare-cluster-vms">
<antcall target="prepare-cluster-vm-node-1" />
<antcall target="prepare-cluster-vm-node-2" />
</target>
<target name="run-cluster-tomcat">
<antcall target="prepare-cluster-vms" />
<ant antfile="build-test-tomcat.xml" target="prepare-zip-tomcat" />
<antcall target="prepare-cluster-apache-node-1" />
<antcall target="prepare-cluster-tomcat" />
<antcall target="rebuild-database" inheritAll="false" />
<exec executable="${plink.executable}">
<arg line="-pw ${vm.password} ${vm.username}@${vm.host.cluster-node-1} cmd.exe /c net start Apache2.2" />
</exec>
<antcall target="startup-tomcat-cluster-node-1" />
<sleep seconds="60" />
<antcall target="startup-tomcat-cluster-node-2" />
<sleep seconds="60" />
<antcall target="revert-test-properties" />
<replace
file="portal-web/test/test-portal-web.properties"
token="localhost:8080"
value="${vm.host.cluster-node-1}"
/>
<echo file="portal-web/test/test-portal-web.properties" append="true">${line.separator}${line.separator}cluster.node1=${vm.host.cluster-node-1}${line.separator}cluster.node2=${vm.host.cluster-node-2}</echo>
<antcall target="start-selenium" />
<antcall target="run-selenium-test">
<param name="test.class" value="${test.ant.script.suite.1}" />
</antcall>
<antcall target="stop-selenium" />
<antcall target="shutdown-tomcat-cluster-node-2" />
<sleep seconds="30" />
<exec executable="${plink.executable}">
<arg line="-pw ${vm.password} ${vm.username}@${vm.host.cluster-node-2} TASKKILL /f /im java.exe" />
</exec>
<antcall target="start-selenium" />
<antcall target="run-selenium-test">
<param name="test.class" value="${test.ant.script.suite.2}" />
</antcall>
<antcall target="stop-selenium" />
<antcall target="startup-tomcat-cluster-node-2" />
<antcall target="shutdown-tomcat-cluster-node-1" />
<sleep seconds="30" />
<exec executable="${plink.executable}">
<arg line="-pw ${vm.password} ${vm.username}@${vm.host.cluster-node-1} TASKKILL /f /im java.exe" />
</exec>
<sleep seconds="30" />
<antcall target="start-selenium" />
<antcall target="run-selenium-test">
<param name="test.class" value="${test.ant.script.suite.3}" />
</antcall>
<antcall target="stop-selenium" />
<exec dir="${vm.drive}/${vm.host.cluster-node-1}" executable="${vmware-cmd.executable}">
<arg line="${vm.drive}\${vm.host.cluster-node-1}\${vm.host.cluster-node-1}.vmx stop hard" />
</exec>
<exec dir="${vm.drive}/${vm.host.cluster-node-2}" executable="${vmware-cmd.executable}">
<arg line="${vm.drive}\${vm.host.cluster-node-2}\${vm.host.cluster-node-2}.vmx stop hard" />
</exec>
</target>
<target name="shutdown-tomcat-cluster-node-1">
<echo file="execute-remote-command.bat">
cd C:\liferay-portal-${lp.version}\tomcat-${app.server.tomcat.version}\bin
shutdown.bat
</echo>
<antcall target="execute-remote-command">
<param name="vm.host" value="${vm.host.cluster-node-1}" />
</antcall>
</target>
<target name="shutdown-tomcat-cluster-node-2">
<echo file="execute-remote-command.bat">
cd C:\liferay-portal-${lp.version}\tomcat-${app.server.tomcat.version}\bin
shutdown.bat
</echo>
<antcall target="execute-remote-command">
<param name="vm.host" value="${vm.host.cluster-node-2}" />
</antcall>
</target>
<target name="startup-tomcat-cluster-node-1">
<echo file="execute-remote-command.bat">
cd C:\liferay-portal-${lp.version}\tomcat-${app.server.tomcat.version}\bin
startup.bat
</echo>
<antcall target="execute-remote-command">
<param name="vm.host" value="${vm.host.cluster-node-1}" />
</antcall>
</target>
<target name="startup-tomcat-cluster-node-2">
<echo file="execute-remote-command.bat">
cd C:\liferay-portal-${lp.version}\tomcat-${app.server.tomcat.version}\bin
startup.bat
</echo>
<antcall target="execute-remote-command">
<param name="vm.host" value="${vm.host.cluster-node-2}" />
</antcall>
</target>
</project>
Jump to Line
Something went wrong with that request. Please try again.