--- a/debian/littlebird-tc-sql.postinst Mon Sep 19 15:47:49 2011 +0200
+++ b/debian/littlebird-tc-sql.postinst Mon Sep 19 16:49:41 2011 +0200
@@ -28,6 +28,9 @@
# only if we have admin access to the database
db_get littlebird-tc/db/have-admin || true
if test "$RET" = "true"; then
+ # avoid stupid messages next time
+ db_set littlebird-tc/db/have-admin false || true
+
db_get littlebird-tc/db/adminuser && adminuser="$RET" || true
db_get littlebird-tc/db/adminpass && adminpass="$RET" || true
db_get littlebird-tc/db/host && host="$RET" || true
@@ -35,7 +38,6 @@
# check admin access
if ! _mysql -e "" mysql 2>$tmp; then
- db_set littlebird-tc/db/have-admin false || true
db_subst littlebird-tc/db/failure message "`cat $tmp`" || true
db_subst littlebird-tc/db/failure name "$name" || true
db_subst littlebird-tc/db/failure host "$host" || true
@@ -44,49 +46,25 @@
exit 1
fi
- if _mysql -e "" "$name" 2>/dev/null; then
- db_set littlebird-tc/db/have-admin false || true
- db_subst littlebird-tc/db/exists name "$name" || true
- db_input medium littlebird-tc/db/exists || true
- db_go || true
- else
- # ok, setup the database
+ # ok, setup the database
+ # AND grant the permissions to the user
+
+ db_get littlebird-tc/db/user && user="$RET" || true
+ db_get littlebird-tc/db/pass && pass="$RET" || true
- db_get littlebird-tc/db/user && user="$RET" || true
- db_get littlebird-tc/db/pass && pass="$RET" || true
- if test "$host" = "localhost"; then client="localhost"
- else client="%"
- fi
+ if test "$host" = "localhost"; then client="localhost"
+ else client="%"
+ fi
- # create or update the user
-
- _mysql <<EOF
- -- CREATE DATABASE $name;
+ _mysql <<EOF
+ CREATE DATABASE IF NOT EXISTS $name CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';
GRANT ALL ON $name.* TO '$user'@'$client' IDENTIFIED BY '$pass';
FLUSH PRIVILEGES;
EOF
-
- if false; then
- /usr/share/littlebird-tc/sql/install_test_iteration_2011-06.sh \
- --host "$host" --db "$name" \
- --adminuser "$adminuser" --adminpass "$adminpass" \
- --user "$user" --pass "$pass"
- fi
+ env PATH=/usr/local/zend/bin:$PATH \
+ /usr/share/littlebird-tc/TrustCenter/scripts/install_update_db \
+ "$adminuser" "$adminpass"
- if test -x /usr/share/littlebird-tc/TrustCenter/scripts/install_update_db
- then
- env PATH=/usr/local/zend/bin:$PATH \
- /usr/share/littlebird-tc/TrustCenter/scripts/install_update_db \
- "$adminuser" "$adminpass"
- else
- env PATH=/usr/local/zend/bin:$PATH \
- sh /usr/share/littlebird-tc/TrustCenter/scripts/install_update_db.sh \
- "$adminuser" "$adminpass"
- fi
-
- # avoid stupid messages next time
- db_set littlebird-tc/db/have-admin false || true
- fi
fi
;;