#
# Copyright (c) 2004 The Trustees of Princeton University (Trustees).
#
-# $Id: vuseradd,v 1.2 2004/08/19 22:30:30 mlh-pl_kernel Exp $
+# $Id: vuseradd,v 1.3 2004/08/23 18:30:55 mlh-pl_kernel Exp $
#
: ${UTIL_VSERVER_VARS:=$(dirname $0)/util-vserver-vars}
[ -z "$1" ] && usage
NAME=$1
-# bail on errors
-set -e
-
# add user
useradd -s /bin/vsh $NAME
# build image in .vtmp
TMP=$(mktemp -d "$VROOTDIR/.vtmp/$NAME.XXXXXX")
"$PKGLIBDIR/vbuild" "$VROOTDIR/vserver-reference" "$TMP"
+ RETVAL=$?
# move it to .vcache when complete
- mv "$TMP" "$VROOTDIR/$NAME"
+ if [ $RETVAL -eq 0 ] ; then
+ mv "$TMP" "$VROOTDIR/$NAME"
+ else
+ echo "Error $RETVAL building $VROOTDIR/$NAME"
+ rm -rf "$TMP"
+ exit $RETVAL
+ fi
fi
+fi
+
+if [ -d "$VROOTDIR/$NAME" ] ; then
# fix permissions
chmod 755 "$VROOTDIR/$NAME"
-fi
-# add user in vserver
-vserver $NAME suexec root groupadd -g $GROUPID $NAME
-vserver $NAME suexec root useradd -u $USERID -g $GROUPID -p '' $NAME
+ # add user in vserver
+ vserver $NAME suexec root groupadd -g $GROUPID $NAME
+ vserver $NAME suexec root useradd -u $USERID -g $GROUPID -p '' $NAME
+fi