This commit is contained in:
parent
852a096f1d
commit
a7895ef59a
@ -43,17 +43,21 @@ namespace ZwayBot {
|
||||
}
|
||||
|
||||
private void WaitForShutdown() {
|
||||
this.sig_thread = new System.Threading.Thread(delegate() {
|
||||
if (Type.GetType("Mono.Runtime") != null) {
|
||||
this.sig_thread = new System.Threading.Thread(delegate () {
|
||||
Mono.Unix.UnixSignal[] signals = new Mono.Unix.UnixSignal[] {
|
||||
new Mono.Unix.UnixSignal(Mono.Unix.Native.Signum.SIGTERM),
|
||||
new Mono.Unix.UnixSignal(Mono.Unix.Native.Signum.SIGINT)
|
||||
};
|
||||
while (true) {
|
||||
while (this.RunningProcess) {
|
||||
Int32 i = Mono.Unix.UnixSignal.WaitAny(signals, -1);
|
||||
this.RunningProcess = false;
|
||||
}
|
||||
});
|
||||
this.sig_thread.Start();
|
||||
} else {
|
||||
Console.CancelKeyPress += new ConsoleCancelEventHandler(this.SetupShutdown);
|
||||
}
|
||||
while (this.RunningProcess) {
|
||||
System.Threading.Thread.Sleep(100);
|
||||
}
|
||||
@ -70,8 +74,10 @@ namespace ZwayBot {
|
||||
Console.WriteLine("Modul entladen: " + item.Key);
|
||||
}
|
||||
this.zw.Dispose();
|
||||
if (this.sig_thread != null && this.sig_thread.IsAlive) {
|
||||
this.sig_thread.Abort();
|
||||
}
|
||||
}
|
||||
|
||||
private void ModulEvents() {
|
||||
foreach (KeyValuePair<String, AModul> item in this.moduls) {
|
||||
|
@ -31,8 +31,8 @@ using System.Runtime.InteropServices;
|
||||
// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
|
||||
// übernehmen, indem Sie "*" eingeben:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.4.3")]
|
||||
[assembly: AssemblyFileVersion("1.4.3")]
|
||||
[assembly: AssemblyVersion("1.5.0")]
|
||||
[assembly: AssemblyFileVersion("1.5.0")]
|
||||
[assembly: NeutralResourcesLanguage("de-DE")]
|
||||
|
||||
// “Internet Of Things” icon by By Michael Wohlwend, US, from thenounproject.com.
|
||||
|
@ -98,33 +98,6 @@
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="control\control.sh">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="control\join.sh">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="control\loop.sh">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="control\restart.sh">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="control\settings.cfg">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="control\start.sh">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="control\stop.sh">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="control\stuff.sh">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="control\view.sh">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="config-example\cronjob.conf.example">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,92 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Read Settings
|
||||
DIR=`dirname $0`
|
||||
source $DIR/settings.cfg
|
||||
cd $control_root
|
||||
|
||||
|
||||
for(( ; ; ))
|
||||
do
|
||||
# Test for Running Servers
|
||||
servers=$(./view.sh | grep $screen_name)
|
||||
|
||||
clear
|
||||
|
||||
if [[ -z $servers ]];
|
||||
then
|
||||
echo "Zway-Bot not Running!"
|
||||
echo ""
|
||||
echo "1) Start Zway-Bot"
|
||||
|
||||
else
|
||||
echo "Zway-Bot is Running :)"
|
||||
echo ""
|
||||
echo "2) Stop Zway-Bot"
|
||||
echo "3) Restart Zway-Bot"
|
||||
echo "4) Attach to Servers Screen-Session"
|
||||
echo "5) Put Command to Zway-Bot"
|
||||
fi
|
||||
|
||||
echo "q) Quit"
|
||||
echo ""
|
||||
read -p "Choice: " choice
|
||||
|
||||
case "$choice" in
|
||||
q) #Quit
|
||||
exit 0
|
||||
;;
|
||||
1) #Start Server
|
||||
if [[ -z $servers ]];
|
||||
then
|
||||
echo "Starting Zway-Bot..."
|
||||
./start.sh
|
||||
else
|
||||
echo "Zway-Bot Allready started!"
|
||||
fi
|
||||
;;
|
||||
|
||||
2) #Stop Server
|
||||
if [[ -z $servers ]];
|
||||
then
|
||||
echo "Zway-Bot is not Running!"
|
||||
else
|
||||
echo "Stopping Zway-Bot..."
|
||||
./stop.sh
|
||||
fi
|
||||
;;
|
||||
|
||||
3) #Restart Server
|
||||
if [[ -z $servers ]];
|
||||
then
|
||||
echo "Zway-Bot is not Running!"
|
||||
else
|
||||
echo "Restarting Zway-Bot..."
|
||||
./restart.sh
|
||||
fi
|
||||
;;
|
||||
|
||||
4) #Attach to Screen
|
||||
if [[ -z $servers ]];
|
||||
then
|
||||
echo "Zway-Bot is not Running!"
|
||||
else
|
||||
./join.sh
|
||||
fi
|
||||
;;
|
||||
|
||||
5) #Put Command to Server
|
||||
if [[ -z $servers ]];
|
||||
then
|
||||
echo "Zway-Bot is not Running!"
|
||||
else
|
||||
read -p "Please enter Zway-Bot-Command: " mc_cmd
|
||||
./stuff.sh "$mc_cmd"
|
||||
fi
|
||||
;;
|
||||
|
||||
*) #Invalid Selection
|
||||
echo "Wrong Selection!"
|
||||
;;
|
||||
esac
|
||||
done
|
@ -1,10 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Read Settings
|
||||
DIR=`dirname $0`
|
||||
source $DIR/settings.cfg
|
||||
|
||||
echo Press STRG+A then D to detach from Console
|
||||
read -p "Press [Enter] to continue..."
|
||||
|
||||
screen -R $screen_name
|
@ -1,21 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Read Settings
|
||||
DIR=`dirname $0`
|
||||
source $DIR/settings.cfg
|
||||
|
||||
rm $control_root/stop_server.info
|
||||
|
||||
for(( ; ; ))
|
||||
do
|
||||
if [ ! -e $control_root/stop_server.info ];
|
||||
then
|
||||
cd $mc_root
|
||||
$mc_cmd
|
||||
else
|
||||
echo "Stopped Server!"
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
rm $control_root/stop_server.info
|
@ -1,28 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Read Settings
|
||||
DIR=`dirname $0`
|
||||
source $DIR/settings.cfg
|
||||
cd $control_root
|
||||
|
||||
# Be Shure theere is no Stop-Info
|
||||
rm $control_root/stop_server.info
|
||||
|
||||
echo "Server will be restarted in 5 Seconds..."
|
||||
./stuff.sh "/say ReStarting Server in 5 seconds!"
|
||||
sleep 1
|
||||
echo "4..."
|
||||
./stuff.sh "/say 4..."
|
||||
sleep 1
|
||||
echo "3..."
|
||||
./stuff.sh "/say 3..."
|
||||
sleep 1
|
||||
echo "2..."
|
||||
./stuff.sh "/say 2..."
|
||||
sleep 1
|
||||
echo "1..."
|
||||
./stuff.sh "/say 1..."
|
||||
sleep 1
|
||||
echo "Restarting Server..."
|
||||
./stuff.sh "/say Restart Now!"
|
||||
./stuff.sh "stop"
|
@ -1,23 +0,0 @@
|
||||
#!/bin/bash
|
||||
# Minecraft Control-Scripts Config-File
|
||||
|
||||
# (please remember that there are no spaces allowed around the =-Sign
|
||||
# in the config-lines)
|
||||
|
||||
# Minecraft-Dir & JAR
|
||||
|
||||
# Directory where minecraft is in
|
||||
mc_root="/home/pi/Zway-Bot"
|
||||
|
||||
# Root of Control-Scripts
|
||||
control_root="$mc_root/control"
|
||||
|
||||
|
||||
# MC-Server-Jar (will be executed in mc_root)
|
||||
mc_jar="$mc_root/Zway-Bot.exe"
|
||||
|
||||
# MC-Server Start-Command
|
||||
mc_cmd="mono $mc_jar"
|
||||
|
||||
# Screen
|
||||
screen_name="Zway-Bot"
|
@ -1,14 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Read Settings
|
||||
DIR=`dirname $0`
|
||||
source $DIR/settings.cfg
|
||||
|
||||
# Start Loop in Screen
|
||||
screen -A -m -d -S $screen_name $control_root/loop.sh
|
||||
|
||||
# Allow other users to control this screen-Session!
|
||||
screen -r $screen_name -X multiuser on
|
||||
screen -r $screen_name -X addacl www-data
|
||||
screen -r $screen_name -X addacl mc
|
||||
screen -r $screen_name -X addacl mw
|
@ -1,13 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Read Settings
|
||||
DIR=`dirname $0`
|
||||
source $DIR/settings.cfg
|
||||
cd $control_root
|
||||
|
||||
# Create Stop-Info!
|
||||
touch $control_root/stop_server.info
|
||||
|
||||
echo "Shuting Down Server..."
|
||||
./stuff.sh "/exit"
|
||||
screen -R $screen_name
|
@ -1,10 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Read Settings
|
||||
DIR=`dirname $0`
|
||||
source $DIR/settings.cfg
|
||||
|
||||
# screen -r $screen_name -X stuff "$1\n"
|
||||
|
||||
screen -p 0 -S $screen_name -X eval "stuff '$1'\015"
|
||||
# as_user "screen -p 0 -S minecraft -X eval 'stuff \"$command\"\015'"
|
@ -1,3 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
screen -ls
|
Binary file not shown.
@ -1,92 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Read Settings
|
||||
DIR=`dirname $0`
|
||||
source $DIR/settings.cfg
|
||||
cd $control_root
|
||||
|
||||
|
||||
for(( ; ; ))
|
||||
do
|
||||
# Test for Running Servers
|
||||
servers=$(./view.sh | grep $screen_name)
|
||||
|
||||
clear
|
||||
|
||||
if [[ -z $servers ]];
|
||||
then
|
||||
echo "Zway-Bot not Running!"
|
||||
echo ""
|
||||
echo "1) Start Zway-Bot"
|
||||
|
||||
else
|
||||
echo "Zway-Bot is Running :)"
|
||||
echo ""
|
||||
echo "2) Stop Zway-Bot"
|
||||
echo "3) Restart Zway-Bot"
|
||||
echo "4) Attach to Servers Screen-Session"
|
||||
echo "5) Put Command to Zway-Bot"
|
||||
fi
|
||||
|
||||
echo "q) Quit"
|
||||
echo ""
|
||||
read -p "Choice: " choice
|
||||
|
||||
case "$choice" in
|
||||
q) #Quit
|
||||
exit 0
|
||||
;;
|
||||
1) #Start Server
|
||||
if [[ -z $servers ]];
|
||||
then
|
||||
echo "Starting Zway-Bot..."
|
||||
./start.sh
|
||||
else
|
||||
echo "Zway-Bot Allready started!"
|
||||
fi
|
||||
;;
|
||||
|
||||
2) #Stop Server
|
||||
if [[ -z $servers ]];
|
||||
then
|
||||
echo "Zway-Bot is not Running!"
|
||||
else
|
||||
echo "Stopping Zway-Bot..."
|
||||
./stop.sh
|
||||
fi
|
||||
;;
|
||||
|
||||
3) #Restart Server
|
||||
if [[ -z $servers ]];
|
||||
then
|
||||
echo "Zway-Bot is not Running!"
|
||||
else
|
||||
echo "Restarting Zway-Bot..."
|
||||
./restart.sh
|
||||
fi
|
||||
;;
|
||||
|
||||
4) #Attach to Screen
|
||||
if [[ -z $servers ]];
|
||||
then
|
||||
echo "Zway-Bot is not Running!"
|
||||
else
|
||||
./join.sh
|
||||
fi
|
||||
;;
|
||||
|
||||
5) #Put Command to Server
|
||||
if [[ -z $servers ]];
|
||||
then
|
||||
echo "Zway-Bot is not Running!"
|
||||
else
|
||||
read -p "Please enter Zway-Bot-Command: " mc_cmd
|
||||
./stuff.sh "$mc_cmd"
|
||||
fi
|
||||
;;
|
||||
|
||||
*) #Invalid Selection
|
||||
echo "Wrong Selection!"
|
||||
;;
|
||||
esac
|
||||
done
|
@ -1,10 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Read Settings
|
||||
DIR=`dirname $0`
|
||||
source $DIR/settings.cfg
|
||||
|
||||
echo Press STRG+A then D to detach from Console
|
||||
read -p "Press [Enter] to continue..."
|
||||
|
||||
screen -R $screen_name
|
@ -1,21 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Read Settings
|
||||
DIR=`dirname $0`
|
||||
source $DIR/settings.cfg
|
||||
|
||||
rm $control_root/stop_server.info
|
||||
|
||||
for(( ; ; ))
|
||||
do
|
||||
if [ ! -e $control_root/stop_server.info ];
|
||||
then
|
||||
cd $mc_root
|
||||
$mc_cmd
|
||||
else
|
||||
echo "Stopped Server!"
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
rm $control_root/stop_server.info
|
@ -1,28 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Read Settings
|
||||
DIR=`dirname $0`
|
||||
source $DIR/settings.cfg
|
||||
cd $control_root
|
||||
|
||||
# Be Shure theere is no Stop-Info
|
||||
rm $control_root/stop_server.info
|
||||
|
||||
echo "Server will be restarted in 5 Seconds..."
|
||||
./stuff.sh "/say ReStarting Server in 5 seconds!"
|
||||
sleep 1
|
||||
echo "4..."
|
||||
./stuff.sh "/say 4..."
|
||||
sleep 1
|
||||
echo "3..."
|
||||
./stuff.sh "/say 3..."
|
||||
sleep 1
|
||||
echo "2..."
|
||||
./stuff.sh "/say 2..."
|
||||
sleep 1
|
||||
echo "1..."
|
||||
./stuff.sh "/say 1..."
|
||||
sleep 1
|
||||
echo "Restarting Server..."
|
||||
./stuff.sh "/say Restart Now!"
|
||||
./stuff.sh "stop"
|
@ -1,23 +0,0 @@
|
||||
#!/bin/bash
|
||||
# Minecraft Control-Scripts Config-File
|
||||
|
||||
# (please remember that there are no spaces allowed around the =-Sign
|
||||
# in the config-lines)
|
||||
|
||||
# Minecraft-Dir & JAR
|
||||
|
||||
# Directory where minecraft is in
|
||||
mc_root="/home/pi/Zway-Bot"
|
||||
|
||||
# Root of Control-Scripts
|
||||
control_root="$mc_root/control"
|
||||
|
||||
|
||||
# MC-Server-Jar (will be executed in mc_root)
|
||||
mc_jar="$mc_root/Zway-Bot.exe"
|
||||
|
||||
# MC-Server Start-Command
|
||||
mc_cmd="mono $mc_jar"
|
||||
|
||||
# Screen
|
||||
screen_name="Zway-Bot"
|
@ -1,14 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Read Settings
|
||||
DIR=`dirname $0`
|
||||
source $DIR/settings.cfg
|
||||
|
||||
# Start Loop in Screen
|
||||
screen -A -m -d -S $screen_name $control_root/loop.sh
|
||||
|
||||
# Allow other users to control this screen-Session!
|
||||
screen -r $screen_name -X multiuser on
|
||||
screen -r $screen_name -X addacl www-data
|
||||
screen -r $screen_name -X addacl mc
|
||||
screen -r $screen_name -X addacl mw
|
@ -1,13 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Read Settings
|
||||
DIR=`dirname $0`
|
||||
source $DIR/settings.cfg
|
||||
cd $control_root
|
||||
|
||||
# Create Stop-Info!
|
||||
touch $control_root/stop_server.info
|
||||
|
||||
echo "Shuting Down Server..."
|
||||
./stuff.sh "/exit"
|
||||
screen -R $screen_name
|
@ -1,10 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Read Settings
|
||||
DIR=`dirname $0`
|
||||
source $DIR/settings.cfg
|
||||
|
||||
# screen -r $screen_name -X stuff "$1\n"
|
||||
|
||||
screen -p 0 -S $screen_name -X eval "stuff '$1'\015"
|
||||
# as_user "screen -p 0 -S minecraft -X eval 'stuff \"$command\"\015'"
|
@ -1,3 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
screen -ls
|
@ -1,6 +1 @@
|
||||
set /P maj=Enter Major Version:
|
||||
set /P min=Enter Minor Version:
|
||||
set /P bui=Enter Build Version:
|
||||
|
||||
bash.exe -c "./make-deb.sh %maj% %min% %bui% armhf"
|
||||
pause
|
||||
bash.exe -c "./make-deb.sh armhf"
|
@ -1,15 +1,16 @@
|
||||
#!/bin/bash
|
||||
WORKDIR="/home/blubb"
|
||||
ROOT="$WORKDIR/deb"
|
||||
|
||||
HOMEDIR="/home/blubb"
|
||||
ROOT="$HOMEDIR/deb"
|
||||
OUTPUT="../bin/Release"
|
||||
EXEC="$ROOT/usr/local/bin/zwaybot"
|
||||
CONFIG="$ROOT/etc/zwaybot"
|
||||
SYSTEMD="$ROOT/etc/systemd/system"
|
||||
DEBIAN="$ROOT/DEBIAN"
|
||||
VMAJOR=$1
|
||||
VMINOR=$2
|
||||
VBUILD=$3
|
||||
ARCHT=$4
|
||||
VMAJOR=$(grep -e "^\[assembly: AssemblyVersion(\"" ../Properties/AssemblyInfo.cs | cut -d'"' -f 2 | cut -d'.' -f 1)
|
||||
VMINOR=$(grep -e "^\[assembly: AssemblyVersion(\"" ../Properties/AssemblyInfo.cs | cut -d'"' -f 2 | cut -d'.' -f 2)
|
||||
VBUILD=$(grep -e "^\[assembly: AssemblyVersion(\"" ../Properties/AssemblyInfo.cs | cut -d'"' -f 2 | cut -d'.' -f 3)
|
||||
ARCHT=$1
|
||||
|
||||
mkdir -p $EXEC
|
||||
mkdir -p $CONFIG
|
||||
@ -25,13 +26,17 @@ sed -i s/Architecture:\ any/"Architecture: $ARCHT"/ $DEBIAN/control
|
||||
chmod 755 $DEBIAN -R
|
||||
|
||||
cp zwaybot.service $SYSTEMD
|
||||
chmod 755 $SYSTEMD -R
|
||||
chmod 644 $SYSTEMD/zwaybot.service
|
||||
|
||||
cp $OUTPUT/*.exe $EXEC/
|
||||
cp $OUTPUT/*.dll $EXEC/
|
||||
find $OUTPUT -name \*.dll ! -name Mono.Posix.dll -exec cp {} $EXEC/ \;
|
||||
chmod 644 $EXEC/*
|
||||
chmod 755 $EXEC
|
||||
|
||||
cp $OUTPUT/config-example/* $CONFIG
|
||||
cp $OUTPUT/control $EXEC/ -r
|
||||
chmod 644 $CONFIG/*
|
||||
chmod 755 $CONFIG
|
||||
|
||||
dpkg-deb --build $ROOT
|
||||
mv $WORKDIR/deb.deb ../bin/Builds/$ARCHT/"zwaybot_$VMAJOR.$VMINOR-$VBUILD.deb"
|
||||
rm $WORKDIR/deb -r
|
||||
mv $HOMEDIR/deb.deb ../../../Builds/$ARCHT/"zwaybot_$VMAJOR.$VMINOR-$VBUILD.deb"
|
||||
rm $HOMEDIR/deb -r
|
@ -1,3 +1,4 @@
|
||||
#!/bin/sh
|
||||
|
||||
systemctl daemon-reload
|
||||
service zwaybot start
|
@ -1,5 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
service zwaybot stop
|
||||
addgroup zwaybot
|
||||
adduser --system --no-create-home --disabled-login --ingroup zwaybot zwaybot
|
||||
useradd -M zwaybot
|
||||
usermod -L zwaybot
|
||||
groupadd zwaybot
|
||||
usermod -G zwaybot,adm zwaybot
|
||||
|
@ -8,6 +8,7 @@ After=network-online.target
|
||||
User=zwaybot
|
||||
Group=zwaybot
|
||||
WorkingDirectory=/usr/local/bin/zwaybot
|
||||
ExecStartPre=rm /var/log/zwaybot.log && touch /var/log/zwaybot.log && chown zwaybot:zwaybot /var/log/zwaybot.log && chmod 644 /var/log/zwaybot.log
|
||||
ExecStart=/usr/bin/mono /usr/local/bin/zwaybot/Zway-Bot.exe
|
||||
KillMode=control-group
|
||||
Restart=on-failure
|
||||
|
Loading…
Reference in New Issue
Block a user