| <!-- |
| Copyright (C) 2009-2013, JoshuaTree. All Rights Reserved. |
| Licensed to Joshua Tree Software, LLC under New BSD license agreements. |
| See the NOTICE file distributed with this work for additional information |
| regarding copyright ownership. |
| JTS licenses this file to You under the New BSD License |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://jts.us/License |
| |
| 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. |
| --> |
| <project name="fortress-core" default="build" basedir="." xmlns:ivy="antlib:org.apache.ivy.ant" xmlns:artifact="antlib:org.apache.maven.artifact.ant"> |
| <!-- ================================= |
| initialize all Fortress Core package properties |
| ================================= --> |
| <target name="init"> |
| <tstamp/> |
| <!-- read user defined properties from the build.properties --> |
| <property name="component-propfile" value="${basedir}/build.properties"/> |
| <property file="${component-propfile}"/> |
| |
| <!-- read properties from the ${user.home}/propfile, if any --> |
| <property name="user-propfile" value="${user.home}/build.properties"/> |
| <property file="${user-propfile}"/> |
| |
| <!-- ########### Project specific properties ########################### --> |
| <property name="project.name" value="Fortress Identity Access Management SDK"/> |
| <property name="name" value="fortress"/> |
| <property name="ivy.install.version" value="2.2.0"/> |
| <property name="title" value="Fortress Identity and Access Management SDK for Java ${version}"/> |
| <property name="title.samples" value="Fortress Identity and Access Management Samples for Java ${version}"/> |
| <property name="vendor" value="Joshua Tree Software"/> |
| <property name="package" value="us.jts.fortress.*"/> |
| <property name="package.samples" value="us.jts.fortress.samples"/> |
| <property name="images.dir" value="${basedir}/images"/> |
| |
| <!-- ########### Env specific properties ########################### --> |
| <property name="src.dir" value="${basedir}/src"/> |
| <property name="lib.dir" value="${basedir}/lib"/> |
| <property name="src.java.dir" value="${src.dir}/main/java"/> |
| <property name="src.test.dir" value="${src.dir}/test/java"/> |
| |
| <!-- ########### Build properties & artifacts ########################### --> |
| <property name="build.dir" value="${basedir}/build"/> |
| <property name="build.classes.dir" value="${build.dir}/classes"/> |
| <property name="build.test-classes.dir" value="${build.dir}/test-classes"/> |
| <property name="dist.dir" value="${basedir}/dist"/> |
| <property name="dist.jar" value="${dist.dir}/${name}-${version}.jar"/> |
| <property name="dist.test.jar" value="${dist.dir}/${name}-${version}-test.jar"/> |
| <property name="src.dist.zip" value="${dist.dir}/${name}-${version}-sources.jar"/> |
| <property name="src.test.dist.zip" value="${dist.dir}/${name}-${version}-sourcestest.jar"/> |
| <property name="src.samples.dist.zip" value="${dist.dir}/${name}SamplesSrc-${version}.zip"/> |
| <property name="samples.dist.zip" value="${dist.dir}/${name}Samples-${version}.zip"/> |
| <property name="fortressBuilder.zip" value="${dist.dir}/fortressBuilder-${platform}-${version}.zip"/> |
| |
| <!-- ########### LDAP properties ########################### --> |
| <property name="ldap.dir" value="${basedir}/ldap"/> |
| <property name="ldap.setup.dir" value="${ldap.dir}/setup"/> |
| <property name="ldap.schema.dir" value="${ldap.dir}/schema"/> |
| <property name="slapd.schema.dir" value="${slapd.dir}/schema"/> |
| |
| <!-- ########### Configuration, Load and builder properties ########################### --> |
| <property name="src.load.bootstrap.script" value="${ldap.setup.dir}/refreshLDAPData-src.xml"/> |
| <property name="dst.load.bootstrap.script" value="${ldap.setup.dir}/refreshLDAPData.xml"/> |
| <property name="load.delegatedadmin.script" value="${ldap.setup.dir}/DelegatedAdminManagerLoad.xml"/> |
| <property name="load.demo.script" value="${ldap.setup.dir}/FortressDemoUsers.xml"/> |
| <property name="load.commander.script" value="${ldap.setup.dir}/CommanderDemoUsers.xml"/> |
| <property name="build.win.properties" value="${basedir}/build.win.properties"/> |
| <property name="build.nix.properties" value="${basedir}/build.nix.properties"/> |
| <property name="build.properties" value="${basedir}/build.properties"/> |
| <property name="config.dir" value="${basedir}/config"/> |
| <property name="config.bootstrap.dir" value="${config.dir}/bootstrap"/> |
| <property name="src.remote.conf" value="${config.dir}/fortress.properties.src"/> |
| <property name="dst.remote.conf" value="${config.dir}/fortress.properties"/> |
| <property name="src.bootstrap.conf" value="${config.bootstrap.dir}/fortress.properties.src"/> |
| <property name="dst.bootstrap.conf" value="${config.bootstrap.dir}/fortress.properties"/> |
| <property name="builder.bootstrap.conf" value="${builder.home}/config/bootstrap/fortress.properties"/> |
| <property name="builder.remote.conf" value="${builder.home}/config/fortress.properties"/> |
| <property name="builder.load.bootstrap.script" value="${builder.home}/ldap/refreshLDAPData-src.xml"/> |
| <property name="ehcache.conf" value="${config.dir}/ehcache.xml"/> |
| <property name="bootstrap.ehcache.conf" value="${config.bootstrap.dir}/ehcache.xml"/> |
| <property name="apacheds-resource.dir" value="${basedir}/src/test/resources"/> |
| |
| <!-- ########### Slapd manage & config properties ########################### --> |
| <property name="stop.slapd.script-win" value="${ldap.setup.dir}/stopSlapd.cmd"/> |
| <property name="src.start.slapd.script-win" value="${ldap.setup.dir}/startSlapd.cmd.src"/> |
| <property name="dst.start.slapd.script-win" value="${ldap.setup.dir}/startSlapd.cmd"/> |
| <property name="stop.slapd.script" value="${ldap.setup.dir}/stopSlapd.sh"/> |
| <property name="start.slapd.script" value="${ldap.setup.dir}/startSlapd.sh"/> |
| <property name="mkdir.slapd-win" value="${ldap.setup.dir}/mkDir.cmd"/> |
| <property name="uninstall.slapd.script" value="${ldap.setup.dir}/uninstall.sh"/> |
| <property name="install.slapd.script" value="${ldap.setup.dir}/install.sh"/> |
| <property name="source.slapd.conf" value="${ldap.dir}/slapd.conf.src"/> |
| <property name="target.slapd.conf" value="${ldap.dir}/slapd.conf"/> |
| <property name="dst.slapd.conf" value="${slapd.dir}/slapd.conf"/> |
| <property name="source.fortress.schema" value="${ldap.schema.dir}/fortress.schema"/> |
| <property name="target.fortress.schema" value="${slapd.schema.dir}/fortress.schema"/> |
| <property name="db.cfg" value="${ldap.dir}/DB_CONFIG"/> |
| |
| <!-- ########### Sentry manage & config properties ########################### --> |
| <property name="sentry" value="sentry"/> |
| <property name="sentry.dir" value="${basedir}/${sentry}-${version}"/> |
| <property name="sentry.zip" value="${lib.dir}/${sentry}-${version}.jar"/> |
| |
| <!-- ########### EnMasse manage & config properties ########################### --> |
| <property name="enmasse" value="enmasse"/> |
| <property name="enmasse.dir" value="${basedir}/${enmasse}-${version}"/> |
| <property name="enmasse.zip" value="${basedir}/lib/${enmasse}-${version}.jar"/> |
| |
| <!-- ########### Commander manage & config properties ########################### --> |
| <property name="commander" value="commander"/> |
| <property name="commander.dir" value="${basedir}/${commander}-${version}"/> |
| <property name="commander.zip" value="${basedir}/lib/${commander}-${version}.jar"/> |
| |
| <!-- ########### Java compile switches ########################### --> |
| <property name="javac.optimize" value="false"/> |
| <property name="javac.debug" value="true"/> |
| <property name="javac.deprecation" value="true"/> |
| |
| <!-- ########### Javadoc properties ########################### --> |
| <property name="javadoc.dir" value="${dist.dir}/docs/api"/> |
| <property name="javadoc.images.dir" value="${javadoc.dir}/images"/> |
| <property name="javadoc.bottom" value="<small>Copyright &copy; 2009-2013, JoshuaTree. All Rights Reserved. Generated ${TODAY}</small>"/> |
| <property name="javadoc.overview" value="${src.java.dir}/us/jts/fortress/overview.html" /> |
| <property name="javadoc.dist.zip" value="${dist.dir}/${name}-${version}-javadoc.jar"/> |
| <property name="javadoc.stylesheet" value="${src.java.dir}/us/jts/fortress/fortress-javadoc.css" /> |
| <property name="javadoc.samples.dir" value="${dist.dir}/docs/samples"/> |
| <property name="javadoc.samples.images.dir" value="${javadoc.samples.dir}/images"/> |
| <property name="javadoc.samples.dist.zip" value="${dist.dir}/${name}-${version}-javadocsamples.jar"/> |
| <property name="javadoc.samples.overview" value="${src.test.dir}/us/jts/fortress/samples/overview.html" /> |
| |
| <!-- ########### Fortress Package Dependencies ########################### --> |
| <property name="commons-config.jar" value="${lib.dir}/commons-configuration-1.6.jar"/> |
| <property name="commons-lang.jar" value="${lib.dir}/commons-lang-2.4.jar"/> |
| <property name="commons-collections.jar" value="${lib.dir}/commons-collections-3.2.1.jar"/> |
| <property name="commons-pool.jar" value="${lib.dir}/commons-pool-1.5.2.jar"/> |
| <property name="commons-logging.jar" value="${lib.dir}/commons-logging-1.1.1.jar"/> |
| <property name="commons-io.jar" value="${lib.dir}/commons-io-2.4.jar"/> |
| <property name="cxf-common-utilities.jar" value="${lib.dir}/cxf-common-utilities-2.5.0.jar"/> |
| <property name="commons-codec.jar" value="${lib.dir}/commons-codec-1.2.jar"/> |
| <property name="unboundsdk.jar" value="${lib.dir}/unboundid-ldapsdk-2.1.0.jar"/> |
| <property name="jgraph.jar" value="${lib.dir}/jgrapht-jdk1.5-0.7.3.jar"/> |
| <property name="log4j.jar" value="${lib.dir}/log4j-1.2.17.jar"/> |
| <property name="junit.jar" value="${lib.dir}/junit-4.9.jar"/> |
| <property name="jasypt.jar" value="${lib.dir}/jasypt-1.8.jar"/> |
| <property name="jaxb-api.jar" value="${lib.dir}/jaxb-api-2.2.6.jar"/> |
| <property name="jaxb-impl.jar" value="${lib.dir}/jaxb-impl-2.2.4-1.jar"/> |
| <property name="jaxb-xjc.jar" value="${lib.dir}/jaxb-xjc-2.2.4-1.jar"/> |
| <property name="jackson-jaxrs.jar" value="${lib.dir}/jackson-jaxrs-1.9.0.jar"/> |
| <property name="commons-httpclient.jar" value="${lib.dir}/commons-httpclient-3.1.jar"/> |
| <property name="jsr311-api.jar" value="${lib.dir}/jsr311-api-1.1.1.jar"/> |
| <property name="ehcache-core.jar" value="${lib.dir}/ehcache-core-2.6.5.jar"/> |
| <property name="slf4j-api.jar" value="${lib.dir}/slf4j-api-1.7.5.jar"/> |
| <property name="slf4j-jcl.jar" value="${lib.dir}/slf4j-jcl-1.7.5.jar"/> |
| <property name="slf4j-log4j.jar" value="${lib.dir}/slf4j-log4j12-1.7.5.jar"/> |
| <property name="apacheds-all.jar" value="${lib.dir}/apacheds-all-2.0.0-M15.jar"/> |
| <property name="opencsv.jar" value="${lib.dir}/opencsv-2.3.jar"/> |
| |
| <!-- ########### Define classpaths ########################### --> |
| <path id="build.class.path"> |
| <pathelement location="${build.classes.dir}"/> |
| <pathelement location="${jgraph.jar}"/> |
| <pathelement location="${unboundsdk.jar}"/> |
| <pathelement location="${junit.jar}"/> |
| <pathelement location="${commons-config.jar}"/> |
| <pathelement location="${commons-lang.jar}"/> |
| <pathelement location="${commons-pool.jar}"/> |
| <pathelement location="${commons-io.jar}"/> |
| <pathelement location="${jasypt.jar}"/> |
| <pathelement location="${jaxb-api.jar}"/> |
| <pathelement location="${jaxb-impl.jar}"/> |
| <pathelement location="${jaxb-xjc.jar}"/> |
| <pathelement location="${jackson-jaxrs.jar}"/> |
| <pathelement location="${commons-httpclient.jar}"/> |
| <pathelement location="${jsr311-api.jar}"/> |
| <pathelement location="${cxf-common-utilities.jar}"/> |
| <pathelement location="${ehcache-core.jar}"/> |
| <pathelement location="${apacheds-all.jar}"/> |
| <pathelement location="${opencsv.jar}"/> |
| </path> |
| |
| <!-- This is used for the JUnit Tests --> |
| <path id="test.class.path"> |
| <path location="${config.dir}"/> |
| <path location="${apacheds-resource.dir}"/> |
| <pathelement location="${build.test-classes.dir}"/> |
| <pathelement location="${dist.jar}"/> |
| <pathelement location="${jgraph.jar}"/> |
| <pathelement location="${unboundsdk.jar}"/> |
| <pathelement location="${junit.jar}"/> |
| <pathelement location="${log4j.jar}"/> |
| <pathelement location="${commons-config.jar}"/> |
| <pathelement location="${commons-lang.jar}"/> |
| <pathelement location="${commons-pool.jar}"/> |
| <pathelement location="${commons-logging.jar}"/> |
| <pathelement location="${commons-collections.jar}"/> |
| <pathelement location="${commons-codec.jar}"/> |
| <pathelement location="${commons-io.jar}"/> |
| <pathelement location="${jasypt.jar}"/> |
| <pathelement location="${jackson-jaxrs.jar}"/> |
| <pathelement location="${commons-httpclient.jar}"/> |
| <pathelement location="${jsr311-api.jar}"/> |
| <pathelement location="${cxf-common-utilities.jar}"/> |
| <pathelement location="${jaxb-api.jar}"/> |
| <pathelement location="${jaxb-impl.jar}"/> |
| <pathelement location="${jaxb-xjc.jar}"/> |
| <pathelement location="${ehcache-core.jar}"/> |
| <pathelement location="${slf4j-api.jar}"/> |
| <pathelement location="${slf4j-jcl.jar}"/> |
| <pathelement location="${ant.home}/lib/ant.jar"/> |
| <pathelement location="${images.dir}"/> |
| <pathelement location="${apacheds-all.jar}"/> |
| <pathelement location="${opencsv.jar}"/> |
| </path> |
| |
| <!-- This is used before the initial loads have stored properties on the ldap server. --> |
| <path id="bootstrap.class.path"> |
| <path location="${config.bootstrap.dir}"/> |
| <pathelement location="${build.classes.dir}"/> |
| <pathelement location="${jgraph.jar}"/> |
| <pathelement location="${unboundsdk.jar}"/> |
| <pathelement location="${junit.jar}"/> |
| <pathelement location="${log4j.jar}"/> |
| <pathelement location="${commons-config.jar}"/> |
| <pathelement location="${commons-lang.jar}"/> |
| <pathelement location="${commons-pool.jar}"/> |
| <pathelement location="${commons-logging.jar}"/> |
| <pathelement location="${commons-collections.jar}"/> |
| <pathelement location="${jasypt.jar}"/> |
| <pathelement location="${ehcache-core.jar}"/> |
| </path> |
| |
| <!-- ########### Test properties ########################### --> |
| <property name="test.sample.entry" value="us.jts.fortress.samples.AllSamplesJUnitTest"/> |
| <property name="test.regression.entry" value="us.jts.fortress.rbac.FortressJUnitTest"/> |
| <property name="test.failonerror" value="false" /> |
| <property name="test.showoutput" value="yes" /> |
| |
| <!-- define Maven coordinates (publishing only) --> |
| <property name="groupId" value="us.jts" /> |
| <property name="artifactId" value="fortress" /> |
| |
| <!-- defined maven snapshots and staging repository id and url (publishing only) --> |
| <property name="maven-snapshots-repository-id" value="sonatype-nexus-snapshots" /> |
| <property name="maven-snapshots-repository-url" value="https://oss.sonatype.org/content/repositories/snapshots" /> |
| <property name="maven-staging-repository-id" value="sonatype-nexus-staging" /> |
| <property name="maven-staging-repository-url" value="https://oss.sonatype.org/service/local/staging/deploy/maven2" /> |
| |
| <!-- define artifacts' name, which follows the convention of Maven (publishing only) --> |
| <property name="maven-jar" value="${dist.jar}" /> |
| <property name="maven-javadoc-jar" value="${javadoc.dist.zip}" /> |
| <property name="maven-sources-jar" value="${src.dist.zip}" /> |
| </target> |
| |
| <!-- ================================= |
| target: clean - Will remove old distribution packages from dist folder |
| ================================= --> |
| <target name="clean" depends="init" description="--> removes generated files"> |
| <delete dir="${build.dir}" /> |
| <delete dir="${dist.dir}" /> |
| </target> |
| |
| <!-- ================================= |
| target: compile the source |
| ================================= --> |
| <target name="compile" depends="init,resolve" description="--> compiles source files"> |
| <mkdir dir="${build.classes.dir}"/> |
| <javac srcdir="${src.java.dir}" |
| debug="${javac.debug}" |
| deprecation="${javac.deprecation}" |
| destdir="${build.classes.dir}"> |
| <classpath refid="build.class.path"/> |
| </javac> |
| </target> |
| |
| <!-- ================================= |
| target: compile the test source |
| ================================= --> |
| <target name="compile-test" depends="compile" description="--> compiles test source files"> |
| <mkdir dir="${build.test-classes.dir}"/> |
| <javac destdir="${build.test-classes.dir}" |
| srcdir="${src.test.dir}" |
| debug="${javac.debug}" |
| deprecation="${javac.deprecation}" |
| optimize="${javac.optimize}"> |
| <classpath refid="build.class.path"/> |
| </javac> |
| </target> |
| |
| <!-- ================================= |
| target: build-jar - create java archive (jar) files which contain the compiled classes |
| ================================= --> |
| <target name="build-jar" depends="compile" description="--> create the core classes"> |
| <mkdir dir="${dist.dir}"/> |
| <jar jarfile="${dist.jar}"> |
| <fileset dir="${build.classes.dir}"/> |
| <metainf dir="${basedir}" includes="LICENSE.txt,NOTICE.txt"/> |
| <manifest> |
| <attribute name="Created-By" value="${vendor} - ${project.name} dev team"/> |
| <attribute name="Implementation-Vendor" value="${vendor}"/> |
| <attribute name="Implementation-Version" value="${version}"/> |
| <attribute name="Specification-Title" value="${title}"/> |
| <attribute name="Package" value="${package}"/> |
| <attribute name="Extension-Name" value="${name}"/> |
| <attribute name="Built-By" value="${user.name}"/> |
| <attribute name="Compile-JDK" value="${java.runtime.version}"/> |
| <attribute name="Test-VM" value="${java.vm.version}"/> |
| <attribute name="Built-Date" value="${TODAY}"/> |
| </manifest> |
| </jar> |
| </target> |
| |
| <tstamp> |
| <format property="TODAY" pattern="yyyy-MM-dd HH:mm:ss" /> |
| </tstamp> |
| |
| <!-- ================================= |
| target: build-jar-test - create jar containing compiled test classes |
| ================================= --> |
| <target name="build-jar-test" depends="compile-test" description="--> create the core test classes"> |
| <mkdir dir="${dist.dir}"/> |
| <jar jarfile="${dist.test.jar}"> |
| <fileset dir="${build.test-classes.dir}"/> |
| <metainf dir="${basedir}" includes="LICENSE.txt,NOTICE.txt"/> |
| <manifest> |
| <attribute name="Created-By" value="${vendor} - ${project.name} dev team"/> |
| <attribute name="Implementation-Vendor" value="${vendor}"/> |
| <attribute name="Implementation-Version" value="${version}"/> |
| <attribute name="Specification-Title" value="${title}"/> |
| <attribute name="Package" value="${package}"/> |
| <attribute name="Extension-Name" value="${name}"/> |
| <attribute name="Built-By" value="${user.name}"/> |
| <attribute name="Compile-JDK" value="${java.runtime.version}"/> |
| <attribute name="Test-VM" value="${java.vm.version}"/> |
| </manifest> |
| </jar> |
| </target> |
| |
| <!-- ================================= |
| target: create the javadoc based on source code |
| ================================= --> |
| <target name="javadoc" depends="init" description="--> generates javadocs"> |
| <mkdir dir="${javadoc.dir}"/> |
| <javadoc packagenames="${package}" |
| sourcepath="${src.java.dir}" |
| destdir="${javadoc.dir}" |
| windowtitle="${title}" |
| doctitle="${title} " |
| bottom="${javadoc.bottom}" |
| overview="${javadoc.overview}" |
| public="true" |
| version="true" |
| author="true" |
| splitindex="false" |
| nodeprecated="true" |
| nodeprecatedlist="true" |
| notree="true" |
| noindex="false" |
| nohelp="true" |
| nonavbar="false" |
| classpathref="test.class.path" |
| serialwarn="false"> |
| </javadoc> |
| </target> |
| |
| <!-- ================================= |
| target: create the javadoc based on source test code |
| ================================= --> |
| <target name="javadoc-samples" depends="init" description="--> generates samples javadocs"> |
| <mkdir dir="${javadoc.samples.dir}"/> |
| <javadoc packagenames="${package.samples}" |
| sourcepath="${src.test.dir}" |
| destdir="${javadoc.samples.dir}" |
| windowtitle="${title.samples}" |
| doctitle="${title.samples} " |
| bottom="${javadoc.bottom}" |
| overview="${javadoc.samples.overview}" |
| public="true" |
| version="true" |
| author="true" |
| splitindex="false" |
| nodeprecated="true" |
| nodeprecatedlist="true" |
| notree="true" |
| noindex="false" |
| nohelp="true" |
| nonavbar="false" |
| classpathref="test.class.path" |
| serialwarn="false"> |
| </javadoc> |
| </target> |
| |
| <!-- ================================= |
| target: build |
| ================================= --> |
| <target name="build" depends="clean,build-jar,build-jar-test,javadoc,javadoc-samples" description="--> create the core Fortress library"> |
| <copy todir="${dist.dir}" file="${basedir}/LICENSE.txt"/> |
| <copy todir="${dist.dir}" file="${basedir}/NOTICE.txt"/> |
| </target> |
| |
| <!-- ================================= |
| target: dist - creates the distribution packages |
| ================================= --> |
| <target name="dist" depends="build" description="--> create source and binary distribution"> |
| <zip destfile='${src.dist.zip}'> |
| <zipfileset dir='${src.java.dir}'/> |
| |
| <zipfileset dir='${dist.dir}' prefix='META-INF'> |
| <include name="LICENSE.txt"/> |
| <include name="NOTICE.txt"/> |
| </zipfileset> |
| </zip> |
| |
| <zip destfile='${src.test.dist.zip}'> |
| <zipfileset dir='${src.test.dir}'/> |
| |
| <zipfileset dir='${dist.dir}' prefix='META-INF'> |
| <include name="LICENSE.txt"/> |
| <include name="NOTICE.txt"/> |
| </zipfileset> |
| </zip> |
| |
| <zip destfile="${javadoc.dist.zip}" basedir="${javadoc.dir}"> |
| <zipfileset dir='${dist.dir}' prefix='META-INF'> |
| <include name="LICENSE.txt"/> |
| <include name="NOTICE.txt"/> |
| </zipfileset> |
| </zip> |
| |
| <zip destfile="${samples.dist.zip}" basedir="${src.test.dir}" includes="**/samples/*.java,build.xml"> |
| <zipfileset dir='${dist.dir}' prefix='META-INF'> |
| <include name="LICENSE.txt"/> |
| <include name="NOTICE.txt"/> |
| </zipfileset> |
| <zipfileset dir='${javadoc.samples.dir}'/> |
| </zip> |
| </target> |
| |
| <!-- ================================= |
| target: test-samples - runs junit programming samples tests |
| ================================= --> |
| <target name="test-samples" depends="compile-test,init-fortress-config" description="--> runs (junit) sample unit tests"> |
| <echo message="Run the Fortress programming sample JUnit tests..."/> |
| <junit fork="yes" haltonfailure="${test.failonerror}" showoutput="${test.showoutput}"> |
| <sysproperty key="tenant" value="${tenant}"/> |
| <sysproperty key="version" value="${version}"/> |
| <classpath refid="test.class.path"/> |
| <formatter type="plain" usefile="false"/> |
| <test name="${test.sample.entry}"/> |
| </junit> |
| </target> |
| |
| <!-- ================================= |
| target: test-full - runs junit regression tests |
| ================================= --> |
| <target name="test-full" depends="build-jar,compile-test,init-fortress-config" description="--> run junit FULL regression tests"> |
| <echo message="Run the Fortress regression JUnit tests. Be patient this can take a while to complete."/> |
| <junit fork="yes" haltonfailure="${test.failonerror}" showoutput="${test.showoutput}" maxmemory="1024m"> |
| <sysproperty key="isFirstJUnitRun" value="false" /> |
| <sysproperty key="version" value="${version}"/> |
| <sysproperty key="tenant" value="${tenant}"/> |
| <classpath refid="test.class.path"/> |
| <formatter type="plain" usefile="false"/> |
| <test name="${test.regression.entry}"/> |
| </junit> |
| </target> |
| |
| <!-- ================================= |
| target: test-apacheds - runs junit regression tests |
| ================================= --> |
| <target name="test-apacheds" depends="build-jar,compile-test,init-fortress-config" description="--> run ApacheDS junit FULL regression tests"> |
| <echo message="Run the Fortress regression JUnit tests. Be patient this can take a while to complete."/> |
| <junit fork="yes" haltonfailure="${test.failonerror}" showoutput="${test.showoutput}" maxmemory="1024m"> |
| <sysproperty key="version" value="${version}"/> |
| <sysproperty key="tenant" value="${tenant}"/> |
| <classpath refid="test.class.path"/> |
| <formatter type="plain" usefile="false"/> |
| <test name="us.jts.fortress.rbac.apacheds.FortressJUnitApachedsTest"/> |
| </junit> |
| </target> |
| |
| <!-- ================================= |
| target: console - starts the Fortress Console app |
| ================================= --> |
| <target name="console" depends="build-jar,compile-test,init-fortress-config" description="--> start Fortress Console app"> |
| <echo message="Run the Fortress console app"/> |
| <java |
| classname="us.jts.fortress.FortressConsole" |
| fork="false" |
| failonerror="true" |
| timeout="4000000" |
| > |
| <classpath refid="test.class.path"/> |
| <sysproperty key="version" value="${version}"/> |
| <sysproperty key="tenant" value="${tenant}"/> |
| </java> |
| </target> |
| |
| <!-- ================================= |
| target: cli - starts the Fortress Command Line Interpreter |
| ================================= --> |
| <target name="cli" depends="build-jar,compile,init-fortress-config" description="--> start Fortress Command Line Interpreter"> |
| <echo message="Run the Fortress Command Line Interpreter"/> |
| <java |
| classname="us.jts.fortress.cli.CommandLineInterpreter" |
| fork="false" |
| failonerror="true" |
| timeout="4000000" |
| > |
| <classpath refid="test.class.path"/> |
| <sysproperty key="version" value="${version}"/> |
| <sysproperty key="tenant" value="${tenant}"/> |
| </java> |
| </target> |
| |
| <!-- ================================= |
| target: encrypt - allows users to encrypt values which are displayed to the standard output |
| ================================= --> |
| <target name="encrypt" depends="compile" description="--> encrypt -Dparam1=value : encrypts value from clear text to encrypted cypher string that is hex encoded"> |
| <echo message="Encrypt a value"/> |
| <java |
| classname="us.jts.fortress.util.crypto.EncryptUtil" |
| fork="false" |
| failonerror="true" |
| timeout="4000000" |
| > |
| <classpath refid="bootstrap.class.path"/> |
| <arg value="${param1}"/> |
| </java> |
| </target> |
| |
| <!-- ================================= |
| target: admin - runs the Ant demo load scripts |
| ================================= --> |
| <target name="admin" depends="init-fortress-config" description="--> admin -Dparam1=path/to/FileName.xml : to run fortress admin scripts at specified location"> |
| <echo message="############### Run Fortress Ant script ${param1} ###############"/> |
| <java |
| classname="org.apache.tools.ant.launch.Launcher" |
| fork="true" |
| failonerror="true" |
| dir="${ldap.setup.dir}" |
| timeout="4000000" |
| taskname="startAnt"> |
| <classpath> |
| <pathelement location="${ant.home}/lib/ant-launcher.jar"/> |
| <path refid="bootstrap.class.path"/> |
| <path refid="test.class.path"/> |
| </classpath> |
| <sysproperty key="version" value="${version}"/> |
| <sysproperty key="tenant" value="${tenant}"/> |
| <arg value="-buildfile"/> |
| <arg file="${param1}"/> |
| <arg value="-Dbasedir=${ldap.setup.dir}"/> |
| </java> |
| </target> |
| |
| <!-- ================================= |
| target: admin-debug - runs the Ant demo load scripts in debug mode |
| ================================= --> |
| <target name="admin-debug" depends="init-fortress-config" description="--> admin -Dparam1=path/to/FileName.xml : to run fortress admin scripts at specified location"> |
| <echo message="############### Run Fortress Ant script ${param1} ###############"/> |
| <java |
| classname="org.apache.tools.ant.launch.Launcher" |
| fork="true" |
| failonerror="true" |
| dir="${ldap.setup.dir}" |
| timeout="4000000" |
| taskname="startAnt"> |
| <classpath> |
| <pathelement location="${ant.home}/lib/ant-launcher.jar"/> |
| <path refid="bootstrap.class.path"/> |
| <path refid="test.class.path"/> |
| </classpath> |
| <sysproperty key="debug.admin" value="true"/> |
| <sysproperty key="version" value="${version}"/> |
| <sysproperty key="tenant" value="${tenant}"/> |
| <arg value="-buildfile"/> |
| <arg file="${param1}"/> |
| <arg value="-Dbasedir=${ldap.setup.dir}"/> |
| <jvmarg value="-Xdebug" /> |
| <jvmarg value="-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005" /> |
| </java> |
| </target> |
| |
| <!-- ================================= |
| target: init-openldap-config - modifies openldap artifacts for runtime use of fortress-core |
| ================================= --> |
| <target name="init-openldap-config" depends="init" description="--> map env params from build.properties to scripts and config files"> |
| <echo message="############### Modify slapd configuration per user settings ###############"/> |
| <delete file="${target.slapd.conf}"/> |
| <copy file="${source.slapd.conf}" tofile="${target.slapd.conf}"/> |
| <replace file="${target.slapd.conf}" token="@SCHEMA_PATH@" value="${slapd.schema.dir}"/> |
| <replace file="${target.slapd.conf}" token="@SUFFIX@" value="${suffix}"/> |
| <replace file="${target.slapd.conf}" token="@PID_PATH@" value="${pid.dir}"/> |
| <replace file="${target.slapd.conf}" token="@HISTORY_DB_PATH@" value="${db.hist.dir}"/> |
| <replace file="${target.slapd.conf}" token="@DEFAULT_DB_PATH@" value="${db.dir}"/> |
| <replace file="${target.slapd.conf}" token="@SLAPD_MODULE_PATH@" value="${slapd.module.dir}"/> |
| <replace file="${target.slapd.conf}" token="@LOGOPS@" value="${log.ops}"/> |
| <replace file="${target.slapd.conf}" token="@ROOT_DN@" value="${root.dn}"/> |
| <replace file="${target.slapd.conf}" token="@ROOT_PW@" value="${root.pw}"/> |
| <replace file="${target.slapd.conf}" token="@LOG_ROOT_DN@" value="${log.root.dn}"/> |
| <replace file="${target.slapd.conf}" token="@LOG_ROOT_PW@" value="${log.root.pw}"/> |
| <replace file="${target.slapd.conf}" token="@LOG_SUFFIX@" value="${log.suffix}"/> |
| <replace file="${target.slapd.conf}" token="@LOG_DBNOSYNCH@" value="${log.dbnosynch}"/> |
| <replace file="${target.slapd.conf}" token="@LOG_CHECKPOINT@" value="${log.checkpoint}"/> |
| <replace file="${target.slapd.conf}" token="@DFLT_DBNOSYNCH@" value="${dflt.dbnosynch}"/> |
| <replace file="${target.slapd.conf}" token="@DFLT_CHECKPOINT@" value="${dflt.checkpoint}"/> |
| <replace file="${target.slapd.conf}" token="@DB_MODULE_NM@" value="back_${db.type}.la"/> |
| <replace file="${target.slapd.conf}" token="@DB_TYPE@" value="${db.type}"/> |
| <replace file="${target.slapd.conf}" token="@LOG_RDRS@" value="${log.rdrs}"/> |
| <replace file="${target.slapd.conf}" token="@LOG_SIZE@" value="${log.size}"/> |
| <replace file="${target.slapd.conf}" token="@LOG_BDB_CACHE_SIZE@" value="${log.bdb.cache.size}"/> |
| <replace file="${target.slapd.conf}" token="@DFLT_RDRS@" value="${dflt.rdrs}"/> |
| <replace file="${target.slapd.conf}" token="@DFLT_SIZE@" value="${dflt.size}"/> |
| <replace file="${target.slapd.conf}" token="@DFLT_BDB_CACHE_SIZE@" value="${dflt.bdb.cache.size}"/> |
| <replace file="${target.slapd.conf}" token="@DFLT_BDB_CACHE_IDLE_SIZE@" value="${dflt.bdb.cache.idle.size}"/> |
| <echo message="Target init-all-config complete."/> |
| </target> |
| |
| <!-- ================================= |
| init slapd for windows |
| ================================= --> |
| <target name="init-slapd-win-script" depends="init" description="--> creates a startup file for slapd on windows"> |
| <echo message="############### Create slapd startup script for windows ###############"/> |
| <delete file="${dst.start.slapd.script-win}"/> |
| <copy file="${src.start.slapd.script-win}" tofile="${dst.start.slapd.script-win}"/> |
| <replace file="${dst.start.slapd.script-win}" token="@SLAPD_LOCATION@" value="${slapd.exe.location}"/> |
| <echo message="init-slapd-win-script."/> |
| </target> |
| |
| <!-- ================================= |
| initialize the config files |
| ================================= --> |
| <target name="init-fortress-config" depends="init"> |
| <echo message="Determine configuration requirements"/> |
| <antcall target="init-fortress-config-local"></antcall> |
| <antcall target="init-fortress-config-remote"></antcall> |
| </target> |
| |
| <!-- ================================= |
| target: init-fortress-config - uses configuration artifacts created by Fortress Builder in target system environment. |
| ================================= --> |
| <target name="init-fortress-config-remote" depends="init" description="--> uses external build.properties to create local script and config files.." if="builder.home"> |
| <echo message="############### Import fortress configuration from Builder directory ###############"/> |
| <copy file="${builder.bootstrap.conf}" tofile="${dst.bootstrap.conf}"/> |
| <copy file="${builder.remote.conf}" tofile="${dst.remote.conf}"/> |
| <copy file="${builder.load.bootstrap.script}" tofile="${dst.load.bootstrap.script}"/> |
| <echo message="############### Copy ehcache config to bootstrap config folder ###############"/> |
| <delete file="${bootstrap.ehcache.conf}"/> |
| <copy file="${ehcache.conf}" tofile="${bootstrap.ehcache.conf}"/> |
| <echo message="Target init-fortress-config-remote complete."/> |
| </target> |
| |
| <!-- ================================= |
| target: init-fortress-config - modifies fortress-core configuration artifacts for use of openldap in target system environment. |
| ================================= --> |
| <target name="init-fortress-config-local" depends="init" description="--> map env params from build.properties to scripts and config files.." unless="builder.home"> |
| <echo message="############### Modify fortress configuration per user settings ###############"/> |
| <delete file="${dst.bootstrap.conf}"/> |
| <delete file="${dst.remote.conf}"/> |
| |
| <copy file="${src.bootstrap.conf}" tofile="${dst.bootstrap.conf}"/> |
| <replace file="${dst.bootstrap.conf}" token="@SUFFIX@" value="${suffix}"/> |
| <replace file="${dst.bootstrap.conf}" token="@LDAP_HOST@" value="${ldap.host}"/> |
| <replace file="${dst.bootstrap.conf}" token="@LDAP_PORT@" value="${ldap.port}"/> |
| <replace file="${dst.bootstrap.conf}" token="@ROOT_DN@" value="${root.dn}"/> |
| <replace file="${dst.bootstrap.conf}" token="@CFG_ROOT_PW@" value="${cfg.root.pw}"/> |
| <replace file="${dst.bootstrap.conf}" token="@ADM_MIN_CONN@" value="${admin.min.conn}"/> |
| <replace file="${dst.bootstrap.conf}" token="@ADM_MAX_CONN@" value="${admin.max.conn}"/> |
| <replace file="${dst.bootstrap.conf}" token="@LOG_MIN_CONN@" value="${log.min.conn}"/> |
| <replace file="${dst.bootstrap.conf}" token="@LOG_MAX_CONN@" value="${log.max.conn}"/> |
| <replace file="${dst.bootstrap.conf}" token="@USR_MIN_CONN@" value="${user.min.conn}"/> |
| <replace file="${dst.bootstrap.conf}" token="@USR_MAX_CONN@" value="${user.max.conn}"/> |
| <replace file="${dst.bootstrap.conf}" token="@CFG_CRYPTO_PROP@" value="${crypto.prop}"/> |
| <replace file="${dst.bootstrap.conf}" token="@SERVER_TYPE@" value="${ldap.server.type}"/> |
| <replace file="${dst.bootstrap.conf}" token="@LDAP_CLIENT_TYPE@" value="${ldap.client.type}"/> |
| |
| <copy file="${src.remote.conf}" tofile="${dst.remote.conf}"/> |
| <replace file="${dst.remote.conf}" token="@SUFFIX@" value="${suffix}"/> |
| <replace file="${dst.remote.conf}" token="@LDAP_HOST@" value="${ldap.host}"/> |
| <replace file="${dst.remote.conf}" token="@LDAP_PORT@" value="${ldap.port}"/> |
| <replace file="${dst.remote.conf}" token="@ROOT_DN@" value="${root.dn}"/> |
| <replace file="${dst.remote.conf}" token="@CFG_ROOT_PW@" value="${cfg.root.pw}"/> |
| <replace file="${dst.remote.conf}" token="@ADM_MIN_CONN@" value="${admin.min.conn}"/> |
| <replace file="${dst.remote.conf}" token="@ADM_MAX_CONN@" value="${admin.max.conn}"/> |
| <replace file="${dst.remote.conf}" token="@CFG_CRYPTO_PROP@" value="${crypto.prop}"/> |
| <replace file="${dst.remote.conf}" token="@ENABLE_REST@" value="${enable.mgr.impl.rest}"/> |
| <replace file="${dst.remote.conf}" token="@REST_HTTP_USER@" value="${http.user}"/> |
| <replace file="${dst.remote.conf}" token="@REST_HTTP_PW@" value="${http.pw}"/> |
| <replace file="${dst.remote.conf}" token="@REST_HTTP_HOST@" value="${http.host}"/> |
| <replace file="${dst.remote.conf}" token="@REST_HTTP_PORT@" value="${http.port}"/> |
| <replace file="${dst.remote.conf}" token="@LDAP_CLIENT_TYPE@" value="${ldap.client.type}"/> |
| |
| <echo message="############### Modify fortress load scripts per user settings ###############"/> |
| <delete file="${dst.load.bootstrap.script}"/> |
| <copy file="${src.load.bootstrap.script}" tofile="${dst.load.bootstrap.script}"/> |
| <replace file="${dst.load.bootstrap.script}" token="@SUFFIX_NAME@" value="${suffix.name}"/> |
| <replace file="${dst.load.bootstrap.script}" token="@SUFFIX_DC@" value="${suffix.dc}"/> |
| <replace file="${dst.load.bootstrap.script}" token="@SUFFIX@" value="${suffix}"/> |
| <replace file="${dst.load.bootstrap.script}" token="@LOG_ROOT_DN@" value="${log.root.dn}"/> |
| <replace file="${dst.load.bootstrap.script}" token="@CFG_LOG_ROOT_PW@" value="${cfg.log.root.pw}"/> |
| <replace file="${dst.load.bootstrap.script}" token="@LOG_MIN_CONN@" value="${user.min.conn}"/> |
| <replace file="${dst.load.bootstrap.script}" token="@LOG_MAX_CONN@" value="${user.max.conn}"/> |
| <replace file="${dst.load.bootstrap.script}" token="@USR_MIN_CONN@" value="${log.min.conn}"/> |
| <replace file="${dst.load.bootstrap.script}" token="@USR_MAX_CONN@" value="${log.max.conn}"/> |
| <replace file="${dst.load.bootstrap.script}" token="@SERVER_TYPE@" value="${ldap.server.type}"/> |
| |
| <echo message="############### Copy ehcache config to bootstrap config folder ###############"/> |
| <delete file="${bootstrap.ehcache.conf}"/> |
| <copy file="${ehcache.conf}" tofile="${bootstrap.ehcache.conf}"/> |
| |
| <echo message="Target init-fortress-config-local complete."/> |
| </target> |
| |
| <!-- ================================= |
| target: init-all-config - configures openldap, fortress and the the base load scripts for ldap Directory Information Tree (DIT) |
| ================================= --> |
| <target name="init-all-config" depends="init" description="--> map env params from build.properties to scripts and config files"> |
| <antcall target="init-openldap-config"></antcall> |
| <antcall target="init-fortress-config"></antcall> |
| <echo message="Target init-all-config complete."/> |
| </target> |
| |
| <!-- ================================= |
| target: load-slapd - seeds openldap and base loads for test/use. |
| ================================= --> |
| <target name="load-slapd" depends="build-jar" description="--> task runs ant admin scripts to refresh fortress boostrap data"> |
| <echo message="############### Initialize OpenLDAP ###############"/> |
| |
| <echo message="Load the Fortress boostrap config and demo users"/> |
| <antcall target="admin"> |
| <param name="param1" value="${dst.load.bootstrap.script}"/> |
| </antcall> |
| <antcall target="admin"> |
| <param name="param1" value="${load.delegatedadmin.script}"/> |
| </antcall> |
| <antcall target="admin"> |
| <param name="param1" value="${load.demo.script}"/> |
| </antcall> |
| <echo message="Target load-slapd complete."/> |
| </target> |
| |
| <!-- ================================= |
| target: use-slapd - configures fortress to work with an existing OpenLDAP system. |
| ================================= --> |
| <target name="use-slapd" depends="build-jar" description="--> task refreshes fortress config and reloads slapd data"> |
| <echo message="############### Use OpenLDAP ###############"/> |
| <antcall target="init-fortress-config"></antcall> |
| <antcall target="load-slapd"></antcall> |
| <echo message="Target use-slapd complete."/> |
| </target> |
| |
| <!-- ================================= |
| target: init-slapd - initializes the fortress, OpenLDAP and Berkeley DB |
| Use Caution as it removes the file volume containing the BerkeleyDB User data! |
| This operation is destructive and non-reversible. It is intended for complete openldap |
| system tear down and reinstall. |
| |
| Never run this Ant target on a production system. |
| ================================= --> |
| <target name="init-slapd" depends="build-jar" description="--> task recreates openldap system and must be run as elevated priv's to teardown/create slapd files and folders"> |
| <echo message="############### Initialize OpenLDAP ###############"/> |
| |
| <echo message="############### Stop slapd process ###############"/> |
| <antcall target="stop-slapd"></antcall> |
| <antcall target="uninstall-slapd"></antcall> |
| |
| <echo message="############### Backup the slpad bdb folders ###############"/> |
| <!-- Backup the OpenLDAP access log db folder --> |
| <move todir="${db.bak.hist.dir}/${TODAY}" failonerror="false"> |
| <fileset dir="${db.hist.dir}"/> |
| </move> |
| <!-- Backup the OpenLDAP db folder --> |
| <move todir="${db.bak.dir}/${TODAY}" failonerror="false"> |
| <fileset dir="${db.dir}"/> |
| </move> |
| |
| <antcall target="install-slapd"></antcall> |
| |
| <echo message="############### Create new slapd bdb folders ###############"/> |
| <mkdir dir="${db.dir}"/> |
| <mkdir dir="${db.hist.dir}"/> |
| <copy todir="${db.dir}" file="${db.cfg}"/> |
| <copy todir="${db.hist.dir}" file="${db.cfg}"/> |
| |
| <echo message="############### Backup slapd configuration and Fortress LDAP schema ###############"/> |
| <move file="${dst.slapd.conf}" tofile="${dst.slapd.conf}.bak.${TODAY}" failonerror="false" /> |
| <move file="${target.fortress.schema}" tofile="${target.fortress.schema}.${TODAY}" failonerror="false" /> |
| |
| <echo message="############### Setup meta config and base load scripts for openldap and fortress ###############"/> |
| <antcall target="init-all-config"></antcall> |
| |
| <echo message="############### Copy slapd configuration and Fortress LDAP schema files from source ###############"/> |
| <copy todir="${slapd.schema.dir}" file="${source.fortress.schema}"/> |
| <copy todir="${slapd.dir}" file="${target.slapd.conf}"/> |
| |
| <antcall target="copy-access-libs"></antcall> |
| <antcall target="init-slapd-win-script"></antcall> |
| <antcall target="start-slapd"></antcall> |
| <antcall target="load-slapd"></antcall> |
| <echo message="Target init-slapd complete."/> |
| </target> |
| |
| <!-- ================================= |
| perform test configurations |
| ================================= --> |
| <target name="test-config" depends="init"> |
| <echo message="############### Test Config Steps"/> |
| <echo message="############### Setup meta config and base load scripts for openldap and fortress ###############"/> |
| <antcall target="init-all-config"></antcall> |
| |
| <echo message="############### Copy slapd configuration and Fortress LDAP schema files from source ###############"/> |
| <copy todir="${slapd.schema.dir}" file="${source.fortress.schema}"/> |
| <copy todir="${slapd.dir}" file="${target.slapd.conf}"/> |
| |
| <antcall target="copy-access-libs"></antcall> |
| <antcall target="init-slapd-win-script"></antcall> |
| </target> |
| |
| <!-- ================================= |
| copy the slapd access log libs from install to bin folder |
| ================================= --> |
| <target name="copy-access-libs" depends="init" > |
| <echo message="############### Copy access log libs ${openldap.install.artifact.dir} to openldap lib folder ${slapd.module.dir}"/> |
| <copy todir="${slapd.module.dir}" failonerror="false"> |
| <fileset dir="${openldap.install.artifact.dir}"> |
| <include name="**/accesslog*"/> |
| </fileset> |
| </copy> |
| </target> |
| |
| <!-- ================================= |
| if windows system create slapd server folders |
| ================================= --> |
| <target name="mkdir-slapd-win" depends="init" if="windows"> |
| <echo message="############### Create the folder for windows slapd by running ${mkdir.slapd-win}"/> |
| <exec command="cmd.exe" spawn="true" osfamily="windows" dir="${install.image.loc}"> |
| <arg value="/${fortress.home.drive}"/> |
| <arg value="${mkdir.slapd-win}"/> |
| </exec> |
| </target> |
| |
| <!-- ================================= |
| call the target to uninstall slapd server |
| ================================= --> |
| <target name="uninstall-slapd" depends="init"> |
| <antcall target="uninstall-slapd-win"></antcall> |
| <antcall target="uninstall-slapd-nix"></antcall> |
| </target> |
| |
| <!-- ================================= |
| uninstall slapd from unix system |
| ================================= --> |
| <target name="uninstall-slapd-nix" depends="init" unless="windows"> |
| <echo message="############### Uninstall OpenLDAP binaries"/> |
| <exec dir="." executable="/bin/sh"> |
| <arg line="${uninstall.slapd.script}"/> |
| <arg value="${slapd.uninstall}"/> |
| <arg value="${sudo.pw}"/> |
| </exec> |
| </target> |
| |
| <!-- ================================= |
| call the target to uninstall slapd from windows system |
| ================================= --> |
| <target name="uninstall-slapd-win" depends="init" if="windows"> |
| <antcall target="uninstall-slapd-win-if-present"></antcall> |
| </target> |
| |
| <!-- ================================= |
| if detect running windows uninstall slapd server from windows system. |
| ================================= --> |
| <target name="uninstall-slapd-win-if-present" depends="slapd.dir.check" if="slapd.dir.exists"> |
| <echo message="############### Uninstall OpenLDAP WIN binaries: from ${slapd.exe.location2}"/> |
| <exec command="cmd.exe" spawn="true" osfamily="windows" dir="${slapd.exe.location2}" > |
| <arg value="/${fortress.home.drive}"/> |
| <arg value="${uninstall.image.exe}"/> |
| <arg value="/S"/> |
| </exec> |
| </target> |
| |
| <!-- ================================= |
| call the target to uninstall slapd server |
| ================================= --> |
| <target name="install-slapd" depends="init"> |
| <antcall target="install-slapd-win"></antcall> |
| <antcall target="install-slapd-nix"></antcall> |
| </target> |
| |
| <!-- ================================= |
| uninstall slapd from unix system |
| ================================= --> |
| <target name="install-slapd-nix" depends="init" unless="windows"> |
| <echo message="############### Install OpenLDAP binaries"/> |
| <exec dir="${openldap.install.artifact.dir}" executable="/bin/sh"> |
| <arg line="${install.slapd.script}"/> |
| <arg value="${slapd.install}"/> |
| <arg value="${sudo.pw}"/> |
| </exec> |
| </target> |
| |
| <!-- ================================= |
| uninstall slapd from windows system |
| ================================= --> |
| <target name="install-slapd-win" depends="init" if="windows"> |
| <echo message="############### Install OpenLDAP WIN binaries to ${slapd.exe.location}"/> |
| <mkdir dir="${slapd.exe.location}"/> |
| <exec command="cmd.exe" spawn="false" osfamily="windows" dir="${install.image.loc}"> |
| <arg value="/${fortress.home.drive}"/> |
| <arg value="${install.image.exe}"/> |
| <arg value="/S"/> |
| <arg value="/D=${slapd.exe.location}"/> |
| </exec> |
| </target> |
| |
| <!-- ================================= |
| call the target to start the slapd server |
| ================================= --> |
| <target name="start-slapd" depends="init" description="--> start the OpenLDAP server"> |
| <antcall target="start-slapd-win"></antcall> |
| <antcall target="start-slapd-nix"></antcall> |
| </target> |
| |
| <!-- ================================= |
| start the slapd server on unix system |
| ================================= --> |
| <target name="start-slapd-nix" depends="init" unless="windows"> |
| <echo message="############### Start the slapd process up ###############"/> |
| <exec dir="." executable="/bin/sh"> |
| <arg line="${start.slapd.script}"/> |
| <arg value="${slapd.start}"/> |
| <arg value="${sudo.pw}"/> |
| </exec> |
| </target> |
| |
| <!-- ================================= |
| call the target to stop the slapd server |
| ================================= --> |
| <target name="stop-slapd" depends="init" description="--> stop the OpenLDAP server"> |
| <antcall target="stop-slapd-win"></antcall> |
| <antcall target="stop-slapd-nix"></antcall> |
| </target> |
| |
| <!-- ================================= |
| stop the slapd server on unix system |
| ================================= --> |
| <target name="stop-slapd-nix" depends="init" unless="windows"> |
| <echo message="############### Stop the slapd process"/> |
| <exec dir="." executable="/bin/sh"> |
| <arg line="${stop.slapd.script}"/> |
| <arg value="${sudo.pw}"/> |
| </exec> |
| </target> |
| |
| <!-- ================================= |
| start the slapd server on windows system |
| ================================= --> |
| <target name="start-slapd-win" depends="init" if="windows"> |
| <echo message="############### Start the slapd process up: ${dst.start.slapd.script-win} in ${slapd.exe.dir}"/> |
| <exec command="cmd.exe" spawn="true" osfamily="windows" dir="${slapd.exe.drive}:/${slapd.exe.dir}"> |
| <arg value="/${fortress.home.drive}"/> |
| <arg value="${dst.start.slapd.script-win}"/> |
| </exec> |
| </target> |
| |
| <!-- ================================= |
| return true if slapd bin folder exists |
| ================================= --> |
| <target name="slapd.dir.check"> |
| <condition property="slapd.dir.exists"> |
| <available file="${slapd.exe.location}" type="dir"/> |
| </condition> |
| </target> |
| |
| <!-- ================================= |
| call the target to stop the slapd server on windows system |
| ================================= --> |
| <target name="stop-slapd-win" depends="init" if="windows"> |
| <antcall target="stop-slapd-win-if-present"></antcall> |
| </target> |
| |
| <!-- ================================= |
| if slapd dir exists stop the slapd server on windows system |
| ================================= --> |
| <target name="stop-slapd-win-if-present" depends="slapd.dir.check" if="slapd.dir.exists"> |
| <echo>${directory} exists</echo> |
| <echo message="############### Stop the slapd process by running ${stop.slapd.script-win}"/> |
| <exec command="cmd.exe" spawn="true" osfamily="windows" dir="${slapd.exe.location}"> |
| <arg value="/${fortress.home.drive}"/> |
| <arg value="${stop.slapd.script-win}"/> |
| </exec> |
| </target> |
| |
| <!-- ================================= |
| target: bdb-delete - Use Caution as it removes the file volume containing the BerkeleyDB User data! |
| This operation is destructive and non-reversible. It is intended for clearing out existing systems data |
| before reinstalling with brand new data. |
| |
| Never run this Ant target on a production system. |
| ================================= --> |
| <target name="bdb-delete" depends="init" description="--> delete OpenLDAP DB"> |
| <echo message="Delete BDB DB"/> |
| |
| <exec dir="." executable="/bin/sh"> |
| <arg line="${stop.slapd.script}"/> |
| </exec> |
| |
| <delete dir="${db.dir}"/> |
| |
| </target> |
| |
| <!-- ================================= |
| target: init-apacheds - initializes the fortress to use ApacheDS LDAP |
| ================================= --> |
| <target name="init-apacheds" depends="build-jar" description="--> task configures fortress to use an existing ApacheDS LDAP server"> |
| <echo message="############### Setup meta config and base load scripts for openldap and fortress ###############"/> |
| <antcall target="init-fortress-config"></antcall> |
| <antcall target="load-slapd"></antcall> |
| <echo message="Target init-apacheds complete."/> |
| </target> |
| |
| <!-- ================================= |
| target: init-jaxb - initializes properties and taskdefs used for schema generation and compilation. |
| ================================= --> |
| <target name="init-jaxb" depends="resolve" description="--> initializes properties and taskdefs used for schema generation and compilation"> |
| |
| <property name="generated.dir" value="${basedir}/generated"/> |
| <property name="generated.classes.dir" value="${generated.dir}/classes"/> |
| <property name="generated.schema.dir" value="${generated.dir}/schema"/> |
| |
| <!-- Defines XJC and SchemaGen tasks --> |
| <taskdef name="xjc" classname="com.sun.tools.xjc.XJCTask"> |
| <classpath refid="build.class.path"/> |
| </taskdef> |
| |
| <taskdef name="schemagen" classname="com.sun.tools.jxc.SchemaGenTask"> |
| <classpath refid="build.class.path"/> |
| </taskdef> |
| |
| </target> |
| |
| <!-- ================================= |
| target: generate-schema - generates JAXB schmea based on Java classes. |
| ================================= --> |
| <target name="generate-schema" depends="init-jaxb,compile" description="--> generates JAXB schema based on Fortress entity classes"> |
| <echo message="Generating schemas..."/> |
| <mkdir dir="${generated.schema.dir}"/> |
| <schemagen srcdir="${src.java.dir}/us/jts/fortress" destdir="${generated.schema.dir}"> |
| <classpath refid="build.class.path"/> |
| <include name="rbac/Address.java"/> |
| <include name="rbac/AdminRole.java"/> |
| <include name="rbac/AdminRoleRelationship.java"/> |
| <include name="rbac/AuthZ.java"/> |
| <include name="rbac/Bind.java"/> |
| <include name="util/time/Constraint.java"/> |
| <include name="FortEntity.java"/> |
| <include name="rest/FortRequest.java"/> |
| <include name="rest/FortResponse.java"/> |
| <include name="rbac/Mod.java"/> |
| <include name="rbac/OrgUnit.java"/> |
| <include name="rbac/OrgUnitRelationship.java"/> |
| <include name="rbac/Permission.java"/> |
| <include name="rbac/PermGrant.java"/> |
| <include name="rbac/Permission.java"/> |
| <include name="rbac/PermObj.java"/> |
| <include name="rbac/Props.java"/> |
| <include name="rbac/PwPolicy.java"/> |
| <include name="rbac/Role.java"/> |
| <include name="rbac/RolePerm.java"/> |
| <include name="rbac/RoleRelationship.java"/> |
| <include name="rbac/SDSet.java"/> |
| <include name="rbac/Session.java"/> |
| <include name="rbac/User.java"/> |
| <include name="rbac/UserAdminRole.java"/> |
| <include name="rbac/UserAudit.java"/> |
| <include name="rbac/UserRole.java"/> |
| </schemagen> |
| </target> |
| |
| <!-- ================================= |
| target: compile-schema - generates Java classes based on schema. |
| ================================= --> |
| <target name="compile-schema" depends="init-jaxb,generate-schema" description="--> generates Java classes based on Fortress schema"> |
| <echo message="Compiling the schema..."/> |
| <mkdir dir="${generated.classes.dir}"/> |
| <xjc schema="${generated.schema.dir}/schema1.xsd" destdir="${src.java.dir}" package="us.jts.fortress.model" removeOldOutput="yes"/> |
| </target> |
| |
| <!-- ================================= |
| create Fortress Builder distribution package |
| ================================= --> |
| <target name="builder" depends="dist" description="--> create the Fortress QUICKSTART package"> |
| <echo message="############### Build Fortress Builder distribution package named: ${fortressBuilder.zip} ###############"/> |
| <zip destfile="${fortressBuilder.zip}" |
| update="true"> |
| <zipfileset dir="${src.dir}" prefix="src"> |
| <include name="*/**"/> |
| <exclude name="*.iml"/> |
| </zipfileset> |
| |
| <zipfileset dir="${basedir}"> |
| <include name="*.xml"/> |
| <include name="*.properties"/> |
| <include name="*.sh"/> |
| <include name="*.bat"/> |
| <include name="*.html"/> |
| <include name="LICENSE.txt"/> |
| <include name="NOTICE.txt"/> |
| <exclude name="*.log"/> |
| <exclude name="build.sh"/> |
| <exclude name="codetemplates.xml"/> |
| <exclude name="formatting.xml"/> |
| </zipfileset> |
| |
| <zipfileset dir="${images.dir}" prefix="images"> |
| <include name="Screenshot*.png"/> |
| <include name="fortresscommunitylogov3.jpg"/> |
| </zipfileset> |
| |
| <zipfileset dir="${ldap.dir}" prefix="ldap"> |
| <include name="*/**"/> |
| <exclude name="*.conf"/> |
| <exclude name="*.log"/> |
| <exclude name="*/*.log"/> |
| </zipfileset> |
| |
| <zipfileset dir="${config.dir}" prefix="config"> |
| <include name="*/**"/> |
| <exclude name="*.log"/> |
| <exclude name="*.properties"/> |
| <exclude name="*/*.properties"/> |
| </zipfileset> |
| |
| <zipfileset dir="${install.image.dir}" prefix="symas-openldap"> |
| <include name="*/**"/> |
| </zipfileset> |
| |
| <zipfileset dir="${ant.home}" prefix="apache-ant"> |
| <include name="*/**"/> |
| </zipfileset> |
| |
| <zipfileset dir="${maven.image.dir}" prefix="apache-maven"> |
| <include name="*/**"/> |
| </zipfileset> |
| |
| <zipfileset dir="${tomcat.image.dir}" prefix="apache-tomcat"> |
| <include name="*/**"/> |
| </zipfileset> |
| |
| </zip> |
| </target> |
| |
| <!-- ================================= |
| Install EnMasse Demo |
| ================================= --> |
| <target name="install-enmasse-demo" depends="init" description="--> install EnMasse Demo"> |
| <antcall target="doSentry"></antcall> |
| <antcall target="sentry-ant-start-tomcat"></antcall> |
| <antcall target="install-enmasse"></antcall> |
| <antcall target="enmasse-maven-test"></antcall> |
| </target> |
| |
| <target name="doSentry" depends="dir.check" unless="dir.exists"> |
| <echo>Install sentry to ${sentry.dir}"</echo> |
| <antcall target="install-sentry"></antcall> |
| <antcall target="sentry-ant-deploy-tomcat"></antcall> |
| </target> |
| |
| <target name="dir.check"> |
| <condition property="dir.exists"> |
| <available file="${sentry.dir}" type="dir"/> |
| </condition> |
| </target> |
| |
| <!-- ================================= |
| Install Fortress Sentry |
| ================================= --> |
| <target name="install-sentry" depends="init" description="--> install sentry"> |
| <unzip src="${sentry.zip}" dest="${basedir}"/> |
| <!-- copy the build.properties file to sentry --> |
| <copy todir="${sentry.dir}" file="${basedir}/build.properties" overwrite="true" /> |
| <!-- Sentry should use LDAPv3 for the demo install --> |
| <replace file="${sentry.dir}/build.properties" token="enable.mgr.impl.rest=true" value="enable.mgr.impl.rest=false"/> |
| <antcall target="sentry-ant-dist"></antcall> |
| <chmod dir="${basedir}" perm="a+x" includes="**/*.sh"/> |
| </target> |
| |
| <!-- ================================= |
| Call the Sentry Ant target to Install Fortress Sentry |
| ================================= --> |
| <target name="sentry-ant-dist" depends="init" description="--> run Fortress admin script"> |
| <echo message="############### Build Sentry Distribution ###############"/> |
| <java |
| classname="org.apache.tools.ant.launch.Launcher" |
| fork="true" |
| failonerror="true" |
| dir="${sentry.dir}" |
| timeout="4000000" |
| taskname="startAnt"> |
| <classpath> |
| <pathelement location="${ant.home}/lib/ant-launcher.jar"/> |
| </classpath> |
| <arg value="dist"/> |
| </java> |
| </target> |
| |
| <!-- ================================= |
| Call the Sentry Ant target to deploy Tomcat Realm |
| ================================= --> |
| <target name="sentry-ant-deploy-tomcat" depends="init" description="--> deploy Sentry to Tomcat"> |
| <echo message="############### Deploy Sentry to Tomcat ###############"/> |
| <java |
| classname="org.apache.tools.ant.launch.Launcher" |
| fork="true" |
| failonerror="true" |
| dir="${sentry.dir}" |
| timeout="4000000" |
| taskname="startAnt"> |
| <classpath> |
| <pathelement location="${ant.home}/lib/ant-launcher.jar"/> |
| </classpath> |
| <arg value="deploy-tomcat"/> |
| </java> |
| </target> |
| |
| <!-- ================================= |
| Call the Sentry Ant target to start Tomcat server |
| ================================= --> |
| <target name="sentry-ant-start-tomcat" depends="init" description="--> start Tomcat server"> |
| <echo message="############### Start Tomcat Server ###############"/> |
| <property name="tomcat.dir" value="./tomcat"/> |
| <java |
| classname="org.apache.tools.ant.launch.Launcher" |
| fork="true" |
| failonerror="true" |
| dir="${sentry.dir}" |
| timeout="4000000" |
| taskname="startAnt" |
| jvmargs="-Dversion=${version}"> |
| <classpath> |
| <pathelement location="${ant.home}/lib/ant-launcher.jar"/> |
| </classpath> |
| <arg value="start-tomcat"/> |
| </java> |
| </target> |
| |
| <!-- ================================= |
| Call the Sentry Ant target to stop Tomcat server |
| ================================= --> |
| <target name="sentry-ant-stop-tomcat" depends="init" description="--> stop Tomcat server"> |
| <echo message="############### Stop Tomcat Server ###############"/> |
| <property name="tomcat.dir" value="./tomcat"/> |
| <java |
| classname="org.apache.tools.ant.launch.Launcher" |
| fork="true" |
| failonerror="true" |
| dir="${sentry.dir}" |
| timeout="4000000" |
| taskname="startAnt"> |
| <classpath> |
| <pathelement location="${ant.home}/lib/ant-launcher.jar"/> |
| </classpath> |
| <arg value="stop-tomcat"/> |
| </java> |
| </target> |
| |
| <!-- ================================= |
| Install EnMasse |
| ================================= --> |
| <target name="install-enmasse" depends="init" description="--> install sentry"> |
| <unzip src="${enmasse.zip}" dest="${basedir}"/> |
| <!-- copy the fortress.properties file to enmasse --> |
| <copy todir="${enmasse.dir}/src/main/resources" file="${dst.remote.conf}"/> |
| <!-- For demo Enmasse should use LDAPv3 for backend connections --> |
| <copy todir="${enmasse.dir}/src/main/resources" file="${dst.remote.conf}" overwrite="true" /> |
| <replace file="${enmasse.dir}/src/main/resources/fortress.properties" token="enable.mgr.impl.rest=true" value="enable.mgr.impl.rest=false"/> |
| <antcall target="enmasse-maven-install"></antcall> |
| <antcall target="enmasse-maven-deploy"></antcall> |
| </target> |
| |
| <!-- ================================= |
| Call the EnMasse Maven to install |
| ================================= --> |
| <target name="enmasse-maven-install" depends="init" description="--> deploy snapshot version to Maven snapshot repository"> |
| <artifact:mvn pom="${enmasse.dir}/pom.xml" mavenHome="${M2_HOME}" fork="true"> |
| <arg value="install"/> |
| </artifact:mvn> |
| </target> |
| |
| <!-- ================================= |
| Call the EnMasse Maven to deploy Web app |
| ================================= --> |
| <target name="enmasse-maven-deploy" depends="init" description="--> deploy snapshot version to Maven snapshot repository"> |
| <artifact:mvn pom="${enmasse.dir}/pom.xml" mavenHome="${M2_HOME}" fork="true"> |
| <arg value="tomcat:deploy"/> |
| <arg value="-DfailIfNoTests=false" /> |
| </artifact:mvn> |
| </target> |
| |
| <!-- ================================= |
| Call the EnMasse Maven to redeploy Web app |
| ================================= --> |
| <target name="enmasse-maven-redeploy" depends="init" description="--> deploy snapshot version to Maven snapshot repository"> |
| <artifact:mvn pom="${enmasse.dir}/pom.xml" mavenHome="${M2_HOME}" fork="true"> |
| <arg value="tomcat:redeploy"/> |
| <arg value="-DfailIfNoTests=false" /> |
| </artifact:mvn> |
| </target> |
| |
| <!-- ================================= |
| Call the EnMasse Maven to test Web app |
| ================================= --> |
| <target name="enmasse-maven-test" depends="init" description="--> deploy snapshot version to Maven snapshot repository"> |
| <artifact:mvn pom="${enmasse.dir}/pom.xml" mavenHome="${M2_HOME}" fork="true"> |
| <arg value="test"/> |
| </artifact:mvn> |
| </target> |
| |
| <!-- ================================= |
| Install Commander Demo |
| ================================= --> |
| <target name="install-commander-demo" depends="init" description="--> install Commander Demo"> |
| <antcall target="doSentry"></antcall> |
| <antcall target="sentry-ant-start-tomcat"></antcall> |
| <antcall target="install-commander"></antcall> |
| </target> |
| |
| <!-- ================================= |
| Install Commander |
| ================================= --> |
| <target name="install-commander" depends="init" description="--> install commander"> |
| <unzip src="${commander.zip}" dest="${basedir}"/> |
| <!-- copy the fortress.properties file to commander --> |
| <copy todir="${commander.dir}/src/main/resources" file="${dst.remote.conf}" overwrite="true" /> |
| <concat destfile="${commander.dir}/src/main/resources/fortress.properties" append="true">${line.separator}version=${version}</concat> |
| <!-- load the sample test policy for commander --> |
| <antcall target="commander-maven-load"></antcall> |
| <antcall target="commander-maven-deploy"></antcall> |
| </target> |
| |
| <!-- ================================= |
| Call the Commander Maven to install |
| ================================= --> |
| <target name="commander-maven-install" depends="init" description="--> deploy snapshot version to Maven snapshot repository"> |
| <artifact:mvn pom="${commander.dir}/pom.xml" mavenHome="${M2_HOME}" fork="true"> |
| <arg value="install"/> |
| </artifact:mvn> |
| </target> |
| |
| <!-- ================================= |
| Call the Commander Maven to deploy Web app |
| ================================= --> |
| <target name="commander-maven-deploy" depends="init" description="--> deploy snapshot version to Maven snapshot repository"> |
| <artifact:mvn pom="${commander.dir}/pom.xml" mavenHome="${M2_HOME}" fork="true"> |
| <arg value="tomcat:deploy"/> |
| </artifact:mvn> |
| </target> |
| |
| <!-- ================================= |
| Call the Commander Maven to redeploy Web app |
| ================================= --> |
| <target name="commander-maven-redeploy" depends="init" description="--> deploy snapshot version to Maven snapshot repository"> |
| <artifact:mvn pom="${commander.dir}/pom.xml" mavenHome="${M2_HOME}" fork="true"> |
| <arg value="tomcat:redeploy"/> |
| </artifact:mvn> |
| </target> |
| |
| <!-- ================================= |
| Call the Commander Maven to load test policy into LDAP |
| ================================= --> |
| <target name="commander-maven-load" depends="init" description="--> load Commander test policy into LDAP"> |
| <artifact:mvn pom="${commander.dir}/pom.xml" mavenHome="${M2_HOME}" fork="true"> |
| <arg value="test"/> |
| </artifact:mvn> |
| </target> |
| |
| <!-- ================================= |
| Call the Commander Maven to integration test Web app with Selenium Web Driver |
| ================================= --> |
| <target name="commander-maven-test" depends="init" description="--> deploy snapshot version to Maven snapshot repository"> |
| <replace file="${commander.dir}/src/test/java/us/jts/commander/integration/CommanderSeleniumITCase.java" token="http://192.168.1.101:8080" value="http://${http.host}:${http.port}"/> |
| <artifact:mvn pom="${commander.dir}/pom.xml" mavenHome="${M2_HOME}" fork="true"> |
| <arg value="verify"/> |
| <arg value="-DskipTests=false"/> |
| </artifact:mvn> |
| </target> |
| |
| <!-- ================================= |
| target: download-ivy - pulls down ivy.jar from maven 2 website |
| ================================= --> |
| <target name="download-ivy" depends="init" description="--> pull the ivy jar dependency" unless="local.mode"> |
| <!-- download from web site so that it can be used even without any special installation --> |
| <echo message="downloading ivy to Ant home: ${ant.home}"/> |
| <get src="http://repo1.maven.org/maven2/org/apache/ivy/ivy/${ivy.install.version}/ivy-${ivy.install.version}.jar" |
| dest="${ant.home}/lib" usetimestamp="true"/> |
| </target> |
| |
| <!-- ================================= |
| target: resolve |
| ================================= --> |
| <target name="resolve" depends="download-ivy" description="--> retreive dependencies with ivy" unless="local.mode"> |
| <ivy:retrieve pattern="${lib.dir}/[artifact]-[revision].[ext]" /> |
| </target> |
| |
| <!-- ================================= |
| target: clean-cache |
| ================================= --> |
| <target name="clean-cache" description="--> clean the ivy cache"> |
| <ivy:cleancache /> |
| </target> |
| |
| <!-- ================================= |
| Deploy snapshot to remote Maven repository |
| ================================= --> |
| <target name="deploy" depends="init" description="--> deploy snapshot version to Maven snapshot repository"> |
| <artifact:mvn> |
| <arg value="org.apache.maven.plugins:maven-deploy-plugin:2.6:deploy-file" /> |
| <arg value="-Durl=${maven-snapshots-repository-url}" /> |
| <arg value="-DrepositoryId=${maven-snapshots-repository-id}" /> |
| <arg value="-DpomFile=pom.xml" /> |
| <arg value="-Dfile=${maven-jar}" /> |
| </artifact:mvn> |
| </target> |
| |
| <!-- ================================= |
| Update project version (both build.xml and pom.xml) from SNAPSHOT to RELEASE |
| ================================= --> |
| <target name="stage" depends="dist" description="--> deploy release version to Maven staging repository"> |
| <!-- sign and deploy the main artifact --> |
| <artifact:mvn> |
| <arg value="org.apache.maven.plugins:maven-gpg-plugin:1.3:sign-and-deploy-file" /> |
| <arg value="-Durl=${maven-staging-repository-url}" /> |
| <arg value="-DrepositoryId=${maven-staging-repository-id}" /> |
| <arg value="-DpomFile=pom.xml" /> |
| <arg value="-Dfile=${maven-jar}" /> |
| <arg value="-Pgpg" /> |
| </artifact:mvn> |
| |
| <!-- sign and deploy the sources artifact --> |
| <artifact:mvn> |
| <arg value="org.apache.maven.plugins:maven-gpg-plugin:1.3:sign-and-deploy-file" /> |
| <arg value="-Durl=${maven-staging-repository-url}" /> |
| <arg value="-DrepositoryId=${maven-staging-repository-id}" /> |
| <arg value="-DpomFile=pom.xml" /> |
| <arg value="-Dfile=${maven-sources-jar}" /> |
| <arg value="-Dclassifier=sources" /> |
| <arg value="-Pgpg" /> |
| </artifact:mvn> |
| |
| <!-- sign and deploy the javadoc artifact --> |
| <artifact:mvn> |
| <arg value="org.apache.maven.plugins:maven-gpg-plugin:1.3:sign-and-deploy-file" /> |
| <arg value="-Durl=${maven-staging-repository-url}" /> |
| <arg value="-DrepositoryId=${maven-staging-repository-id}" /> |
| <arg value="-DpomFile=pom.xml" /> |
| <arg value="-Dfile=${maven-javadoc-jar}" /> |
| <arg value="-Dclassifier=javadoc" /> |
| <arg value="-Pgpg" /> |
| </artifact:mvn> |
| </target> |
| |
| </project> |