2 # created and maintained by
3 # ragon <frederik.engels24@gmail.com>
8 java_flags
="-Xmx1024M -Xms512M"
9 config_dir
=/etc
/bukkit
/
11 backup_dir
=/etc
/bukkit
/backups
/
12 cp_format
=$
(date '+%Y%m%dh%Hm%M')
13 profile_dir
=/etc
/profile.d
/
15 craft_dir
=/usr
/share
/java
/bukkit
/
16 craft_jar
=craftbukkit-1.1.R1-SNAPSHOT.jar
18 bukkit_dir
=/usr
/share
/java
/bukkit
/
19 bukkit_jar
=bukkit-1.0
.0-R1-SNAPSHOT.jar
22 maven_bin
=/opt
/maven
/bin
/mvn
24 _gitlocal
=/usr
/src
/Bukkit
/
25 _gitlocal2
=/usr
/src
/CraftBukkit
/
27 _gitweb
=git
://github.com
/Bukkit
/Bukkit.git
28 _gitweb2
=git
://github.com
/Bukkit
/CraftBukkit.git
32 if [ -d $craft_dir ] ; then
37 if [ -d $bukkit_dir ] ; then
46 stat_busy
"starting Bukkit Server"
48 if [ "$(screen -ls | grep bukkit)" == "" ] ; then
50 screen
-S bukkit
-dmS $java_bin $java_flags -jar $craft_dir$craft_jar
54 echo "bukkit server already running"
58 if [ -d $config_dir ] ; then
65 stat_busy
"stopping Bukkit Server"
67 if [ "$(screen -ls | grep bukkit)" == "" ] ; then
68 echo "bukkit server is not running"
72 screen
-S bukkit
-p 0 -X stuff
"stop$(echo -ne '\r')"
82 sleep 5 # give enough time to shutdown and close screen
86 stat_busy
"stopping Bukkit Server"
88 if [ "$(screen -ls | grep bukkit)" == "" ] ; then
91 screen
-S bukkit
-p 0 -X stuff
"say server shutting down in 60 seconds for upgrade$(echo -ne '\r')"
93 screen
-S bukkit
-p 0 -X stuff
"say server shutting down in 30 seconds$(echo -ne '\r')"
95 screen
-S bukkit
-p 0 -X stuff
"say 10$(echo -ne '\r')"
97 screen
-S bukkit
-p 0 -X stuff
"say 5$(echo -ne '\r')"
99 screen
-S bukkit
-p 0 -X stuff
"say 4$(echo -ne '\r')"
101 screen
-S bukkit
-p 0 -X stuff
"say 3$(echo -ne '\r')"
103 screen
-S bukkit
-p 0 -X stuff
"say 2$(echo -ne '\r')"
105 screen
-S bukkit
-p 0 -X stuff
"say 1$(echo -ne '\r')"
107 screen
-S bukkit
-p 0 -X stuff
"stop$(echo -ne '\r')"
111 echo "upgrading server now"
112 if [ -d "$_gitlocal" ] ; then
113 cd "$_gitlocal" && git pull
115 mkdir
-p "$_gitlocal"
121 if [ -f "$profile_dir/jdk.sh" ] ; then
122 source $profile_dir/jdk.sh
124 $maven_bin clean
install
126 cp $_gitlocal/target
/$bukkit_jar $bukkit_dir
128 if [ -d "$_gitlocal2" ] ; then
129 cd "$_gitlocal2" && git pull
131 mkdir
-p "$_gitlocal2"
137 $maven_bin clean package
139 cp $_gitlocal2/target
/$craft_jar $craft_dir
144 slowstop
) ## be friendly to your players :)
146 stat_busy
"stopping Bukkit Server"
148 if [ "$(screen -ls | grep bukkit)" == "" ] ; then
151 screen
-S bukkit
-p 0 -X stuff
"say server shutting down in 60 seconds for system upgrade$(echo -ne '\r')"
153 screen
-S bukkit
-p 0 -X stuff
"say server shutting down in 30 seconds$(echo -ne '\r')"
155 screen
-S bukkit
-p 0 -X stuff
"say 10$(echo -ne '\r')"
157 screen
-S bukkit
-p 0 -X stuff
"say 5$(echo -ne '\r')"
159 screen
-S bukkit
-p 0 -X stuff
"say 4$(echo -ne '\r')"
161 screen
-S bukkit
-p 0 -X stuff
"say 3$(echo -ne '\r')"
163 screen
-S bukkit
-p 0 -X stuff
"say 2$(echo -ne '\r')"
165 screen
-S bukkit
-p 0 -X stuff
"say 1$(echo -ne '\r')"
167 screen
-S bukkit
-p 0 -X stuff
"stop$(echo -ne '\r')"
174 stat_busy
'Checking Bukkit server status'
178 stat_busy
"backing up Bukkit world"
181 if [ "$(screen -ls | grep bukkit)" == "" ] ; then
184 screen
-S bukkit
-p 0 -X stuff
"say backing up '$world_dir' as '$world_dir$cp_format.tar.gz'$(echo -ne '\r')"
185 screen
-S bukkit
-p 0 -X stuff
"save-all$(echo -ne '\r')"
188 if [ -d $backup_dir ] ; then
193 echo "backing up as $backup_dir$world_dir$cp_format"
197 tar czf
$backup_dir$world_dir$cp_format.
tar.gz
$world_dir
199 if [ "$(screen -ls | grep bukkit)" == "" ] ; then
202 screen
-S bukkit
-p 0 -X stuff
"say finished backing up '$world_dir'$(echo -ne '\r')"
207 echo "usage: $0 {start|stop|restart|status|upgrade|sysupgrade|backup}"