1 |
d2a8c3fd
|
Marc NICOLAS
|
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
|
|
|
3 |
|
|
|
4 |
|
|
|
5 |
|
|
|
6 |
|
|
|
7 |
|
|
|
8 |
|
|
|
9 |
|
|
|
10 |
|
|
|
11 |
|
|
|
12 |
|
|
|
13 |
|
|
|
14 |
|
|
|
15 |
|
|
|
16 |
|
|
|
17 |
|
|
|
18 |
|
|
|
19 |
|
|
|
20 |
|
|
<project name="fr.cnes.sitools.install" default="build" basedir=".">
|
21 |
|
|
|
22 |
|
|
|
23 |
|
|
|
24 |
|
|
|
25 |
|
|
|
26 |
|
|
|
27 |
|
|
|
28 |
|
|
<property file="build.properties" />
|
29 |
|
|
|
30 |
|
|
|
31 |
|
|
<property file="build-install.properties" />
|
32 |
|
|
|
33 |
|
|
<import file="sitools.userlibraries.ant.xml" optional="true" />
|
34 |
|
|
|
35 |
|
|
<property name="fr.cnes.sitools.core.dir"
|
36 |
|
|
value="${ROOT_DIRECTORY_LOCAL}/workspace/fr.cnes.sitools.core" />
|
37 |
|
|
|
38 |
|
|
<property name="data.dir" value="${ROOT_DIRECTORY_LOCAL}/data" />
|
39 |
|
|
<property name="freemarker.data.dir" value="${data.dir}/freemarker" />
|
40 |
|
|
|
41 |
|
|
<property name="conf.dir" value="${fr.cnes.sitools.core.dir}/conf" />
|
42 |
|
|
<property name="conf.bin.dir" value="${conf.dir}/bin" />
|
43 |
|
|
<property name="conf.jar.dir" value="${conf.dir}/jar" />
|
44 |
|
|
<property name="conf.properties.dir" value="${conf.dir}/properties" />
|
45 |
|
|
<property name="conf.reference.dir" value="${conf.dir}/reference" />
|
46 |
|
|
<property name="conf.build.userlib.dir" value="${conf.dir}/build/userlibrairies" />
|
47 |
|
|
<property name="cots.dir" value="${ROOT_DIRECTORY_LOCAL}/cots" />
|
48 |
|
|
|
49 |
|
|
|
50 |
|
|
<property name="install.dir" value="${basedir}" />
|
51 |
|
|
<property name="install.res.dir" value="${install.dir}/res" />
|
52 |
|
|
<property name="install.res.script.dir" value="${install.res.dir}/script" />
|
53 |
|
|
<property name="install.res.properties.dir" value="${install.res.dir}/properties" />
|
54 |
|
|
<property name="install.res.data.dir" value="${install.res.dir}/data" />
|
55 |
|
|
<property name="install.lib.dir" value="${install.dir}/lib" />
|
56 |
|
|
<property name="install.conf.dir" value="${install.dir}/conf" />
|
57 |
|
|
<property name="install.build.dir" value="${install.conf.dir}/build" />
|
58 |
|
|
|
59 |
|
|
<property name="product.short.name" value="sitools2" />
|
60 |
|
|
<property name="product.version" value="0.1" />
|
61 |
|
|
<property name="temp.dir" value="${install.dir}/tmp" />
|
62 |
|
|
|
63 |
|
|
|
64 |
|
|
|
65 |
|
|
|
66 |
|
|
<taskdef name="izpack" classpath="${install.lib.dir}/standalone-compiler.jar"
|
67 |
|
|
classname="com.izforge.izpack.ant.IzPackTask" />
|
68 |
|
|
|
69 |
|
|
|
70 |
|
|
<target name="build-jars" description="creates the Jars for IzPack custom behavior">
|
71 |
|
|
<subant target="build-jars">
|
72 |
|
|
<fileset dir="${install.build.dir}" includes="build.xml" />
|
73 |
|
|
</subant>
|
74 |
|
|
</target>
|
75 |
|
|
|
76 |
|
|
<target name="build"
|
77 |
|
|
depends="build-jars, refresh-properties-for-install, build-shell-for-install, minify-javascripts, build-izpack-installer" />
|
78 |
|
|
|
79 |
|
|
|
80 |
|
|
<target name="refresh-properties-for-install"
|
81 |
|
|
description="Mise à jour du fichier de propriétés sitools.properties pour install">
|
82 |
|
|
<copy outputencoding="UTF-8"
|
83 |
|
|
tofile="${install.res.properties.dir}/sitools.properties" file="${conf.reference.dir}/sitools-reference.properties"
|
84 |
|
|
overwrite="true" />
|
85 |
|
|
<propertyfile file="${install.res.properties.dir}/sitools.properties"
|
86 |
|
|
comment="Update root property">
|
87 |
|
|
|
88 |
|
|
<entry key="Starter.ROOT_DIRECTORY" value="${ROOT_DIRECTORY}" />
|
89 |
|
|
<entry key="Starter.HOST_DOMAIN" value="${HOST_DOMAIN}" />
|
90 |
|
|
<entry key="Starter.HOST_PORT" value="${HOST_PORT}" />
|
91 |
|
|
<entry key="Starter.PUBLIC_HOST_DOMAIN" value="${PUBLIC_HOST_DOMAIN}" />
|
92 |
|
|
|
93 |
|
|
<entry key="Starter.DATABASE_URL" value="${DATABASE_URL}" />
|
94 |
|
|
<entry key="Starter.DATABASE_USER" value="${DATABASE_USER}" />
|
95 |
|
|
<entry key="Starter.DATABASE_PASSWORD" value="${DATABASE_PASSWORD}" />
|
96 |
|
|
<entry key="Starter.DATABASE_DRIVER" value="${DATABASE_DRIVER}" />
|
97 |
|
|
<entry key="Starter.DATABASE_SCHEMA" value="${DATABASE_SCHEMA}" />
|
98 |
|
|
|
99 |
|
|
<entry key="Starter.mail.send.admin" value="${EMAIL_ADDRESS}" />
|
100 |
|
|
<entry key="Starter.mail.send.server" value="${SMTP_SERVER}" />
|
101 |
|
|
<entry key="Starter.mail.send.tls" value="${SMTP_TLS}" />
|
102 |
|
|
<entry key="Starter.mail.send.identifier" value="${SMTP_IDENTIFIER}" />
|
103 |
|
|
<entry key="Starter.mail.send.secret" value="${SMTP_PASSWORD}" />
|
104 |
|
|
<entry key="Starter.StatusService.CONTACT_MAIL" value="${EMAIL_ADDRESS}" />
|
105 |
|
|
|
106 |
|
|
<entry key="Starter.WITH_PROXY" value="${WITH_PROXY}" />
|
107 |
|
|
<entry key="Starter.PROXY_HOST" value="${PROXY_HOST}" />
|
108 |
|
|
<entry key="Starter.PROXY_PORT" value="${PROXY_PORT}" />
|
109 |
|
|
<entry key="Starter.PROXY_USER" value="${PROXY_USER}" />
|
110 |
|
|
<entry key="Starter.PROXY_PASSWORD" value="${PROXY_PASSWORD}" />
|
111 |
|
|
<entry key="Starter.NONPROXY_HOSTS" value="${NONPROXY_HOSTS}" />
|
112 |
|
|
|
113 |
|
|
<entry key="Starter.APP_PATH" value="${APP_PATH}" />
|
114 |
|
|
|
115 |
|
|
|
116 |
|
|
|
117 |
|
|
</propertyfile>
|
118 |
|
|
</target>
|
119 |
|
|
|
120 |
|
|
|
121 |
|
|
<target name="build-shell-for-install"
|
122 |
|
|
description="Mise à jour du shell de lancement pour l'installeur">
|
123 |
|
|
<property file="${install.res.properties.dir}/sitools.properties" prefix="properties" />
|
124 |
|
|
|
125 |
|
|
<copy file="${conf.reference.dir}/sitools-reference" tofile="${install.res.script.dir}/sitools"
|
126 |
|
|
outputencoding="UTF-8" overwrite="true">
|
127 |
|
|
<filterchain>
|
128 |
|
|
<replacetokens>
|
129 |
|
|
<token key="ROOT_DIRECTORY" value="%{INSTALL_PATH}" />
|
130 |
|
|
<token key="VERSION" value="%{APP_VER}" />
|
131 |
|
|
<token key="PORT" value="%{host_port}" />
|
132 |
|
|
<token key="COPYRIGHT" value="${properties.Starter.COPYRIGHT}" />
|
133 |
|
|
</replacetokens>
|
134 |
|
|
</filterchain>
|
135 |
|
|
</copy>
|
136 |
|
|
|
137 |
|
|
|
138 |
|
|
<xslt in="${conf.build.userlib.dir}/sitools.dist.userlibraries"
|
139 |
|
|
out="${install.res.script.dir}/startSitools.sh" style="${conf.build.userlib.dir}/sitools.userlibraries.xsl"
|
140 |
|
|
force="true" processor="SaxonLiaison">
|
141 |
|
|
<param name="output" expression="shell" />
|
142 |
|
|
<param name="ROOT_DIRECTORY" expression="%INSTALL_PATH" />
|
143 |
|
|
<param name="LOG_DIRECTORY" expression="%INSTALL_PATH" />
|
144 |
|
|
<param name="PORT" expression="%{host_port}" />
|
145 |
|
|
<outputproperty name="method" value="text" />
|
146 |
|
|
<outputproperty name="standalone" value="no" />
|
147 |
|
|
<outputproperty name="encoding" value="UTF-8" />
|
148 |
|
|
<outputproperty name="indent" value="yes" />
|
149 |
|
|
<classpath location="${cots.dir}/saxon/saxon9he.jar" />
|
150 |
|
|
<classpath location="${cots.dir}/saxon/SaxonLiaison.jar" />
|
151 |
|
|
</xslt>
|
152 |
|
|
<xslt in="${conf.build.userlib.dir}/sitools.dist.userlibraries"
|
153 |
|
|
out="${install.res.script.dir}/startSitools.bat" style="${conf.build.userlib.dir}/sitools.userlibraries.xsl"
|
154 |
|
|
force="true" processor="SaxonLiaison">
|
155 |
|
|
<param name="output" expression="bat" />
|
156 |
|
|
<param name="ROOT_DIRECTORY" expression="%INSTALL_PATH" />
|
157 |
|
|
<param name="LOG_DIRECTORY" expression="%INSTALL_PATH" />
|
158 |
|
|
<outputproperty name="method" value="text" />
|
159 |
|
|
<outputproperty name="standalone" value="no" />
|
160 |
|
|
<outputproperty name="encoding" value="UTF-8" />
|
161 |
|
|
<outputproperty name="indent" value="yes" />
|
162 |
|
|
<classpath location="${cots.dir}/saxon/saxon9he.jar" />
|
163 |
|
|
<classpath location="${cots.dir}/saxon/SaxonLiaison.jar" />
|
164 |
|
|
</xslt>
|
165 |
|
|
</target>
|
166 |
|
|
|
167 |
|
|
<target name="minify-javascripts" description="build javascript and freemarker for production use">
|
168 |
|
|
|
169 |
|
|
<exec executable="conf/scripts/minifyjs.bat" osfamily="windows" failonerror="true">
|
170 |
|
|
<arg value="${ROOT_DIRECTORY_LOCAL}"/>
|
171 |
|
|
</exec>
|
172 |
|
|
|
173 |
|
|
<exec executable="conf/scripts/minifyjs.sh" osfamily="unix" failonerror="true">
|
174 |
|
|
<arg value="${ROOT_DIRECTORY_LOCAL}"/>
|
175 |
|
|
</exec>
|
176 |
|
|
|
177 |
|
|
<antcall target="build-freemarker-sources"/>
|
178 |
|
|
</target>
|
179 |
|
|
|
180 |
|
|
|
181 |
|
|
<target name="build-freemarker-sources" description="build freemarker for production use (with minified sources">
|
182 |
|
|
<antcall target="configure-freemarker-as-minified">
|
183 |
|
|
<param name="name" value="adminIndex.ftl" />
|
184 |
|
|
</antcall>
|
185 |
|
|
<antcall target="configure-freemarker-as-minified">
|
186 |
|
|
<param name="name" value="portalIndex.ftl" />
|
187 |
|
|
</antcall>
|
188 |
|
|
<antcall target="configure-freemarker-as-minified">
|
189 |
|
|
<param name="name" value="projectIndex.ftl" />
|
190 |
|
|
</antcall>
|
191 |
|
|
</target>
|
192 |
|
|
|
193 |
|
|
|
194 |
|
|
|
195 |
|
|
|
196 |
|
|
|
197 |
|
|
<target name="configure-freemarker-as-minified" description="Modify a specific freemarker to use production sources">
|
198 |
|
|
|
199 |
|
|
<property name="freemarker.file" value="${install.res.data.dir}/freemarker/${name}" />
|
200 |
|
|
<copy file="${freemarker.data.dir}/${name}" tofile="${freemarker.file}" outputencoding="UTF-8" overwrite="true">
|
201 |
|
|
</copy>
|
202 |
|
|
<replace file="${freemarker.file}" token="<!-- BEGIN_JS_DEV_INCLUDES -->" value="<!--">
|
203 |
|
|
</replace>
|
204 |
|
|
<replace file="${freemarker.file}" token="<!-- END_JS_DEV_INCLUDES -->" value="-->">
|
205 |
|
|
</replace>
|
206 |
|
|
<replace file="${freemarker.file}" token="<!-- BEGIN_PROD" value="">
|
207 |
|
|
</replace>
|
208 |
|
|
<replace file="${freemarker.file}" token="END PROD -->" value="">
|
209 |
|
|
</replace>
|
210 |
|
|
<replace file="${freemarker.file}" token="<!-- BEGIN_DEV -->" value="<!--">
|
211 |
|
|
</replace>
|
212 |
|
|
<replace file="${freemarker.file}" token="<!-- END_DEV -->" value="-->">
|
213 |
|
|
</replace>
|
214 |
|
|
</target>
|
215 |
|
|
|
216 |
|
|
|
217 |
|
|
|
218 |
|
|
|
219 |
|
|
|
220 |
|
|
|
221 |
|
|
<target name="build-izpack-installer" description="generation de l'installeur IzPack">
|
222 |
|
|
<echo message="Build installer from file : ${install.dir}/install.xml with base dir = ${install.dir}" >
|
223 |
|
|
</echo>
|
224 |
|
|
<property file="${install.res.properties.dir}/sitools.properties" prefix="properties" />
|
225 |
|
|
|
226 |
|
|
<izpack input="${install.dir}/install.xml"
|
227 |
|
|
output="${install.dir}/${properties.Starter.appName}-${properties.Starter.VERSION}-install.jar"
|
228 |
|
|
installerType="standard" inheritAll="true" basedir="${install.dir}"
|
229 |
|
|
compression="deflate" compressionlevel="9" />
|
230 |
|
|
</target>
|
231 |
|
|
|
232 |
|
|
|
233 |
|
|
|
234 |
|
|
</project> |