Explorar o código

Migrated to fn_function

arma3server is not much smaller as now uses fn_functions. All servers to
be migrated soon.
Daniel Gibbs %!s(int64=11) %!d(string=hai) anos
pai
achega
734e645c5c
Modificáronse 1 ficheiros con 27 adicións e 235 borrados
  1. 27 235
      Arma3/arma3server

+ 27 - 235
Arma3/arma3server

@@ -47,7 +47,7 @@ servercfg="${servicename}.cfg"
 servercfgfullpath="${servercfgdir}/${servercfg}"
 backupdir="backups"
 
-# Server Details Cont.
+# Server Details
 servername=$(grep -s hostname "${servercfgfullpath}"| grep -v //|sed -e 's/\<hostname\>//g'| tr -d '=\"; ')
 
 # Logging
@@ -65,258 +65,51 @@ consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%d-%m-%Y-%H-%M-
 
 ##### Script #####
 # Do not edit
-# unless you know
-# what you are doing
-
-fn_scriptlog(){
-	echo -e "$(date '+%b %d %H:%M:%S') ${servicename}: ${1}" >> "${scriptlog}"
-}
-
-# [ FAIL ]
-fn_printfail(){
-    echo -en "\r\033[K[\e[0;31m FAIL \e[0;39m] $@"
-}
-
-fn_printfailnl(){
-    echo -e "\r\033[K[\e[0;31m FAIL \e[0;39m] $@"
-}
-
-# [  OK  ]
-fn_printok(){
-    echo -en "\r\033[K[\e[0;32m  OK  \e[0;39m] $@"
-}
-
-fn_printoknl(){
-    echo -e "\r\033[K[\e[0;32m  OK  \e[0;39m] $@"
-}
-
-# [ INFO ]
-fn_printinfo(){
-    echo -en "\r\033[K[\e[0;36m INFO \e[0;39m] $@"
-}
-
-fn_printinfonl(){
-    echo -e "\r\033[K[\e[0;36m INFO \e[0;39m] $@"
-}
-
-# [ WARN ]
-fn_printwarn(){
-	echo -en "\r\033[K[\e[1;33m WARN \e[0;39m] $@"
-}
-
-fn_printwarnnl(){
-	echo -e "\r\033[K[\e[1;33m WARN \e[0;39m] $@"
-}
-
-# [ .... ]
-fn_printdots(){
-    echo -en "\r\033[K[ .... ] $@"
-}
 
-fn_rootcheck(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_syscheck(){
-if [ ! -e "${systemdir}" ]; then
-	fn_printfailnl "Cannot access ${systemdir}: No such directory"
-	exit
+fn_install(){
+fn_rootcheck
+fn_header
+if [ -z "${autoinstall}" ]; then
+	fn_serverdirectory
+	fn_header
 fi
+fn_steamdl
+fn_steaminstall
+fn_steamfix
+fn_glibcfix
+fn_loginstall
+fn_getquery
+fn_serverconfig
+fn_header
+fn_details
+fn_installcomplete
 }
 
-fn_autoip(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_logmanager(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_debugserver(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_console(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_backupserver(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_distro(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_uptime(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_load(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_emailnotification(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_emailtest(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_serverquery(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_monitorserver(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_updateserver(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_validateserver(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_restartserver(){
-fn_scriptlog "Restarting ${servername}"
-fn_stopserver
-fn_startserver
-}
-
-fn_stopserver(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_startserver(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
 
-fn_details(){
+fn_functions(){
+# Functions are defines in fn_functions.
 functionfile="${FUNCNAME}"
 fn_runfunction
 }
 
 fn_runfunction(){
-# Download function if missing
+# Functions are downloaded and run with this function
 if [ ! -f "${rootdir}/functions/${functionfile}" ]; then
 	cd "${rootdir}"
 	if [ ! -d "functions" ]; then
 		mkdir functions
 	fi
-	echo "loading ${functionfile}..."
 	cd functions
-	wget --no-check-certificate -nv -N https://raw.githubusercontent.com/dgibbs64/linuxgameservers/master/functions/${functionfile}
+	echo -e "loading ${functionfile}...\c"
+	wget -N --no-check-certificate /dev/null https://raw.githubusercontent.com/dgibbs64/linuxgameservers/master/functions/${functionfile} 2>&1 | grep -F HTTP | cut -c45-
 	chmod +x "${functionfile}"
 	cd "${rootdir}"
 	sleep 1
-	echo ""
 fi
-# Run function
 source "${rootdir}/functions/${functionfile}"
 }
 
-#
-## Installer
-#
-
-fn_glibcfix(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_header(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_steamdl(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_steaminstall(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_steamfix(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_loginstall(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_getquery(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_retryinstall(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_serverdirectory(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_serverconfig(){
-functionfile="${FUNCNAME}"
-fn_runfunction
-}
-
-fn_install(){
-fn_rootcheck
-fn_header
-if [ -z "${autoinstall}" ]; then
-	fn_serverdirectory
-	fn_header
-fi
-fn_steamdl
-fn_steaminstall
-fn_steamfix
-fn_glibcfix
-fn_loginstall
-fn_getquery
-fn_serverconfig
-fn_header
-fn_details
-echo "================================="
-echo "Install Complete!"
-echo ""
-echo "To start server type:"
-echo "${selfname} start"
-echo ""
-}
-
-fn_autoinstall(){
-autoinstall=1
-fn_install
-}
+fn_functions
 
 case "$1" in
 	start)
@@ -326,11 +119,10 @@ case "$1" in
 	restart)
 		fn_restartserver;;
 	update)
-		fn_updateserver;;
+		norestart=1;
+		fn_versioncheck;;
 	update-restart)
-		fn_stopserver
-		fn_updateserver
-		fn_startserver;;
+		fn_versioncheck;;
 	validate)
 		fn_validateserver;;
 	validate-restart)
@@ -357,4 +149,4 @@ case "$1" in
 	echo "Usage: $0 {start|stop|restart|update|update-restart|validate|validate-restart|monitor|email-test|details|backup|console|debug|install|auto-install}"
 	exit 1;;
 esac
-exit
+exit