[pkg-jboss-commits] cvs commit to jboss3/debian by agx
pkg-jboss-commits@lists.alioth.debian.org
pkg-jboss-commits@lists.alioth.debian.org
Wed, 07 Jul 2004 07:28:26 -0600
Update of /cvsroot/pkg-jboss/jboss3/debian
In directory haydn:/tmp/cvs-serv25067/debian
Added Files:
create-server-config
Log Message:
add script to create custom configs
--- NEW FILE: create-server-config ---
#!/bin/bash -e
# Create a custom jboss config based on one shipped by debian
#
# It will be placed under /srv/jboss/<config>, variable data goes into
# /var/cache, log files still end up in /var/log
#
# (c) 2004 Guido Guenther <agx@sigxcpu.org>
#
# Licence GPLv2
PKG=jboss3
. /etc/default/${PKG}
# set DESTDIR for e.g. package builds
BASE=/usr/share/${PKG}/server
TARGET_REAL=/srv/${PKG}
TARGET=${DESTDIR}/${TARGET_REAL}
VAR_REAL=/var/cache/${PKG}
VAR=${DESTDIR}/${VAR_REAL}
LOG_REAL=/var/log/${PKG}
LOG=${DESTDIR}/${LOG_REAL}
# Make sure JBOSS_USER is sane, even when unset in /etc/default/${PKG}
JBOSS_USER=${JBOSS_USER:-jboss}
function usage()
{
echo `basename $0` old_config new_config
}
if [ ! -z "$DESTDIR" ]; then
mkdir -p $DESTDIR/$BASE
fi
if [ -z "$1" -o -z "$2" ]; then
usage
exit 1
else
OLD=$1
BASE_DIR=$BASE/$OLD
NEW=$2
TARGET_DIR=$TARGET/$NEW
TARGET_REAL_DIR=$TARGET_REAL/$NEW
VAR_DIR=$VAR/$NEW
VAR_REAL_DIR=$VAR_REAL/$NEW
LOG_DIR=$LOG/$NEW
LOG_REAL_DIR=$LOG_REAL/$NEW
fi
if [ -d $TARGET/$NEW ]; then
echo "Config already exists. Giving up."
exit 1
fi
echo "Creating config in $TARGET_DIR..."
echo -n "Copying files to $TARGET_DIR"
mkdir -p $TARGET_DIR
for i in deploy lib; do
cp -r --dereference $BASE_DIR/$i $TARGET_DIR
done
# these are not present in all configs
for i in deploy-hasingleton; do
[ -d $BASE_DIR/$i ] && cp -r --dereference $BASE_DIR/$i $TARGET_DIR
done
echo .
# these neither, but they also need special permissions
if [ -d $BASE_DIR/farm ]; then
echo -n "Creating farm/ dir"
mkdir $TARGET_DIR/farm
chown ${JBOSS_USER}:root $TARGET_DIR/farm
echo .
fi
echo -n "Creating varibale data storage in $VAR_DIR"
for i in tmp work data; do
mkdir -p $VAR_DIR/$i
ln -s $VAR_REAL_DIR/$i $TARGET_DIR
done
chown -R ${JBOSS_USER}:root $VAR_DIR
echo .
echo -n "Creating log dir in $LOG"
mkdir -p $LOG_DIR
ln -s $LOG_REAL_DIR $TARGET_DIR/log
chown -R ${JBOSS_USER}:root $LOG_DIR
echo .
# Conf is special since it may contain symlinks which we don't want to dereference
echo -n "Copying conf/ to $TARGET_DIR"
mkdir $TARGET_DIR/conf/
cp -r $BASE_DIR/conf/* $TARGET_DIR/conf/
# Still needs special handling, buah.
if [ -L $TARGET_DIR/conf/jboss.web ]; then
mkdir -p $VAR_DIR/jboss.web
rm $TARGET_DIR/conf/jboss.web
ln -s $VAR_REAL_DIR/jboss.web $TARGET_DIR/conf/
fi
echo .
echo -n "Creating symlink in $BASE"
if [ -f "$BASE/$NEW" ]; then
echo "$BASE/$NEW exists, please remove."
exit 1
else
ln -s $TARGET_REAL_DIR ${DESTDIR}/$BASE/$NEW
fi
echo .
echo "Done."