#!/bin/sh -xe

node=$1
if [ -z "$node" ]; then
    echo "node name is mandatory argument."
    exit 1;
fi
if grep '^$node:x:' /etc/passwd >/dev/null; then
    echo "node $node already exists."
    exit 1;
fi
if ! [ -d /etc/hasher-priv/user.d ]; then
    echo "Oops: hasher expected but not found"
    exit 1;
fi

#groupadd -f cronbuild
#groupadd -f repocop
groupadd -f robots
groupadd -f $node
useradd $node -g $node -G robots
#case $node in
#    repocop*) usermod -a -G repocop ;;
#    cron*) usermod -a -G cronbuild ;;
#esac

chmod g+x /home/$node
chgrp robots /home/$node
mkdir -p /var/ftp/altnode/$node
chown $node /var/ftp/altnode/$node
if ! [ -e /etc/hasher-priv/user.d/$node ]; then
    hasher-useradd $node
fi
if [ -e /etc/hasher-priv/user.d/$node ] && ! grep wlimit_time_elapsed /etc/hasher-priv/user.d/$node >/dev/null; then
    cat >> /etc/hasher-priv/user.d/$node <<EOF

allowed_mountpoints=/proc,/dev/pts
# This option limits total execution time, in seconds.
wlimit_time_elapsed=12000
wlimit_time_idle=1500
EOF
fi
#[ -x setup_build_node.sh ] && su - $node < setup_build_node.sh
