99293b01200a17fa291863d7730a38e5f0e17481
[clinton/scripts.git] / create-user-database
1 #!/bin/bash -ex
2
3 # DO NOT EXECUTE DIRECTLY
4 # This is only to be executed by create-user
5
6 USER=$1
7 # (If it's not clear, for user fred, PATHBITS = f/fr/fred)
8 PATHBITS=`echo $USER | head -c 1`/`echo $USER | head -c 2`/$USER
9 DBPATH=/srv/databases/$PATHBITS
10 PGDIR=$DBPATH/postgres
11 MYSQLDIR=$DBPATH/mysql
12
13 # Create postgres user and tablespace placeholder within volume
14 if ! test -d $PGDIR; then
15 mkdir -p $PGDIR
16 chown postgres:postgres $PGDIR
17 fi
18
19 sudo -u postgres psql -c "CREATE TABLESPACE user_$USER OWNER postgres LOCATION '$PGDIR'" template1
20
21 # Create mysql user and databases placeholder within volume
22 mkdir -p $MYSQLDIR
23 chown mysql:mysql $MYSQLDIR