summaryrefslogtreecommitdiff
path: root/localezcreate
diff options
context:
space:
mode:
authorJonas Smedegaard <dr@jones.dk>2002-12-30 17:53:47 +0000
committerJonas Smedegaard <dr@jones.dk>2002-12-30 17:53:47 +0000
commit20b2ce29bc811c225ae4862f8d2f562dfcb6cbfa (patch)
tree6fce8e5e2ba6e8bb6d731a3796a33024befb89a3 /localezcreate
parent53bd895d2adb06c3875fee0052caf574d6d0fd70 (diff)
Add new option --dbmatch to support pools of webservers accessing same database (could be fun setting up that some day).
Diffstat (limited to 'localezcreate')
-rwxr-xr-xlocalezcreate16
1 files changed, 10 insertions, 6 deletions
diff --git a/localezcreate b/localezcreate
index 03fb425..8d94486 100755
--- a/localezcreate
+++ b/localezcreate
@@ -3,7 +3,7 @@
# /usr/local/sbin/localezcreate
# Copyright 2001-2002 Jonas Smedegaard <dr@jones.dk>
#
-# $Id: localezcreate,v 1.23 2002-12-09 00:17:34 jonas Exp $
+# $Id: localezcreate,v 1.24 2002-12-30 17:53:47 jonas Exp $
#
# Create local eZ Publish site
#
@@ -20,7 +20,7 @@ set -e
prg=`basename $0`
-TEMP=`getopt -o hu:g:d:a:m:N:U:D:Z:i::v::q::f:: --long help,user:,group:,domain:,mailuser:,maildomain:,dbname:,dbuser:,dbserver:,dballow:,info::,verbose::,debug::,query::,force:: -n "$prg" -- "$@"`
+TEMP=`getopt -o hu:g:d:a:m:N:M:U:D:Z:i::v::q::f:: --long help,user:,group:,domain:,mailuser:,maildomain:,dbname:,dbmatch:,dbuser:,dbserver:,dballow:,info::,verbose::,debug::,query::,force:: -n "$prg" -- "$@"`
# Check for non-GNU getopt
if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi
@@ -31,7 +31,7 @@ eval set -- "$TEMP"
# (If changing defaults, you might need to change these as well)
opts1="user group domain maildomain dbserver dballow templates languages sqlchunks templatedirs languagedirs sqldirs" # Options with self-contained defaults
opts2="dbuser home" # Options requiring $opts1 to resolve default
-opts3="mailuser dbname basedir adminhost webcfg" # Options requiring $opts1, $opts2 or $host to resolve default
+opts3="mailuser dbname dbmatch basedir adminhost webcfg" # Options requiring $opts1, $opts2 or $host to resolve default
optsboolean="debug verbose info query force" # Do not touch these!
# Defaults
@@ -40,7 +40,8 @@ defaultgroup="www-data"
defaultdomain="ez."`hostname -d`
defaultmailuser='$dbuser'
defaultmaildomain=`cat /etc/mailname 2> /dev/null || hostname -d`
-defaultdbname='ez_2_2_$host' # TODO: Allow all defaults to be set like this
+defaultdbname='$dbuser-ez-$host'
+defaultdbmatch='$dbuser%'
defaultdbuser='$user'
defaultdbserver="localhost"
defaultdballow="localhost"
@@ -90,6 +91,8 @@ function usage() {
echo " $defaultmaildomain)"
echo " -N, --dbname=DB MySQL database name (default:"
echo " $defaultdbname)"
+ echo " -M, --dbmatch=STRING MySQL database authorization match (default:"
+ echo " $defaultdbmatch)"
echo " -U, --dbuser=UID MySQL database user (default: $defaultdbuser)"
echo " -D, --dbserver=HOST IP or host of MySQL server (default:"
echo " $defaultdbserver)"
@@ -140,6 +143,7 @@ while true ; do
-a|--mailuser) mailuser="$2"; shift 2;;
-m|--maildomain) maildomain="$2"; shift2 ;;
-N|--dbname) dbname="$2"; shift 2;;
+ -M|--dbmatch) dbmatch="$2"; shift 2;;
-U|--dbuser) dbuser="$2"; shift 2;;
-D|--dbserver) dbserver="$2"; shift 2;;
-Z|--dballow) dballow="$2"; shift 2;;
@@ -297,11 +301,11 @@ if [ -e /usr/share/wwwconfig-common/mysql-createuser.sh ] ; then
exit 1
fi
for h in `echo "localhost $dballow" | sort -u`; do
- echo "GRANT INDEX ON $dbname.* TO '$dbuser'@$h IDENTIFIED BY '$dbpass';" | mysql -u$dbadmin -p$dbadmpass $optdbserver
+ echo "GRANT INDEX ON '$dbmatch' TO '$dbuser'@'$h';" | mysql -u$dbadmin -p$dbadmpass $optdbserver
done
else
for h in `echo "localhost $dballow" | sort -u`; do
- echo "GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX ON $dbname.* TO '$dbuser'@$h IDENTIFIED BY '$dbpass';" | mysql -u$dbadmin -p$dbadmpass $optdbserver
+ echo "GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX ON '$dbmatch' TO '$dbuser'@'$h' IDENTIFIED BY '$dbpass';" | mysql -u$dbadmin -p$dbadmpass $optdbserver
done
fi