-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuild.xml
94 lines (75 loc) · 3.28 KB
/
build.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to Apereo under one or more contributor license
agreements. See the NOTICE file distributed with this work
for additional information regarding copyright ownership.
Apereo licenses this file to you under the Apache License,
Version 2.0 (the "License"); you may not use this file
except in compliance with the License. You may obtain a
copy of the License at the following location:
http://www.apache.org/licenses/LICENSE-2.0
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="idp" default="deploy" basedir=".">
<taskdef resource="net/sf/antcontrib/antcontrib.properties" />
<!-- ******************* PROPERTIES ************************* -->
<property environment="env" />
<property name="build.target.dir" value="target" />
<property name="catalina.home" value="${env.CATALINA_HOME}" />
<property name="jetty.home" value="${env.JETTY_HOME}" />
<property name="tomcat.log.patterns" value="**/*.log" />
<property name="useJetty" value="false"/>
<!-- ******************* MAVEN PROPERTIES******************** -->
<condition property="mavenExecutableFile" value="mvn.cmd" else="mvn">
<os family="windows" />
</condition>
<var name="mavenExecutable" value="${env.M2_HOME}\bin\${mavenExecutableFile}"/>
<available file="${mavenExecutable}" property="maven.exec.exists" />
<if>
<not>
<isset property="${maven.exec.exists}" />
</not>
<then>
<var name="mavenExecutable" value="${env.MAVEN_HOME}\bin\${mavenExecutableFile}"/>
<available file="${mavenExecutable}" property="maven.exec.exists" />
</then>
</if>
<fail unless="${maven.exec.exists}" message="Cannot determine the maven location ${mavenExecutable} through M2_HOME/MAVEN_HOME env vars."/>
<!-- ********************* TARGETS *************************** -->
<target name="clean" description="Clean deployed artifacts and logs">
<exec dir="${basedir}" executable="${mavenExecutable}">
<arg value="clean" />
</exec>
</target>
<target name="compile" description="Compile artifacts" depends="clean">
<exec dir="${basedir}" executable="${mavenExecutable}">
<arg value="compile" />
</exec>
</target>
<target name="copy" depends="package">
<copy overwrite="true"
todir="/opt/shibboleth-idp/webapp/WEB-INF/lib"
file="target/shib-extensions.jar"
verbose="true"
/>
<copy overwrite="true"
todir="${env.CATALINA_HOME}/webapps/idp/WEB-INF/lib"
file="target/shib-extensions.jar"
verbose="true"
/>
</target>
<target name="package" description="Package src artifacts and prepare for deployment" depends="clean">
<exec dir="${basedir}" executable="${mavenExecutable}">
<arg value="install" />
</exec>
</target>
<target name="deploy" depends="copy" description="Clean, package and deploy artifacts" />
<target name="help" description="Prints instructions on how to run the build.">
<echo message="Use 'ant -projecthelp' to see all available commands" />
</target>
</project>