<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE project>
<project name="Spring-MVC promenade" basedir="." default="usage"
xmlns:artifact="antlib:org.apache.maven.artifact.ant">
<property file="build.properties" />
<property name="working.dir" value="." />
<property name="encoding" value="UTF-8" />
<property name="package.dir" value="./target/${app_name}"/>
<property name="build.dir" value="./target/classes"/>
<property name="app.root" value="${tomcat.home}/webapps"/>
<property name="app.home" value="${app.root}/${app_name}/"/>
<property name="webinf.home" value="${app.home}/WEB-INF"/>
<property name="class.dir" value="${app.home}/WEB-INF/classes"/>
<property name="libs.dir" value="${app.home}/WEB-INF/lib"/>
<property name="target.jar" value="${app_name}.jar"/>
<property name="MessageResources" value="MessageResources.properties"/>
<property name="Log4JResources" value="log4j2.xml"/>
<property name="ValidationMessages" value="ValidationMessages.properties"/>
<property name="cpath" value="
${tomcat.home}/lib/catalina-ant.jar;
${tomcat.home}/lib/tomcat-util.jar;
${tomcat.home}/lib/tomcat-coyote.jar;
"/>
<target name="usage">
<echo message="----USAGE----"/>
<echo message="***targets***"/>
<echo message="update : git共有リポジトリから pull"/>
<echo message="build : ビルドを実施"/>
<echo message="deploy : tomcat環境へデプロイを実施"/>
<echo message="clean_deploy : tomcat環境のlibs配下をcleanした後にデプロイを実施"/>
<echo message="reload : tomcatアプリケーションをリロード"/>
</target>
<macrodef name = "git-command">
<attribute name = "command" />
<attribute name = "dir" default = "" />
<element name = "args" optional = "true" />
<sequential>
<echo message = "git @{command}" />
<exec executable = "git" dir = "@{dir}">
<arg value = "@{command}" />
<args/>
</exec>
</sequential>
</macrodef>
<target name="update">
<git-command command = "pull" dir = "${working.dir}" />
</target>
<artifact:localRepository id="localRepo" path="${maven.local.repo.dir}"/>
<macrodef name="mvn_build">
<attribute name="dir" />
<sequential>
<artifact:mvn pom="@{dir}/pom.xml" fork="yes" failonerror="true">
<localRepository refid="localRepo"/>
<arg value="clean"/>
<arg value="package"/>
</artifact:mvn>
</sequential>
</macrodef>
<target name="build" depends="update">
<mvn_build dir="${working.dir}" />
</target>
<target name="deploy" depends="build">
<copy todir="${app.home}" preservelastmodified="true">
<fileset dir="${package.dir}">
<exclude name="META-INF/**/*.MF"/>
<exclude name="WEB-INF/classes/jp/**/*"/>
<exclude name="WEB-INF/classes/jp"/>
</fileset>
</copy>
<jar basedir ="${build.dir}" jarfile ="${libs.dir}/${target.jar}"/>
</target>
<target name="clean_deploy" depends="build">
<delete>
<fileset dir="${libs.dir}" includes="*.jar"/>
</delete>
<copy todir="${app.home}" preservelastmodified="true">
<fileset dir="${package.dir}">
<exclude name="META-INF/**/*.MF"/>
<exclude name="WEB-INF/classes/jp/**/*"/>
<exclude name="WEB-INF/classes/jp"/>
</fileset>
</copy>
<jar basedir ="${build.dir}" jarfile ="${libs.dir}/${target.jar}"/>
</target>
<taskdef name="reload" classname="org.apache.catalina.ant.ReloadTask" classpath="${cpath}" />
<target name="reload">
<reload url="${tomcat_manager_url}"
username="${tomcat_user}"
password="${tomcat_passwd}"
path="/${app_name}"/>
</target>
<taskdef name="stop" classpath="${cpath}" classname="org.apache.catalina.ant.StopTask"/>
<taskdef name="start" classpath="${cpath}" classname="org.apache.catalina.ant.StartTask"/>
<target name="stop">
<stop url="${tomcat_manager_url}"
username="${tomcat_user}"
password="${tomcat_passwd}"
path="/${app_name}"/>
</target>
<target name="start">
<start url="${tomcat_manager_url}"
username="${tomcat_user}"
password="${tomcat_passwd}"
path="/${app_name}"/>
</target>
</project>
|