source: main/trunk/release-kits/kits/rk3/installer/build.xml@ 26077

Last change on this file since 26077 was 26077, checked in by ak19, 12 years ago

Since we removed the installer page for configuring tomcat with port, shutdown port and hostname, still need defaults for these properties for proper installation of GS3 (and Flax).

File size: 15.8 KB
Line 
1<?xml version="1.0"?>
2<!--
3This is the build.xml run by AntInstaller for the installer
4-->
5<project name="Installation">
6
7 <!-- this is required to pick up the properties generated during the install pages -->
8 <property file="${basedir}/ant.install.properties"/>
9
10 <!-- custom tasks -->
11 <path id="project.classpath"><pathelement path="${antinstaller.jar}"/></path>
12
13 <typedef name="rsr" classname="org.greenstone.anttasks.RegexSearchReplace" classpathref="project.classpath"/>
14 <!--<typedef name="adduser" classname="org.greenstone.anttasks.AddGreenstone3UserToDatabase" classpathref="project.classpath"/>-->
15 <!-- if linux|mac -->
16 <taskdef name="sevenzip" classname="org.apache.tools.ant.SevenZip" classpathref="project.classpath"/>
17 <!-- /if -->
18 <!-- if windows -->
19 <taskdef name="shortcut" classname="com.orangevolt.tools.ant.Win32ShortcutTask" classpathref="project.classpath"/>
20 <taskdef name="winprops" classname="com.orangevolt.tools.ant.Win32PropertiesTask" classpathref="project.classpath"/>
21 <typedef name="getfreepath" classname="org.greenstone.anttasks.GetFreePath" classpathref="project.classpath"/>
22 <!-- /if -->
23
24 <!-- set some properties to keep track of the OS -->
25 <!-- if windows -->
26 <property name="rk.os" value="windows"/>
27 <property name="shell.name" value="windows"/>
28 <!-- /if -->
29 <!-- if linux -->
30 <property name="rk.os" value="linux"/>
31 <property name="shell.name" value="linux"/>
32 <!-- /if -->
33 <!-- if mac -->
34 <property name="rk.os" value="mac"/>
35 <property name="shell.name" value="darwin"/>
36 <!-- /if -->
37
38
39 <!-- create a local and strictly unix installDir String -->
40 <path id="installDir.path"><pathelement location="${installDir}"/></path>
41 <property name="installDir.local" refid="installDir.path"/>
42 <pathconvert targetos="unix" property="installDir.unix" refid="installDir.path"/>
43
44 <!-- if windows -->
45 <!-- load windows properties -->
46 <winprops/>
47 <!-- /if -->
48
49 <!-- work out whether a jre is bundled with this installer -->
50 <available file="../jre/bin" property="bundled.java.exists"/>
51
52 <!-- determine if there is an existing installation in the installDir-->
53 <available file="${installDir}\installation.properties" property="is.overinstall"/>
54
55 <!-- target to copy the bundled jre into place -->
56 <target name="Initialising" if="bundled.java.exists">
57 <mkdir dir="${installDir}"/>
58 <copy todir="${installDir}/packages/jre" failonerror="false">
59 <fileset dir="../jre"/>
60 </copy>
61 <chmod dir="${installDir}/packages/jre/bin" includes="*" perm="775"/>
62 </target>
63
64 <!-- target to load in the messages left by the last installation -->
65 <target name="Looking For Previous Installation" if="is.overinstall">
66 <property file="${installDir}\installation.properties"/>
67 <delete dir="${installed.startmenu.path}" failonerror="false"/>
68 </target>
69
70 <target name="Installing Core System">
71
72 <!-- rip out build.xml to the temp dir so we can fake and <antcall> with <ant> -->
73 <unzip src="${antinstaller.jar}" dest="${basedir}"><patternset><include name="build.xml"/></patternset></unzip>
74
75
76 <!-- if windows -->
77 <echo>Figuring out the start menu path</echo>
78 <getfreepath path="${win32.personal.programs_menu}\Greenstone-@version@" property="startmenu.path"/>
79 <path id="startmenu.path.path" path="${startmenu.path}"/>
80 <pathconvert targetos="unix" property="startmenu.path.unix" refid="startmenu.path.path"/>
81
82 <echo>Extracting 7za tool</echo>
83 <unzip src="${antinstaller.jar}" dest="${basedir}">
84 <patternset><include name="7za.exe"/></patternset>
85 </unzip>
86 <!-- /if -->
87
88 <echo>Extracting core component</echo>
89 <unzip src="${antinstaller.jar}" dest="${basedir}"><patternset><include name="core.lzma"/></patternset></unzip>
90 <!-- if windows --><exec dir="${basedir}" executable="${basedir}/7za.exe"><arg line="x core.lzma"/></exec><!-- /if -->
91 <!-- if linux|mac --><sevenzip task="decode" input="${basedir}/core.lzma" output="${basedir}/core.comp"/><!-- /if -->
92 <delete file="core.lzma"/>
93 <unzip src="${basedir}/core.comp" dest="${installDir}"/>
94 <delete file="core.comp"/>
95
96 <echo>Setting binaries to executable</echo>
97 <chmod dir="${installDir}" includes="*.sh" perm="775"/>
98 <chmod dir="${installDir}/bin/script" includes="*" perm="775"/>
99 <chmod dir="${installDir}/bin" includes="*" perm="775"/>
100 <!-- if linux -->
101 <chmod dir="${installDir}/gs2build/bin/linux" includes="*" perm="775"/>
102 <chmod dir="${installDir}/gs2build/bin/linux/wv/bin" includes="*" perm="775"/>
103 <!-- /if -->
104 <!-- if mac -->
105 <chmod dir="${installDir}/gs2build/bin/darwin" includes="**/*" excludes="ghostscript/** imagemagick/**" perm="775"/>
106 <!-- /if -->
107 <chmod dir="${installDir}/gs2build/bin/script" includes="**/*" perm="775"/>
108 <!-- GLI START -->
109 <chmod dir="${installDir}/gli" includes="*.sh" perm="775"/>
110 <!-- GLI END -->
111
112 <chmod file="${installDir}/packages/ant/bin/ant" perm="775"/>
113 <!--
114 source is not included for now
115 <chmod dir="${installDir}/gs2build" includes="**/configure" perm="775"/>
116 <chmod dir="${installDir}/gs2build/common-src/packages/gdbm/gdbm-1.8.3" includes="mkinstalldirs" perm="775"/>
117 <chmod file="${installDir}/src/packages/javagdbm/configure" perm="775"/>
118 -->
119
120 <echo>Setting tomcat ports</echo>
121 <property name="tomcat.server" value="localhost"/>
122 <property name="tomcat.port" value="8383"/>
123 <property name="tomcat.shutdown.port" value="8305"/>
124 <rsr file="${installDir}/build.properties">
125 <job pattern="^(tomcat\.server[=:]).*" replacement="$1${tomcat.server}" />
126 <job pattern="^(tomcat\.port[=:]).*" replacement="$1${tomcat.port}" />
127 <job pattern="^(tomcat\.shutdown.port[=:]).*" replacement="$1${tomcat.shutdown.port}" />
128 </rsr>
129
130 <echo>Setting up global properties</echo>
131 <copy file="${installDir}/resources/java/global.properties.in" tofile="${installDir}/web/WEB-INF/classes/global.properties" overwrite="true"/>
132 <rsr file="${installDir}/web/WEB-INF/classes/global.properties">
133 <job pattern="^(gsdl3\.home[:=]).*" replacement="$1${installDir.unix}/web" />
134 <job pattern="^(tomcat.server[:=]).*" replacement="$1${tomcat.server}" />
135 <job pattern="^(tomcat\.port[:=]).*" replacement="$1${tomcat.port}" />
136 </rsr>
137
138 <echo>Setting up log4j properties</echo>
139 <copy file="${installDir}/resources/java/log4j.properties.in" tofile="${installDir}/web/WEB-INF/classes/log4j.properties" overwrite="true"/>
140 <rsr file="${installDir}/web/WEB-INF/classes/log4j.properties" pattern="@gsdl3home@" replacement="${installDir.unix}/web" />
141
142 <!-- if windows -->
143 <echo message="Setting GSDLHOME in gs2build\setup.bat"/>
144 <!-- No quotes around GSDLHOME filepath in setup.bat. since the set operations of batchfiles don't want spaces in their assignments, and where quotes are needed in setup.bat, setup.bat handles this itself -->
145 <rsr file="${installDir}/gs2build/setup.bat" pattern="&quot;?\*\*GSDLHOME\*\*&quot;?" replacement="${installDir.local}\gs2build" />
146 <!-- /if -->
147
148 <!-- GLI START -->
149 <echo>Creating the english dictionary</echo>
150 <copy file="${installDir}/gli/classes/dictionary.properties" tofile="${installDir}/gli/classes/dictionary_en.properties"/>
151 <!-- GLI END -->
152
153 <echo>Creating usage.txt</echo>
154 <echo file="${installDir}/gs2build/etc/usage.txt"></echo>
155
156 <echo>Creating installation properties file</echo>
157 <echo file="${installDir}\installation.properties">installed.startmenu.path:${startmenu.path.unix}</echo>
158
159 <echo>Finished</echo>
160
161 </target>
162
163 <target name="Installing ImageMagick">
164
165 <echo>Installing ImageMagick</echo>
166 <unzip src="${antinstaller.jar}" dest="${basedir}"><patternset><include name="imagemagick.lzma"/></patternset></unzip>
167 <!-- if windows --><exec dir="${basedir}" executable="${basedir}/7za.exe"><arg line="x imagemagick.lzma"/></exec><!-- /if -->
168 <!-- if linux|mac --><sevenzip task="decode" input="${basedir}/imagemagick.lzma" output="${basedir}/imagemagick.comp"/><!-- /if -->
169 <delete file="imagemagick.lzma"/>
170 <unzip src="${basedir}/imagemagick.comp" dest="${installDir}"/>
171 <delete file="imagemagick.comp"/>
172
173 <echo>Setting binaries to executable</echo>
174 <!-- if linux -->
175 <chmod dir="${installDir}/gs2build/bin/linux/imagemagick/bin" includes="*" perm="775"/>
176 <!-- /if -->
177 <!-- if mac -->
178 <chmod dir="${installDir}/gs2build/bin/darwin/imagemagick/bin" includes="*" perm="775"/>
179 <!-- /if -->
180
181 </target>
182
183 <!-- NO FLAX START -->
184
185 <target name="Installing Ghostscript">
186
187 <echo>Installing Ghostscript</echo>
188 <unzip src="${antinstaller.jar}" dest="${basedir}"><patternset><include name="ghostscript.lzma"/></patternset></unzip>
189 <!-- if windows --><exec dir="${basedir}" executable="${basedir}/7za.exe"><arg line="x ghostscript.lzma"/></exec><!-- /if -->
190 <!-- if linux|mac --><sevenzip task="decode" input="${basedir}/ghostscript.lzma" output="${basedir}/ghostscript.comp"/><!-- /if -->
191 <delete file="ghostscript.lzma"/>
192 <unzip src="${basedir}/ghostscript.comp" dest="${installDir}"/>
193 <delete file="ghostscript.comp"/>
194
195 <echo>Setting binaries to executable</echo>
196 <!-- if linux -->
197 <chmod dir="${installDir}/gs2build/bin/linux/ghostscript/bin" includes="*" perm="775"/>
198 <!-- /if -->
199 <!-- if mac -->
200 <chmod dir="${installDir}/gs2build/bin/darwin/ghostscript/bin" includes="*" perm="775"/>
201 <!-- /if -->
202
203 </target>
204
205 <!-- NO FLAX END -->
206
207 <!-- start amp -->
208
209 <target name="Installing AMP">
210 <echo>Installing Apache, MySQL and PHP</echo>
211 <unzip src="${antinstaller.jar}" dest="${basedir}"><patternset><include name="amp.lzma"/></patternset></unzip>
212 <!-- if windows --><exec dir="${basedir}" executable="${basedir}/7za.exe"><arg line="x amp.lzma"/></exec><!-- /if -->
213 <!-- if linux|mac --><sevenzip task="decode" input="${basedir}/amp.lzma" output="${basedir}/amp.comp"/><!-- /if -->
214 <delete file="amp.lzma"/>
215 <unzip src="${basedir}/amp.comp" dest="${installDir}/ext/amp"/>
216 <delete file="amp.comp"/>
217
218 <!-- if linux|mac -->
219 <echo>Setting binaries to executable</echo>
220 <chmod dir="${installDir}/ext/amp" includes="*" perm="775"/>
221 <!-- /if -->
222 </target>
223
224 <!-- end amp -->
225
226 <target name="Installing Tomcat">
227
228 <echo>Installing Tomcat (packages/tomcat)</echo>
229 <mkdir dir="packages"/>
230 <unzip src="${antinstaller.jar}" dest="${basedir}"><patternset><include name="tomcat.lzma"/></patternset></unzip>
231 <!-- if windows --><exec dir="${basedir}" executable="${basedir}/7za.exe"><arg line="x tomcat.lzma"/></exec><!-- /if -->
232 <!-- if linux|mac --><sevenzip task="decode" input="${basedir}/tomcat.lzma" output="${basedir}/tomcat.comp"/><!-- /if -->
233 <delete file="tomcat.lzma"/>
234 <unzip src="${basedir}/tomcat.comp" dest="${installDir}"/>
235 <delete file="tomcat.comp"/>
236
237
238 <echo>Changing tomcat ports tomcat's server.xml</echo>
239 <copy file="${installDir}/resources/tomcat/server_tomcat7.xml" tofile="${installDir}/packages/tomcat/conf/server.xml" overwrite="true"/>
240 <rsr file="${installDir}/packages/tomcat/conf/server.xml">
241 <job pattern="@port@" replacement="${tomcat.port}"/>
242 <job pattern="@shutdown-port@" replacement="${tomcat.shutdown.port}"/>
243 </rsr>
244
245 <echo>Copying greenstone3.xml to tomcat directory</echo>
246 <copy file="${installDir}/resources/tomcat/greenstone3.xml" tofile="${installDir}/packages/tomcat/conf/Catalina/localhost/greenstone3.xml" overwrite="true"/>
247 <rsr file="${installDir}/packages/tomcat/conf/Catalina/localhost/greenstone3.xml" pattern="@gsdl3webhome@" replacement="${installDir.local}${file.separator}web" />
248 <rsr file="${installDir}/packages/tomcat/conf/Catalina/localhost/greenstone3.xml" pattern="@privilegedattribute@" replacement="privileged='true'" />
249
250 <!-- FLAX START -->
251 <rsr file="${installDir}/packages/tomcat/conf/Catalina/localhost/greenstone3.xml" pattern="localsite" replacement="flax" />
252 <!-- FLAX END -->
253
254 <echo>Set binaries to executable</echo>
255 <chmod dir="${installDir}/packages/tomcat/bin" includes="*.sh" perm="775"/>
256
257 </target>
258
259 <target name="Installing Start Menu Shortcuts">
260
261 <echo>Installing Start Menu Shortcuts</echo>
262
263 <!-- NO FLAX START -->
264
265 <mkdir dir="${startmenu.path}\Documentation"/>
266
267 <shortcut
268 file="${startmenu.path}\Greenstone3 Server.lnk"
269 execute="${installDir}\gs3-server.bat"
270 workingDirectory="${installDir}"
271 iconFile="${installDir}\resources\images\server.ico"
272 iconIndex="0" />
273
274 <shortcut
275 file="${startmenu.path}\Greenstone Librarian Interface (GLI).lnk"
276 execute="${installDir}\gli\gli.bat"
277 workingDirectory="${installDir}\gli"
278 iconFile="${installDir}\resources\images\librarian.ico"
279 iconIndex="0" />
280
281 <shortcut
282 file="${startmenu.path}\Greenstone Editor for Metadata Sets (GEMS).lnk"
283 execute="${installDir}\gli\gems.bat"
284 workingDirectory="${installDir}\gli"
285 iconFile="${installDir}\resources\images\metadata.ico"
286 iconIndex="0" />
287
288 <shortcut
289 file="${startmenu.path}\Uninstall.lnk"
290 execute="${installDir}\uninstall\Uninstall.bat"
291 workingDirectory="${installDir}"
292 iconFile="${installDir}\resources\images\uninstall.ico"
293 iconIndex="0" />
294
295 <shortcut
296 file="${startmenu.path}\Documentation\README.lnk"
297 execute="${installDir}\README.txt" />
298
299 <shortcut
300 file="${startmenu.path}\Documentation\Greenstone3 Users' Guide.lnk"
301 execute="${installDir}\documentation\manual\manual.pdf" />
302
303 <shortcut
304 file="${startmenu.path}\Documentation\Greenstone2 Users' Guide.lnk"
305 execute="${installDir}\documentation\manual\gs2_user_en.pdf" />
306
307 <shortcut
308 file="${startmenu.path}\Documentation\Greenstone Wiki.url"
309 url="http://wiki.greenstone.org" />
310
311 <shortcut
312 file="${startmenu.path}\Documentation\Greenstone Website.url"
313 url="http://www.greenstone.org" />
314
315 <!-- NO FLAX END -->
316
317 <!-- FLAX START -->
318
319 <shortcut
320 file="${startmenu.path}\Start FLAX Server.lnk"
321 execute="${installDir}\gs3-server.bat"
322 workingDirectory="${installDir}"
323 iconFile="${installDir}\resources\images\server.ico"
324 iconIndex="0" />
325
326 <shortcut
327 file="${startmenu.path}\Uninstall.lnk"
328 execute="${installDir}\uninstall\Uninstall.bat"
329 workingDirectory="${installDir}"
330 iconFile="${installDir}\resources\images\uninstall.ico"
331 iconIndex="0" />
332
333 <!-- FLAX END -->
334 </target>
335
336
337 <target name="Configuring Administration Pages" if="enable.admin.pages">
338 <echo>Enabling Admin Pages</echo>
339 <rsr file="${installDir}/web/sites/localsite/siteConfig.xml" pattern="&lt;!--&lt;serviceRack name='Authentication'/&gt;--&gt;" replacement="&lt;serviceRack name='Authentication'/&gt;"/>
340 <echo>Creating admin user</echo>
341 <!--<echo>Creating admin and demo users</echo>-->
342 <ant dir="${installDir}" antfile="build.xml" target="config-admin" inheritAll="false">
343 <property name="admin.password" value="${admin.password}"/>
344 </ant>
345 <!--<adduser txt2db="org.greenstone.gsdl3.util.ChangePwdUsersDB"
346 usersDb="${installDir}/web/sites/localsite/etc/usersDB"
347 username="admin"
348 password="${admin.password}"
349 groups="administrator,colbuilder,all-collections-editor"
350 comment="created at install time"
351 email=""/>
352 <adduser
353 txt2db="org.greenstone.gsdl3.util.ChangePwdUsersDB"
354 usersDb="${installDir}/web/sites/localsite/etc/usersDB"
355 username="demo"
356 password="demo"
357 groups="demo"
358 comment="Dummy 'demo' user with password 'demo' for authen-e collection"
359 email=""/>-->
360 </target>
361
362
363 <!-- util target to extract the given component -->
364 <!-- pass in ${component.name} as a param -->
365 <!-- unused at this time as causes display errors in installer gui!
366 <target name="extract-component">
367 <!- - extract the component into place - ->
368 <unzip src="${antinstaller.jar}" dest="${basedir}"><patternset><include name="${component.name}.lzma"/></patternset></unzip>
369 <!- - if windows - ->
370 <exec dir="${basedir}" executable="${basedir}/7za.exe"><arg line="x ${component.name}.lzma"/></exec>
371 <!- - /if - ->
372 <!- - if linux|mac - ->
373 <sevenzip task="decode" input="${basedir}/${component.name}.lzma" output="${basedir}/${component.name}.comp"/>
374 <!- - /if - ->
375 <delete file="${component.name}.lzma"/>
376 <unzip src="${basedir}/${component.name}.comp" dest="${installDir}"/>
377 <delete file="${component.name}.comp"/>
378 </target>
379 -->
380
381</project>
Note: See TracBrowser for help on using the repository browser.