source: release-kits/lirk2/installer/build.xml@ 19201

Last change on this file since 19201 was 19201, checked in by oranfry, 15 years ago

installer pages asking if the user wants to enable the admin pages and if so asking for a password, plus the necessary ant targets to make it happen

File size: 7.3 KB
Line 
1<?xml version="1.0"?>
2<!--
3This is the build.xml run by AntInstaller for the installer
4-->
5
6<project name="Installation">
7
8 <!-- this is required to pick up the properties generated during the install pages -->
9 <property file="${basedir}/ant.install.properties"/>
10
11 <path id="project.classpath">
12 <pathelement path="${antinstaller.jar}"/>
13 </path>
14
15 <!-- custom tasks -->
16 <typedef name="rsr" classname="org.greenstone.anttasks.RegexSearchReplace" classpathref="project.classpath"/>
17 <typedef name="adduser" classname="org.greenstone.anttasks.AddGreenstoneUserToDatabase" classpathref="project.classpath"/>
18 <taskdef name="sevenzip" classname="org.apache.tools.ant.SevenZip" classpathref="project.classpath"/>
19
20 <condition property="bundled.java.exists">
21 <available file="../@linux-java.extracted@/bin/java"/>
22 </condition>
23
24 <target name="Initialising" if="bundled.java.exists">
25 <mkdir dir="${installDir}"/>
26 <copy todir="${installDir}/packages/jre" failonerror="false">
27 <fileset dir="../@linux-java.extracted@"/>
28 </copy>
29 <chmod dir="${installDir}/packages/jre/bin" includes="*" perm="775"/>
30 </target>
31
32 <!-- core system -->
33 <target name="Installing Core System">
34
35 <mkdir dir="${installDir}"/>
36
37 <echo>Installing Core Files</echo>
38 <unzip src="${antinstaller.jar}" dest="${basedir}"><patternset><include name="core.lzma"/></patternset></unzip>
39 <sevenzip task="decode" input="${basedir}/core.lzma" output="${basedir}/core.comp"/>
40 <delete file="core.lzma"/>
41 <unzip src="${basedir}/core.comp" dest="${installDir}"/>
42 <delete file="core.comp"/>
43
44 <echo>Setting Binaries to Executable</echo>
45 <chmod dir="${installDir}" includes="*.sh,*.bash" perm="775"/>
46 <chmod dir="${installDir}/bin/linux" includes="**/*" perm="775"/>
47 <chmod dir="${installDir}/bin" includes="*" perm="775"/>
48 <chmod dir="${installDir}/cgi-bin" includes="*" perm="775"/>
49 <chmod dir="${installDir}/bin/script" includes="**/*" perm="775"/>
50 <chmod dir="${installDir}/gli" includes="*.sh" perm="775"/>
51 <chmod dir="${installDir}/apache-httpd/linux/bin" includes="*" perm="775"/>
52 <chmod dir="${installDir}/apache-httpd/linux" includes="*.sh" perm="775"/>
53 <echo/>
54
55 <echo>Filling in concrete values in config files</echo>
56 <copy file="${installDir}/cgi-bin/gsdlsite.cfg.in" tofile="${installDir}/cgi-bin/gsdlsite.cfg"/>
57 <rsr file="${installDir}/cgi-bin/gsdlsite.cfg" pattern="\*\*GSDLHOME\*\*" replacement="${installDir}"/>
58
59 <echo>Correcting perl shebangs in perl scripts</echo>
60 <exec executable="which" outputproperty="perl.executable"><arg value="perl"/></exec>
61 <rsr file="${installDir}/cgi-bin/gliserver.pl" pattern="^#!.*" replacement="#!${perl.executable} -w" lines="1"/>
62 <echo/>
63
64 <echo>Creating the english dictionary</echo>
65 <copy file="${installDir}/gli/classes/dictionary.properties" tofile="${installDir}/gli/classes/dictionary_en.properties"/>
66 <echo/>
67
68
69 <echo>Set the installation locale in config files</echo>
70 <rsr file="${installDir}/setup.bash" pattern="^gsdllang=.*" replacement="gsdllang=${language}"/>
71 <rsr file="${installDir}/gli/gli.sh" pattern="^glilang=.*" replacement="glilang=${language}"/>
72 <rsr file="${installDir}/gli/gems.sh" pattern="^glilang=.*" replacement="glilang=${language}"/>
73
74 <rsr
75 file="${installDir}/gli/classes/xml/config.xml"
76 pattern="(&lt;Argument name=&quot;general.locale&quot;&gt;).*(&lt;/Argument&gt;)"
77 replacement="$1${language}$2"/>
78
79 <echo file="${installDir}/etc/main.cfg" append="true"
80 >cgiarg shortname=l argdefault=${language}</echo>
81
82 <echo>Setting up apache web server</echo>
83 <exec dir="${installDir}" executable="${installDir}/apache-httpd/linux/install-bindist.sh">
84 <arg value="${installDir}/apache-httpd/linux"/>
85 </exec>
86
87 <echo>Creating installation properties file</echo>
88 <echo file="${installDir}/etc/installation.properties">#this file is just a placeholder for now</echo>
89
90 <echo message="Finished"/>
91
92 </target>
93
94 <!-- imagemagick -->
95 <target name="Installing ImageMagick">
96 <echo>Installing ImageMagick</echo>
97 <unzip src="${antinstaller.jar}" dest="${basedir}"><patternset><include name="imagemagick.lzma"/></patternset></unzip>
98 <sevenzip task="decode" input="${basedir}/imagemagick.lzma" output="${basedir}/imagemagick.comp"/>
99 <delete file="imagemagick.lzma"/>
100 <unzip src="${basedir}/imagemagick.comp" dest="${installDir}/bin/linux"/>
101 <delete file="imagemagick.comp"/>
102
103 <echo>Setting ImageMagick Binaries to Executable</echo>
104 <chmod dir="${installDir}/bin/linux/imagemagick/bin" includes="*" perm="775"/>
105
106 </target>
107
108 <!-- source release -->
109 <target name="Source Release">
110
111 <echo>Installing Source Release</echo>
112 <unzip src="${antinstaller.jar}" dest="${basedir}"><patternset><include name="source-release.lzma"/></patternset></unzip>
113 <sevenzip task="decode" input="${basedir}/source-release.lzma" output="${basedir}/source-release.comp"/>
114 <delete file="source-release.lzma"/>
115 <unzip src="${basedir}/source-release.comp" dest="${installDir}"/>
116 <delete file="source-release.comp"/>
117
118 <echo>Setting Binaries to Executable</echo>
119 <chmod dir="${installDir}" includes="*.sh,*.bash,**/configure" perm="775"/>
120 <chmod dir="${installDir}/bin/linux" includes="*" perm="775"/>
121 <chmod dir="${installDir}/bin" includes="*" perm="775"/>
122 <chmod dir="${installDir}/cgi-bin" includes="*" perm="775"/>
123 <chmod dir="${installDir}/bin/script" includes="**/*" perm="775"/>
124 <chmod dir="${installDir}/gli" includes="*.sh" perm="775"/>
125 <echo/>
126
127 <echo>Filling in concrete values in config files</echo>
128 <rsr file="${installDir}/cgi-bin/gsdlsite.cfg">
129 <job pattern="\*\*GSDLHOME\*\*" replacement="${installDir}"/>
130 <job pattern="^(#?httpprefix).*" replacement="$1 /gsdl"/>
131 <job pattern="^(#?httpimg).*" replacement="$1 /gsdl/images"/>
132 </rsr>
133 <echo/>
134
135 <echo>Set the installation locale in config files</echo>
136 <rsr file="${installDir}/setup.bash" pattern="^gsdllang=.*" replacement="gsdllang=${language}"/>
137 <rsr file="${installDir}/gli/gli.sh" pattern="^glilang=.*" replacement="glilang=${language}"/>
138 <rsr file="${installDir}/gli/gems.sh" pattern="^glilang=.*" replacement="glilang=${language}"/>
139
140 <rsr
141 file="${installDir}/gli/classes/xml/config.xml"
142 pattern="(&lt;Argument name=&quot;general.locale&quot;&gt;).*(&lt;/Argument&gt;)"
143 replacement="$1${language}$2"/>
144
145 <echo file="${installDir}/etc/main.cfg" append="true"
146 >cgiarg shortname=l argdefault=${language}</echo>
147
148 <echo>Create usage.txt</echo>
149 <echo file="${installDir}/etc/usage.txt"></echo>
150
151 <echo>Creating installation properties file</echo>
152 <echo file="${installDir}/etc/installation.properties">#this file is just a placeholder for now</echo>
153
154 </target>
155
156 <target name="Configuring Administration Pages" if="enable.admin.pages">
157 <echo>Enabling Admin Pages</echo>
158 <rsr file="${installDir}/etc/main.cfg" pattern="^\s*status\s+.*" replacement="status enabled"/>
159 <echo>Creating admin and demo users</echo>
160 <adduser txt2db="${installDir}/bin/linux/txt2db"
161 usersDb="${installDir}/etc/users.gdb"
162 username="admin"
163 password="${admin.password}"
164 groups="administrator,colbuilder"
165 comment="created at install time"/>
166 <adduser
167 txt2db="${installDir}/bin/linux/txt2db"
168 usersDb="${installDir}/etc/users.gdb"
169 username="demo"
170 password="demo"
171 groups="demo"
172 comment="Dummy 'demo' user with password 'demo' for authen-e collection"/>
173 </target>
174
175</project>
Note: See TracBrowser for help on using the repository browser.