Import some files from pbot-ng project and branding this project to hyperbot
This commit is contained in:
77
contrib/rc.d/hyperbot
Normal file
77
contrib/rc.d/hyperbot
Normal file
@@ -0,0 +1,77 @@
|
||||
#!/bin/bash
|
||||
|
||||
. /etc/rc.conf
|
||||
. /etc/rc.d/functions
|
||||
|
||||
# Set the locale
|
||||
export LANG=${LOCALE:-C}
|
||||
if [[ -r /etc/locale.conf ]]; then
|
||||
parse_envfile /etc/locale.conf "${localevars[@]}"
|
||||
fi
|
||||
|
||||
declare -a pids
|
||||
|
||||
while read -r line
|
||||
do
|
||||
pids+=("${line}")
|
||||
done < <( pgrep -u hyperbot )
|
||||
|
||||
case $1 in
|
||||
start)
|
||||
stat_busy "Starting hyperbot"
|
||||
|
||||
# Check it's not already running.
|
||||
if ! (( ${#pids[*]} ))
|
||||
then
|
||||
su - hyperbot -c "cd /srv/hyperbot ; ./envbot & ./hyperbot_fixer & ./issues_change_detector" &
|
||||
# If it's not running then we fail.
|
||||
if ! pgrep hyperbot &>/dev/null
|
||||
then
|
||||
stat_fail
|
||||
exit 1
|
||||
fi
|
||||
|
||||
add_daemon hyperbot
|
||||
stat_done
|
||||
else
|
||||
stat_fail
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
|
||||
stop)
|
||||
stat_busy "Stopping hyperbot"
|
||||
|
||||
if ! (( ${#pids[*]} ))
|
||||
then
|
||||
echo "It's not running"
|
||||
stat_fail
|
||||
exit 1
|
||||
fi
|
||||
|
||||
for (( i=0 ; i!=${#pids[*]} ; i++ ))
|
||||
do
|
||||
kill "${pids[${i}]}" &>/dev/null ||
|
||||
{
|
||||
stat_fail
|
||||
exit 1
|
||||
}
|
||||
done
|
||||
|
||||
unset pids
|
||||
|
||||
rm_daemon hyperbot
|
||||
stat_done
|
||||
|
||||
;;
|
||||
|
||||
restart)
|
||||
$0 stop
|
||||
$0 start
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart}" >&2
|
||||
exit 1
|
||||
|
||||
esac
|
||||
10
contrib/systemd/hyperbot.service
Normal file
10
contrib/systemd/hyperbot.service
Normal file
@@ -0,0 +1,10 @@
|
||||
[Unit]
|
||||
Description=The #hyperbola bot
|
||||
|
||||
[Service]
|
||||
ExecStart=/srv/hyperbot/hyperbot start
|
||||
ExecStop=/srv/hyperbot/hyperbot stop
|
||||
User=hyperbot
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
Reference in New Issue
Block a user