debian/littlebird-tc-sql.postinst
changeset 84 e54c345e0d4a
parent 81 39b02aed056b
child 110 7a0959f212e6
equal deleted inserted replaced
83:b9b4a95d8850 84:e54c345e0d4a
    26     configure)
    26     configure)
    27 
    27 
    28 	# only if we have admin access to the database
    28 	# only if we have admin access to the database
    29 	db_get littlebird-tc/db/have-admin || true
    29 	db_get littlebird-tc/db/have-admin || true
    30 	if test "$RET" = "true"; then
    30 	if test "$RET" = "true"; then
       
    31 		# avoid stupid messages next time
       
    32 	        db_set littlebird-tc/db/have-admin false || true
       
    33 
    31 		db_get littlebird-tc/db/adminuser && adminuser="$RET" || true
    34 		db_get littlebird-tc/db/adminuser && adminuser="$RET" || true
    32 		db_get littlebird-tc/db/adminpass && adminpass="$RET" || true
    35 		db_get littlebird-tc/db/adminpass && adminpass="$RET" || true
    33 		db_get littlebird-tc/db/host && host="$RET" || true
    36 		db_get littlebird-tc/db/host && host="$RET" || true
    34 		db_get littlebird-tc/db/name && name="$RET" || true
    37 		db_get littlebird-tc/db/name && name="$RET" || true
    35 
    38 
    36 		# check admin access
    39 		# check admin access
    37 		if ! _mysql -e "" mysql 2>$tmp; then
    40 		if ! _mysql -e "" mysql 2>$tmp; then
    38 		    db_set   littlebird-tc/db/have-admin false || true
       
    39 		    db_subst littlebird-tc/db/failure message "`cat $tmp`" || true
    41 		    db_subst littlebird-tc/db/failure message "`cat $tmp`" || true
    40 		    db_subst littlebird-tc/db/failure name "$name" || true
    42 		    db_subst littlebird-tc/db/failure name "$name" || true
    41 		    db_subst littlebird-tc/db/failure host "$host" || true
    43 		    db_subst littlebird-tc/db/failure host "$host" || true
    42 		    db_input critical littlebird-tc/db/failure || true
    44 		    db_input critical littlebird-tc/db/failure || true
    43 		    db_go || true
    45 		    db_go || true
    44 		    exit 1
    46 		    exit 1
    45 		fi
    47 		fi
    46 
    48 
    47 		if _mysql -e "" "$name" 2>/dev/null; then
    49 		# ok, setup the database
    48 	            db_set littlebird-tc/db/have-admin false || true
    50 		# AND grant the permissions to the user
    49 		    db_subst littlebird-tc/db/exists name "$name" || true
       
    50 		    db_input medium littlebird-tc/db/exists || true
       
    51 		    db_go || true
       
    52 		else
       
    53 		    # ok, setup the database
       
    54 
    51 
    55 		    db_get littlebird-tc/db/user && user="$RET" || true
    52 		db_get littlebird-tc/db/user && user="$RET" || true
    56 		    db_get littlebird-tc/db/pass && pass="$RET" || true
    53 		db_get littlebird-tc/db/pass && pass="$RET" || true
    57 		    if test "$host" = "localhost"; then client="localhost"
       
    58 		    else client="%"
       
    59 		    fi
       
    60 
    54 
    61 		    # create or update the user
    55 		if test "$host" = "localhost"; then client="localhost"
       
    56 		else client="%"
       
    57 		fi
    62 
    58 
    63 		    _mysql <<EOF
    59 		_mysql <<EOF
    64 		    -- CREATE DATABASE $name;
    60 		    CREATE DATABASE IF NOT EXISTS $name CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';
    65 		    GRANT ALL ON $name.* TO '$user'@'$client' IDENTIFIED BY '$pass';
    61 		    GRANT ALL ON $name.* TO '$user'@'$client' IDENTIFIED BY '$pass';
    66 		    FLUSH PRIVILEGES;
    62 		    FLUSH PRIVILEGES;
    67 EOF
    63 EOF
    68 	    
    64 		 env PATH=/usr/local/zend/bin:$PATH \
    69 		    if false; then
    65 		    /usr/share/littlebird-tc/TrustCenter/scripts/install_update_db \
    70 		    /usr/share/littlebird-tc/sql/install_test_iteration_2011-06.sh \
    66 		    "$adminuser" "$adminpass"
    71 			--host "$host" --db "$name" \
       
    72 			--adminuser "$adminuser" --adminpass "$adminpass" \
       
    73 			--user "$user" --pass "$pass"
       
    74 		    fi
       
    75 
    67 
    76 		    if test -x /usr/share/littlebird-tc/TrustCenter/scripts/install_update_db
       
    77 		    then
       
    78 			env PATH=/usr/local/zend/bin:$PATH \
       
    79 			    /usr/share/littlebird-tc/TrustCenter/scripts/install_update_db \
       
    80 			    "$adminuser" "$adminpass"
       
    81 		    else
       
    82 			env PATH=/usr/local/zend/bin:$PATH \
       
    83 			    sh /usr/share/littlebird-tc/TrustCenter/scripts/install_update_db.sh \
       
    84 			    "$adminuser" "$adminpass"
       
    85 		    fi
       
    86 
       
    87 		# avoid stupid messages next time
       
    88 	        db_set littlebird-tc/db/have-admin false || true
       
    89 		fi
       
    90 	fi
    68 	fi
    91     ;;
    69     ;;
    92 
    70 
    93     abort-upgrade|abort-remove|abort-deconfigure)
    71     abort-upgrade|abort-remove|abort-deconfigure)
    94     ;;
    72     ;;