<?xml version="1.0" encoding="ISO-8859-1"?>
<!--

    Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0, which is available at
    http://www.eclipse.org/legal/epl-2.0.

    This Source Code may also be made available under the following Secondary
    Licenses when the conditions for such availability set forth in the
    Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
    version 2 with the GNU Classpath Exception, which is available at
    https://www.gnu.org/software/classpath/license.html.

    SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

-->

<!-- configuration -->
<property environment="env"/>
<property file="${env.APS_HOME}/config.properties"/>
<property file="${env.APS_HOME}/../bootstrap/bootstrap.properties"/>
<property name="inst" value="${env.S1AS_HOME}"/>
<property name="java.home" value="${env.JAVA_HOME}"/>
<property name="s1as.home" value="${env.S1AS_HOME}"/>
<property name="testsRoot" value="${env.APS_HOME}/devtests/jms"/>
<property name="passwordFile" value="${testsRoot}/password.txt"/>
<property name="mqPasswordFile" value="${testsRoot}/mqpassword.txt"/>
<property name="testDomain" value="jmstest-domain"/>
<property name="testServer" value="jmstest-server"/>
<property name="testCluster" value="jmstest-cluster"/>
<property name="testClusterServer1" value="jmstest-cluster-server1"/>
<property name="testClusterServer2" value="jmstest-cluster-server2"/>

<property name="deploy.clusterinstance1.httpport" value="2001"/>
<property name="deploy.clusterinstance2.httpport" value="2002"/>
<property name="deploy.serverinstance.httpport" value="2000"/>
<property name="deploy.clusterinstance1.orbport" value="2201"/>
<property name="deploy.clusterinstance2.orbport" value="2202"/>
<property name="deploy.serverinstance.orbport" value="2200"/>

<property name="testDomain.dir" value="${s1as.home}/domains/${testDomain}"/>
<property name="node.dir" value="localhost-${testDomain}"/>
<property name="testServer.dir" value="${s1as.home}/nodes/${node.dir}/${testServer}"/>
<property name="testClusterServer1.dir" value="${s1as.home}/nodes/${node.dir}/${testClusterServer1}"/>

<property name="start.process.delay.mins" value="1"/>

<target name="setOSProps" depends="setUnixProps, setWindowsProps"/>

<target name="detectOS">
    <condition property="isWindows">
      <os family="windows" />
    </condition>
</target>

<target name="setUnixProps" if="isWindows" depends="detectOS">
    <property name="IMQCMD" value="${env.S1AS_HOME}/../mq/bin/imqcmd.exe"/>
</target>

<target name="setWindowsProps" unless="isWindows" depends="detectOS">
    <property name="IMQCMD" value="${env.S1AS_HOME}/../mq/bin/imqcmd"/>
</target>

<target name="setupCluster" depends="init-common">
    <echo message="Running... asadmin create-cluster"/>
    <exec executable="${ASADMIN}" failonerror="true">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} create-cluster ${testCluster}"/>
    </exec>
    <exec executable="${ASADMIN}" failonerror="true">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} create-local-instance --cluster ${testCluster} --systemproperties HTTP_LISTENER_PORT=${deploy.clusterinstance1.httpport}:HTTP_SSL_LISTENER_PORT=2101:IIOP_LISTENER_PORT=${deploy.clusterinstance1.orbport}:IIOP_SSL_LISTENER_PORT=2301:IIOP_SSL_MUTUALAUTH_PORT=2401:JMX_SYSTEM_CONNECTOR_PORT=2501:JMS_PROVIDER_PORT=2601:ASADMIN_LISTENER_PORT=2701 ${testClusterServer1}"/>
    </exec>
    <exec executable="${ASADMIN}" failonerror="true">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} set configs.config.${testCluster}-config.jms-service.type=${jmsServiceType}"/>
    </exec>
    <exec executable="${ASADMIN}" failonerror="true">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} set configs.config.${testCluster}-config.jms-service.start-args=&quot;-vmargs -Xmx256m&quot;"/>
    </exec>
    <exec executable="${ASADMIN}" failonerror="true">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} create-local-instance --cluster ${testCluster} --systemproperties HTTP_LISTENER_PORT=${deploy.clusterinstance2.httpport}:HTTP_SSL_LISTENER_PORT=2102:IIOP_LISTENER_PORT=${deploy.clusterinstance2.orbport}:IIOP_SSL_LISTENER_PORT=2302:IIOP_SSL_MUTUALAUTH_PORT=2402:JMX_SYSTEM_CONNECTOR_PORT=2502:JMS_PROVIDER_PORT=2602:ASADMIN_LISTENER_PORT=2702 ${testClusterServer2}"/>
    </exec>
    <echo message="Running... asadmin start-cluster"/>
    <antcall target="startCluster"/>
    <exec executable="${ASADMIN}">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} list-instances"/>
    </exec>
    <echo message="Wait 3 minutes for jms service ready"/>
    <sleep seconds="180"/>
    <!--<antcall target="pingClusterJMS"/>-->
</target>

<target name="pingClusterJMS">
    <exec executable="${ASADMIN}" failonerror="true">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} jms-ping --target ${testCluster}"/>
    </exec>
</target>

<target name="startCluster">
    <echo message="Running... asadmin start-cluster"/>
    <antcall target="start-process">
        <param name="line" value="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} start-instance ${testClusterServer1}"/>
    </antcall>
    <waitfor timeoutproperty="unableToStart">
      <http url="http://localhost:${deploy.clusterinstance1.httpport}"/>
    </waitfor>
    <antcall target="start-process">
        <param name="line" value="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} start-instance ${testClusterServer2}"/>
    </antcall>
    <waitfor timeoutproperty="unableToStart">
      <http url="http://localhost:${deploy.clusterinstance2.httpport}"/>
    </waitfor>
</target>

<target name="stopCluster">
    <echo message="Running... asadmin stop-cluster"/>
    <exec executable="${ASADMIN}" failonerror="true">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} stop-cluster ${testCluster}"/>
    </exec>
</target>

<target name="deleteCluster">
    <!-- stop-cluster does not work so use stop-instance to make sure
         instance is stopped before deleting it -->
    <echo message="Running... asadmin stop-instance"/>
    <exec executable="${ASADMIN}">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} stop-local-instance ${testClusterServer2}"/>
    </exec>
    <exec executable="${ASADMIN}">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} stop-local-instance ${testClusterServer1}"/>
    </exec>
    <echo message="Running... asadmin delete-instance"/>
    <exec executable="${ASADMIN}">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} delete-local-instance ${testClusterServer2}"/>
    </exec>
    <exec executable="${ASADMIN}">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} delete-local-instance ${testClusterServer1}"/>
    </exec>
    <echo message="Running... asadmin delete-cluster"/>
    <exec executable="${ASADMIN}">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} delete-cluster ${testCluster}"/>
    </exec>
</target>

<target name="deploy-common-cluster" depends="init-common">
    <echo message="Deploying to Cluster..."/>
    <property name="deployed.app" value="${assemble.dir}/${appname}App.ear"/>
    <exec executable="${ASADMIN}" failonerror="true">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} deploy --force --target ${testCluster} ${deployed.app}"/>
    </exec>
    <echo message="Deployment on target cluster ${testCluster} successful"/>
</target>

<target name="undeploy-common-cluster" depends="init-common">
    <echo message="Undeploying from Cluster..."/>
  <property name="deployedapp.name" value="${appname}App"/>
  <property name="extra-params" value=""/>
    <exec executable="${ASADMIN}" failonerror="true">
        <arg line="--port ${admin.port} --user ${admin.user} --passwordfile ${passwordFile} undeploy --target ${testCluster} ${deployedapp.name}"/>
    </exec>
</target>

<!--
  On Windows, ant hangs when it runs an asadmin command that starts a process.
  To work around that, this task distinguishes between Windows and non-Windows
  systems and uses a custom ant task for Windows.

  Any test that needs to start a process should NOT use ${ASADMIN} directly
  but should call this start-process target instead.  Pass the command line
  to be run as <param name="line" value="..."/>.
-->

<target name="start-process" depends="init-common">
  <!--
    Set a property to the target to invoke, depending on the platform type.
  -->
  <condition property="start-target" value="start-process-windows">
    <isset property="isWindows"/>
  </condition>
  <condition property="start-target" value="start-process-non-windows">
    <not>
      <isset property="start-target"/>
    </not>
  </condition>

  <!--
    Invoke the target just chosen.
  -->
  <antcall target="${start-target}"/>
</target>


<!--
  The following task works around the Windows/Ant problem that causes
  the ant script to hang when it runs an asadmin command that starts
  a new process.
-->
<target name="start-process-windows" depends="init-common">
      <taskdef name="spawn"
        classname="SpawnTask"
        classpath="${env.APS_HOME}/lib"/>
      <echo>Executing asadmin command: ${line}</echo>
      <spawn executable="${ASADMIN}" failifexecutionfails="false">
        <arg line="${line}"/>
      </spawn>
      <echo message=" ...Waiting for process(es) to be up ...(sleeping for ${start.process.delay.mins} minutes) " />
      <sleep minutes="${start.process.delay.mins}"/>
      <echo message=" Process(es) now assumed to be started."/>
</target>

<!--
  For non-Windows systems, ant works fine when invoking asadmin to start a
  process, so do it that way for those systems.
-->
<target name="start-process-non-windows" depends="init-common">
    <exec executable="${ASADMIN}" failonerror="true">
        <arg line="${line}"/>
    </exec>
</target>
