1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
<project default="build">
|
3
|
|
4
|
<property file="build.properties" />
|
5
|
|
6
|
|
7
|
<target name="install_databases">
|
8
|
<foreach param="filename" absparam="absfilename" target="create_database">
|
9
|
<fileset dir="${gzdir}">
|
10
|
<include name="*.sql.gz"/>
|
11
|
</fileset>
|
12
|
</foreach>
|
13
|
</target>
|
14
|
|
15
|
<target name="create_database" >
|
16
|
<!-- unzip gz file -->
|
17
|
<php expression="substr('${filename}',0,strlen('${filename}')-3)" returnProperty="sqlfilename"/>
|
18
|
|
19
|
<exec dir="${gzdir}"
|
20
|
command="gzip -dc ${filename} > ${sqlfilename}" checkreturn="true">
|
21
|
</exec>
|
22
|
|
23
|
|
24
|
<!-- construct database name (dbname) from file name -->
|
25
|
<php expression="substr('${filename}',0,strpos('${filename}','_') )" returnProperty="dbtype"/>
|
26
|
|
27
|
<if>
|
28
|
<equals arg1="${dbtype}" arg2="${db_drupal}" />
|
29
|
<then>
|
30
|
<php expression="substr('${filename}',strlen('${file_prefix_drupal}'),strpos('${filename}','_20')-strlen('${file_prefix_drupal}') )" returnProperty="dbname"/>
|
31
|
<php expression="'${db_prefix_drupal}' . '${dbname}'" returnProperty="dbname"/>
|
32
|
</then>
|
33
|
</if>
|
34
|
<if>
|
35
|
<equals arg1="${dbtype}" arg2="${db_cdm}" />
|
36
|
<then>
|
37
|
<php expression="substr('${filename}',strlen('${file_prefix_cdm}'),strpos('${filename}','_20')-strlen('${file_prefix_cdm}') )" returnProperty="dbname"/>
|
38
|
<php expression="'${db_prefix_cdm}' . '${dbname}'" returnProperty="dbname"/>
|
39
|
</then>
|
40
|
</if>
|
41
|
|
42
|
<!-- create database from sql file, drop existing database -->
|
43
|
<exec command="mysql -u${db.username} -p${db.password} -e "drop database if exists ${dbname};"" />
|
44
|
<exec command="mysql -u${db.username} -p${db.password} -e "create database ${dbname};"" />
|
45
|
<exec command="mysql -u${db.username} -p${db.password} ${dbname} < ${gzdir}/${sqlfilename}" />
|
46
|
<echo>${dbname} created</echo>
|
47
|
|
48
|
<!-- delete unzipped file -->
|
49
|
<delete file="${gzdir}/${sqlfilename}" />
|
50
|
</target>
|
51
|
|
52
|
<!-- alter admin users to a user/password that is easy to remember, to use in development -->
|
53
|
<target name="alter_database_users">
|
54
|
<foreach list="${db_array}" param="db_params" target="change_admin_user" />
|
55
|
</target>
|
56
|
<target name="change_admin_user">
|
57
|
<php expression="substr('${db_params}',0, strpos('${db_params}','|'))" returnProperty="dbname"/>
|
58
|
<php expression="substr('${db_params}', 1+ strpos('${db_params}','|'))" returnProperty="tableprefix"/>
|
59
|
<exec command="mysql -u${db.username} -p${db.password} -e " UPDATE `${db_prefix_drupal}${dbname}`.`${tableprefix}users` SET `name` = '${admin.name}',`pass` = MD5( '${admin.password}' ) ,`mail` = '${admin.email}',`init` = '${admin.email}' WHERE `${tableprefix}users`.`uid` =1; "" />
|
60
|
</target>
|
61
|
|
62
|
<target name="build" depends="install_databases,alter_database_users" />
|
63
|
</project>
|