more
This commit is contained in:
78
version-2.0/start.sh
Executable file
78
version-2.0/start.sh
Executable file
@@ -0,0 +1,78 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
# -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
||||
# General Settings
|
||||
# -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
||||
export DAYZ_FILES=/mnt/dayz
|
||||
export STOCK_SERVER_DATA="$DAYZ_FILES/stock/DayZServer"
|
||||
export SERVERS="$HOME/servers"
|
||||
export CACHE="$HOME/cache"
|
||||
export MOD_CACHE="$CACHE/mods"
|
||||
|
||||
# -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
||||
# SERVER SPECIFIC SETTINGS
|
||||
# -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
||||
export SERVER_NAME='ZyaD Chernaurus'
|
||||
export SERVER_HOME="$SERVERS/$SERVER_NAME"
|
||||
export MAP_FOLDER_NAME='chernaurus'
|
||||
export SERVER_PORT=2302
|
||||
export SERVER_CPU=8
|
||||
export SERVER_CONFIG_FILE="$SERVER_HOME/serverDZ.cfg"
|
||||
|
||||
# -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
||||
# Helper functions
|
||||
# -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
||||
alias do_sync='rsync -arvhu --progress --delete --partial'
|
||||
alias do_secure_sync='rsync -arcvhu --progress --delete --partial'
|
||||
|
||||
msg() {
|
||||
>&2 printf '[*] %s\n' "$*"
|
||||
}
|
||||
|
||||
die() {
|
||||
msg "$*"
|
||||
exit 1
|
||||
}
|
||||
|
||||
# -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
||||
# Checks
|
||||
# -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
||||
check() {
|
||||
mkdir -p "$DAYZ_FILES"
|
||||
|
||||
if ! mount | grep -i "$DAYZ_FILES" >/dev/null ; then
|
||||
msg "mount -t drvfs XXXXXXX $DAYZ_FILES"
|
||||
die "$DAYZ_FILES is not mounted!"
|
||||
fi
|
||||
}
|
||||
|
||||
# -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
||||
# Environment Setup
|
||||
# -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
||||
init() {
|
||||
mkdir -p "$SERVER_HOME" "$MOD_CACHE/$MAP_FOLDER_NAME"
|
||||
}
|
||||
|
||||
setup_environment() {
|
||||
msg "Copying stock server data."
|
||||
do_sync "$STOCK_SERVER_DATA"/ "$SERVER_HOME" || die "Failed to sync $STOCK_SERVER_DATA to $SERVER_HOME"
|
||||
}
|
||||
|
||||
copy_mods() {
|
||||
msg "Coyping mod files"
|
||||
do_sync "$DAYZ_FILES/mods/$MAP_FOLDER_NAME"/ "$MOD_CACHE/$MAP_FOLDER_NAME"
|
||||
}
|
||||
|
||||
# -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
||||
# Main
|
||||
# -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
||||
main() {
|
||||
init
|
||||
cd "$SERVER_HOME" || die "Could not cd to '$SERVER_HOME'"
|
||||
check
|
||||
msg "Setting up environment."
|
||||
setup_environment
|
||||
copy_mods
|
||||
}
|
||||
|
||||
main "$@"
|
||||
Reference in New Issue
Block a user