mirror of
https://github.com/GameServerManagers/LinuxGSM.git
synced 2025-01-09 04:27:35 +08:00
Modified function file downloader
Modified from @jaredballou pull request. Now uses curl as it better handles errors. Can now select different repo and branch if needed. This is very useful for development.
This commit is contained in:
parent
39e963fb13
commit
08639c6510
@ -3,7 +3,7 @@
|
||||
# Server Management Script
|
||||
# Author: Daniel Gibbs
|
||||
# Website: http://gameservermanagers.com
|
||||
version="091215"
|
||||
version="121215"
|
||||
|
||||
#### Variables ####
|
||||
|
||||
@ -37,6 +37,13 @@ parms="-game tf -strictportbind -ip ${ip} -port ${port} +clientport ${clientport
|
||||
|
||||
#### Advanced Variables ####
|
||||
|
||||
# Github Branch Select
|
||||
# Allows for the use of different function files
|
||||
# from a different repo and/or branch.
|
||||
githubuser="dgibbs64"
|
||||
githubrepo="linuxgsm"
|
||||
githubbranch="master"
|
||||
|
||||
# Steam
|
||||
appid="232250"
|
||||
|
||||
@ -75,20 +82,46 @@ consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%d-%m-%Y-%H-%M-
|
||||
##### Script #####
|
||||
# Do not edit
|
||||
|
||||
fn_runfunction(){
|
||||
# Functions are downloaded and run with this function
|
||||
if [ ! -f "${rootdir}/functions/${functionfile}" ]; then
|
||||
cd "${rootdir}"
|
||||
if [ ! -d "functions" ]; then
|
||||
mkdir functions
|
||||
fn_getgithubfile(){
|
||||
filename=$1
|
||||
exec=$2
|
||||
fileurl=${3:-$filename}
|
||||
filepath="${rootdir}/${filename}"
|
||||
filedir=$(dirname "${filepath}")
|
||||
# If the function file is missing, then download
|
||||
if [ ! -f "${filepath}" ]; then
|
||||
if [ ! -d "${filedir}" ]; then
|
||||
mkdir "${filedir}"
|
||||
fi
|
||||
githuburl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/${fileurl}"
|
||||
echo -e " fetching ${filename}...\c"
|
||||
#wget -N /dev/null "${githuburl}" -O "${filepath}" 2>&1 | grep -F HTTP | cut -c45-
|
||||
if [ "$(command -v curl)" ]||[ "$(which curl >/dev/null 2>&1)" ]||[ -f "/usr/bin/curl" ]||[ -f "/bin/curl" ]; then
|
||||
echo -e "\e[0;31mFAIL\e[0m\n"
|
||||
echo "Curl is not installed"
|
||||
echo -e ""
|
||||
exit
|
||||
fi
|
||||
CURL=$(curl --fail -o "${filepath}" "${githuburl}" 2>&1)
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "\e[0;31mFAIL\e[0m\n"
|
||||
echo " $CURL"|grep "curl:"
|
||||
echo -e "${githuburl}\n"
|
||||
exit
|
||||
else
|
||||
echo -e "\e[0;32mOK\e[0m"
|
||||
fi
|
||||
if [ "$exec" ]; then
|
||||
chmod +x "${filepath}"
|
||||
fi
|
||||
cd functions
|
||||
echo -e " loading ${functionfile}...\c"
|
||||
wget -N /dev/null https://raw.githubusercontent.com/dgibbs64/linuxgsm/master/functions/${functionfile} 2>&1 | grep -F HTTP | cut -c45-
|
||||
chmod +x "${functionfile}"
|
||||
cd "${rootdir}"
|
||||
fi
|
||||
source "${rootdir}/functions/${functionfile}"
|
||||
if [ "$exec" ]; then
|
||||
source "${filepath}"
|
||||
fi
|
||||
}
|
||||
|
||||
fn_runfunction(){
|
||||
fn_getgithubfile "functions/${functionfile}" 1
|
||||
}
|
||||
|
||||
fn_functions(){
|
||||
|
Loading…
Reference in New Issue
Block a user