some maintenance on the db scripts:
[mir.git] / dbscripts / createmirdb.sh
1 #!/bin/bash
2
3
4 # experimental bash script to create a database
5 #
6
7
8 usage () {
9   echo "usage: $0 dbname superuser username password"
10 }
11
12 if [ $# -ne 4 ]; then
13   usage 
14   exit;
15 fi;
16   
17 SCRIPT_FILE="/tmp/createmir.$$.sql"
18
19 # database/user creation
20 echo "CREATE DATABASE $1 WITH ENCODING='UNICODE';" > ${SCRIPT_FILE}
21 echo "CREATE USER "$3" WITH PASSWORD '$4';" >> ${SCRIPT_FILE}
22 echo "UPDATE pg_database SET datdba=(select usesysid from pg_user where usename='$3') where datname='$1';" >> ${SCRIPT_FILE}
23
24 echo "\connect $1" >> ${SCRIPT_FILE}
25
26 # create/populate scripts:
27 echo "\i create_pg.sql" >> ${SCRIPT_FILE}
28 for i in help*.sql ; do echo "\i ${i}" >> ${SCRIPT_FILE} ; done
29 for i in populate*.sql ; do echo "\i ${i}" >> ${SCRIPT_FILE} ; done
30 echo "\i update_all_sequences.sql" >> ${SCRIPT_FILE}
31
32 # grant rights
33 echo "grant all on img_format      to $3;"   >> ${SCRIPT_FILE}
34 echo "grant all on img_layout      to $3;"   >> ${SCRIPT_FILE}\r
35 echo "grant all on img_type        to $3;"   >> ${SCRIPT_FILE}
36 echo "grant all on img_color       to $3;"   >> ${SCRIPT_FILE}\r
37 echo "grant all on language        to $3;"   >> ${SCRIPT_FILE}
38 echo "grant all on rights          to $3;"   >> ${SCRIPT_FILE}\r
39 echo "grant all on feature         to $3;"   >> ${SCRIPT_FILE}
40 echo "grant all on article_type    to $3;"   >> ${SCRIPT_FILE}\r
41 echo "grant all on media           to $3;"   >> ${SCRIPT_FILE}
42 echo "grant all on breaking        to $3;"   >> ${SCRIPT_FILE}\r
43 echo "grant all on messages        to $3;"   >> ${SCRIPT_FILE}
44 echo "grant all on comment_status  to $3;"   >> ${SCRIPT_FILE}\r
45 echo "grant all on links_imcs      to $3;"   >> ${SCRIPT_FILE}
46 echo "grant all on other_media     to $3;"   >> ${SCRIPT_FILE}\r
47 echo "grant all on webdb_users     to $3;"   >> ${SCRIPT_FILE}
48 echo "grant all on content_x_topic to $3;"   >> ${SCRIPT_FILE}\r
49 echo "grant all on topic           to $3;"   >> ${SCRIPT_FILE}
50 echo "grant all on uploaded_media\r  to $3;"   >> ${SCRIPT_FILE}\r
51 echo "grant all on images          to $3;"   >> ${SCRIPT_FILE}
52 echo "grant all on content_x_media to $3;"   >> ${SCRIPT_FILE}\r
53 echo "grant all on audio           to $3;"   >> ${SCRIPT_FILE}
54 echo "grant all on video           to $3;"   >> ${SCRIPT_FILE}\r
55 echo "grant all on content         to $3;"   >> ${SCRIPT_FILE}
56 echo "grant all on comment         to $3;"   >> ${SCRIPT_FILE}
57 echo "grant all on media_folder    to $3;"   >> ${SCRIPT_FILE}
58
59
60 # execute the script
61 psql -U $2 -f ${SCRIPT_FILE} -d template1
62
63 rm ${SCRIPT_FILE}