# uHub - a lightweight but high-performance hub for the ADC
#        peer-to-peer protocol.

description "uHub - High performance ADC peer-to-peer hub"

# Start and stop conditions.
start on filesystem or runlevel [2345]
stop on runlevel [!2345]

# Allow the service to respawn, but if its happening too often
# (10 times in 5 seconds) theres a problem and we should stop trying.
respawn
respawn limit 10 5

# The program is going to fork, and upstart needs to know this
# so it can track the change in PID.
expect fork

# Set the mode the process should create files in.
umask 022

# Make sure the log folder exists.
pre-start script
    mkdir -p -m0755 /var/log/uhub
end script

# Command to run it.
exec /usr/bin/uhub -f -u uhub -g uhub -l /var/log/uhub/uhub.log -c /etc/uhub/uhub.conf