blob: 91b964a6d1f129f427f73bb0760324c62c135311 [file] [log] [blame]
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE project [
<!--
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
-->
<!ENTITY commonSetup SYSTEM "./../../../../config/properties.xml">
<!ENTITY commonBuild SYSTEM "./../../../../config/common.xml">
<!ENTITY testproperties SYSTEM "./build.properties">
]>
<project name="securitymapweb" default="usage" basedir=".">
&commonSetup;
&commonBuild;
&testproperties;
<target name="all" depends="clean,build,deploy,run,undeploy" />
<target name="clean" depends="init-common">
<antcall target="clean-common" />
</target>
<target name="compile">
<antcall target="compile-common">
<param name="src" value="client" />
</antcall>
</target>
<target name="build" depends="init-common,compile">
<mkdir dir="${assemble.dir}" />
<copy todir="${assemble.dir}">
<fileset dir="web" />
</copy>
<jar destfile="${build.base.dir}/${appname}.war" basedir="${assemble.dir}" />
</target>
<target name="deploy-war" depends="init-common">
<exec executable="${ASADMIN}" failonerror="false">
<arg line="deploy" />
<arg line="${as.props}" />
<arg line="${build.base.dir}/${appname}.war" />
</exec>
</target>
<target name="deploy" depends="init-common">
<antcall target="create-ra-config" />
<antcall target="setup-pool" />
<antcall target="create-users" />
<antcall target="create-security-maps" />
<antcall target="deploy-war" />
</target>
<target name="create-ra-config" depends="init-common">
<antcall target="asadmin-common">
<param name="admin.command"
value="create-resource-adapter-config --property RAProperty=VALID"
/>
<param name="operand.props" value="myds" />
</antcall>
</target>
<target name="delete-ra-config" depends="init-common">
<antcall target="asadmin-common">
<param name="admin.command" value="delete-resource-adapter-config" />
<param name="operand.props" value="myds" />
</antcall>
</target>
<target name="setup-pool" depends="init-common">
<exec executable="${ASADMIN}" failonerror="false">
<arg line="deploy" />
<arg line="${as.props}" />
<arg line="${bundles.dir}/connectors-ra-redeploy-rars.rar" />
</exec>
<antcall target="create-connector-connpool-common">
<param name="ra.name" value="connectors-ra-redeploy-rars" />
<param name="connection.defname" value="javax.sql.DataSource" />
<param name="connector.conpool.name" value="${poolname}" />
</antcall>
<exec executable="${ASADMIN}" failonerror="false">
<arg line="set" />
<arg line="${as.props}" />
<arg line="domain.resources.connector-connection-pool.${poolname}.property.ClassName=org.apache.derby.jdbc.ClientXADataSource"
/>
</exec>
<exec executable="${ASADMIN}" failonerror="false">
<arg line="set" />
<arg line="${as.props}" />
<arg line="domain.resources.connector-connection-pool.${poolname}.property.DataBaseName=testdb"
/>
</exec>
<exec executable="${ASADMIN}" failonerror="false">
<arg line="set" />
<arg line="${as.props}" />
<arg line="domain.resources.connector-connection-pool.${poolname}.property.ServerName=localhost"
/>
</exec>
<exec executable="${ASADMIN}" failonerror="false">
<arg line="set" />
<arg line="${as.props}" />
<arg line="domain.resources.connector-connection-pool.${poolname}.property.PortNumber=1527" />
</exec>
<exec executable="${ASADMIN}" failonerror="false">
<arg line="set" />
<arg line="${as.props}" />
<arg line="domain.resources.connector-connection-pool.${poolname}.property.User=${db.user}" />
</exec>
<exec executable="${ASADMIN}" failonerror="false">
<arg line="set" />
<arg line="${as.props}" />
<arg line="domain.resources.connector-connection-pool.${poolname}.property.Password=${db.pwd}"
/>
</exec>
<exec executable="${ASADMIN}" failonerror="false">
<arg line="set" />
<arg line="${as.props}" />
<arg line="domain.resources.connector-connection-pool.${poolname}.property.ConnectionAttributes=;create=true"
/>
</exec>
<antcall target="create-connector-resource-common">
<param name="connector.conpool.name" value="${poolname}" />
<param name="connector.jndi.name" value="eis/${poolname}" />
</antcall>
</target>
<target name="delete-pool" depends="init-common">
<antcall target="delete-connector-resource-common">
<param name="connector.jndi.name" value="eis/${poolname}" />
</antcall>
<antcall target="delete-connector-connpool-common">
<param name="connector.conpool.name" value="${poolname}" />
</antcall>
<exec executable="${ASADMIN}" failonerror="false">
<arg line="undeploy" />
<arg line="${as.props}" />
<arg line="connectors-ra-redeploy-rars" />
</exec>
</target>
<target name="execute-sql" depends="init-common">
<echo message="***** LD_LIBRARY_PATH=${env.LD_LIBRARY_PATH} *****" />
<echo message="url jdbc:derby://${db.host}:${db.port}/${db.name};create=true" />
<echo message="userid ${database.user}" />
<echo message="password ${database.password}" />
<sql driver="${db.driver}"
url="jdbc:derby://${db.host}:${db.port}/${db.name};create=true"
userid="${database.user}"
password="${database.password}"
onerror="continue"
print="yes"
classpath="${s1astest.classpath}"
>
<fileset dir=".">
<include name="**/*${sql.file.type}*${db.type}*.sql" />
</fileset>
</sql>
</target>
<target name="create-table" depends="init-common">
<property name="sql.file.type" value="create" />
<antcall target="execute-common" />
</target>
<target name="drop-table" depends="init-common">
<property name="sql.file.type" value="drop" />
<antcall target="execute-common" />
</target>
<target name="execute-common">
<antcall target="execute-sql">
<param name="database.user" value="dbmap1" />
<param name="database.password" value="dbmap1" />
</antcall>
<antcall target="execute-sql">
<param name="database.user" value="dbmap2" />
<param name="database.password" value="dbmap2" />
</antcall>
<antcall target="execute-sql">
<param name="database.user" value="dbmap3" />
<param name="database.password" value="dbmap3" />
</antcall>
<antcall target="execute-sql">
<param name="database.user" value="dbmap4" />
<param name="database.password" value="dbmap4" />
</antcall>
<antcall target="execute-sql">
<param name="database.user" value="dbmap5" />
<param name="database.password" value="dbmap5" />
</antcall>
<antcall target="execute-sql">
<param name="database.user" value="dbmap6" />
<param name="database.password" value="dbmap6" />
</antcall>
</target>
<target name="create-users">
<antcall target="create-users-common">
<param name="user.password" value="foo1" />
<param name="create.user.args" value="--groups eng:employee foo1" />
</antcall>
<antcall target="create-users-common">
<param name="user.password" value="foo2" />
<param name="create.user.args" value="--groups eng:employee foo2" />
</antcall>
<antcall target="create-users-common">
<param name="user.password" value="foo3" />
<param name="create.user.args" value="--groups eng:contractor foo3" />
</antcall>
<antcall target="create-users-common">
<param name="user.password" value="bar1" />
<param name="create.user.args" value="--groups admin:employee bar1" />
</antcall>
<antcall target="create-users-common">
<param name="user.password" value="bar2" />
<param name="create.user.args" value="--groups admin:contractor bar2" />
</antcall>
<antcall target="create-users-common">
<param name="user.password" value="foobar" />
<param name="create.user.args" value="--groups manager:employee foobar" />
</antcall>
<antcall target="create-users-common">
<param name="user.password" value="barfoo" />
<param name="create.user.args" value="--groups hr:employee barfoo" />
</antcall>
<antcall target="create-users-common">
<param name="user.password" value="foofoo" />
<param name="create.user.args" value="--groups support:contractor foofoo" />
</antcall>
<antcall target="create-users-common">
<param name="user.password" value="barbar" />
<param name="create.user.args" value="--groups security barbar" />
</antcall>
</target>
<target name="create-users-common" depends="init-common">
<echo message="AS_ADMIN_PASSWORD=${admin.password}${line.separator}"
file="${admin.password.file}"
append="false"
/>
<echo message="AS_ADMIN_USERPASSWORD=${user.password}${line.separator}"
file="${admin.password.file}"
append="true"
/>
<exec executable="${ASADMIN}" failonerror="false">
<arg line="create-file-user" />
<arg line="${as.props}" />
<arg line="${create.user.args}" />
</exec>
</target>
<target name="delete-users">
<antcall target="delete-users-common">
<param name="username" value="foo1" />
</antcall>
<antcall target="delete-users-common">
<param name="username" value="foo2" />
</antcall>
<antcall target="delete-users-common">
<param name="username" value="foo3" />
</antcall>
<antcall target="delete-users-common">
<param name="username" value="bar1" />
</antcall>
<antcall target="delete-users-common">
<param name="username" value="bar2" />
</antcall>
<antcall target="delete-users-common">
<param name="username" value="foobar" />
</antcall>
<antcall target="delete-users-common">
<param name="username" value="barfoo" />
</antcall>
<antcall target="delete-users-common">
<param name="username" value="foofoo" />
</antcall>
<antcall target="delete-users-common">
<param name="username" value="barbar" />
</antcall>
</target>
<target name="delete-users-common" depends="init-common">
<exec executable="${ASADMIN}" failonerror="false">
<arg line="delete-file-user" />
<arg line="${as.props}" />
<arg line="${username}" />
</exec>
</target>
<target name="create-security-maps">
<antcall target="create-security-maps-common">
<param name="principals" value="--principals foo1,foo2" />
<param name="mappeduser" value="dbmap1" />
<param name="mappedpassword" value="dbmap1" />
<param name="map.name" value="map1" />
</antcall>
<antcall target="create-security-maps-common">
<param name="principals" value="--usergroups hr,manager" />
<param name="mappeduser" value="dbmap2" />
<param name="mappedpassword" value="dbmap2" />
<param name="map.name" value="map2" />
</antcall>
<antcall target="create-security-maps-common">
<param name="principals" value="--usergroups employee,admin" />
<param name="mappeduser" value="dbmap3" />
<param name="mappedpassword" value="dbmap3" />
<param name="map.name" value="map3" />
</antcall>
<antcall target="create-security-maps-common">
<param name="principals" value="--usergroups contractor" />
<param name="mappeduser" value="dbmap4" />
<param name="mappedpassword" value="dbmap4" />
<param name="map.name" value="map4" />
</antcall>
<antcall target="create-security-maps-common">
<param name="principals" value="--principals *" />
<param name="mappeduser" value="dbmap5" />
<param name="mappedpassword" value="dbmap5" />
<param name="map.name" value="map5" />
</antcall>
<antcall target="create-security-maps-common">
<param name="principals" value="--usergroups *" />
<param name="mappeduser" value="dbmap6" />
<param name="mappedpassword" value="dbmap6" />
<param name="map.name" value="map6" />
</antcall>
</target>
<target name="delete-security-maps">
<antcall target="delete-security-maps-common">
<param name="map.name" value="map1" />
</antcall>
<antcall target="delete-security-maps-common">
<param name="map.name" value="map2" />
</antcall>
<antcall target="delete-security-maps-common">
<param name="map.name" value="map3" />
</antcall>
<antcall target="delete-security-maps-common">
<param name="map.name" value="map4" />
</antcall>
<antcall target="delete-security-maps-common">
<param name="map.name" value="map5" />
</antcall>
<antcall target="delete-security-maps-common">
<param name="map.name" value="map6" />
</antcall>
</target>
<target name="create-security-maps-common" depends="init-common">
<echo message="AS_ADMIN_PASSWORD=${admin.password}${line.separator}"
file="${admin.password.file}"
append="false"
/>
<echo message="AS_ADMIN_MAPPEDPASSWORD=${mappedpassword}${line.separator}"
file="${admin.password.file}"
append="true"
/>
<exec executable="${ASADMIN}" failonerror="false">
<arg line="create-connector-security-map" />
<arg line="${principals}" />
<arg line="--poolname ${poolname}" />
<arg line="--passwordfile ${admin.password.file}" />
<arg line="--mappedusername ${mappeduser}" />
<arg line="${map.name}" />
</exec>
</target>
<target name="delete-security-maps-common" depends="init-common">
<exec executable="${ASADMIN}" failonerror="false">
<arg line="delete-connector-security-map" />
<arg line="${as.props}" />
<arg line="--poolname ${poolname}" />
<arg line="${map.name}" />
</exec>
</target>
<target name="run" depends="init-common">
<antcall target="create-table" />
<java classname="com.sun.ejte.j2ee.connector.securitymapweb.WebTest"
classpath="${s1astest.classpath}"
fork="true"
>
<arg line="${db.driver}" />
<arg line="${http.port}" />
</java>
<antcall target="drop-table" />
<antcall target="checkReporting-common">
<param name="test.name" value="${appname}" />
<param name="test.description" value="connector-security-map web tests" />
</antcall>
</target>
<target name="undeploy-war" depends="init-common">
<exec executable="${ASADMIN}" failonerror="false">
<arg line="undeploy" />
<arg line="${as.props}" />
<arg line="${appname}" />
</exec>
</target>
<target name="undeploy" depends="init-common">
<antcall target="undeploy-war" />
<antcall target="delete-pool" />
<antcall target="delete-ra-config" />
<antcall target="delete-users" />
</target>
<target name="usage">
<antcall target="usage-common" />
</target>
</project>