33 lines
742 B
Bash
33 lines
742 B
Bash
|
#!/usr/bin/env bash
|
||
|
|
||
|
set -eu
|
||
|
|
||
|
if ! [[ -v STATE_DIRECTORY && -v CREDENTIALS_DIRECTORY ]]; then
|
||
|
echo "Error: Runtime dir or credential not set"
|
||
|
exit 1
|
||
|
fi
|
||
|
|
||
|
# Update the server to the latest version
|
||
|
echo "Updating/installing starbound"
|
||
|
|
||
|
mkdir -p "${STATE_DIRECTORY}/.steamcmd"
|
||
|
steamcmd <<EOF
|
||
|
force_install_dir $STATE_DIRECTORY
|
||
|
login tlater $(cat "$CREDENTIALS_DIRECTORY/steam")
|
||
|
app_update 211820
|
||
|
quit
|
||
|
EOF
|
||
|
|
||
|
echo "Updating config"
|
||
|
if [ -f "$1" ]; then
|
||
|
mkdir -p ./storage
|
||
|
cp "$1" ./storage/starbound_server.config
|
||
|
fi
|
||
|
|
||
|
echo "Running starbound server"
|
||
|
patchelf --set-interpreter '@interpreter@' ./linux/starbound_server
|
||
|
# Must be run from the directory that the binary is in (why do game
|
||
|
# devs do this?)
|
||
|
cd linux
|
||
|
./starbound_server
|