update_dl.sh 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. #!/bin/bash
  2. # LGSM update_dl.sh function
  3. # Author: Daniel Gibbs
  4. # Website: http://gameservermanagers.com
  5. lgsm_version="020216"
  6. # Description: Runs a server update.
  7. local modulename="Update"
  8. function_selfname="$(basename $(readlink -f "${BASH_SOURCE[0]}"))"
  9. fn_steamcmd_dl(){
  10. cd "${rootdir}"
  11. cd "steamcmd"
  12. # Detects if unbuffer command is available.
  13. if [ $(command -v unbuffer) ]; then
  14. unbuffer=unbuffer
  15. fi
  16. if [ "${engine}" == "goldsource" ]; then
  17. ${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${filesdir}" +app_set_config 90 mod ${appidmod} +app_update "${appid}" +quit|tee -a "${scriptlog}"
  18. else
  19. ${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${filesdir}" +app_update "${appid}" +quit|tee -a "${scriptlog}"
  20. fi
  21. fix.sh
  22. }
  23. fn_teamspeak3_dl(){
  24. cd "${rootdir}"
  25. echo -e "downloading teamspeak3-server_linux_${ts3arch}-${ts3_version_number}.tar.bz2...\c"
  26. fn_scriptlog "Downloading teamspeak3-server_linux_${ts3arch}-${ts3_version_number}.tar.bz2"
  27. wget -N /dev/null http://dl.4players.de/ts/releases/${ts3_version_number}/teamspeak3-server_linux_${ts3arch}-${ts3_version_number}.tar.bz2 2>&1 | grep -F HTTP | cut -c45-| uniq
  28. sleep 1
  29. echo -e "extracting teamspeak3-server_linux_${ts3arch}-${ts3_version_number}.tar.bz2...\c"
  30. fn_scriptlog "Extracting teamspeak3-server_linux_${ts3arch}-${ts3_version_number}.tar.bz2"
  31. tar -xf "teamspeak3-server_linux_${ts3arch}-${ts3_version_number}.tar.bz2" 2> "${scriptlogdir}/.${servicename}-tar-error.tmp"
  32. local status=$?
  33. if [ ${status} -eq 0 ]; then
  34. echo "OK"
  35. else
  36. echo "FAIL - Exit status ${status}"
  37. fn_scriptlog "Failed to extract - Exit status ${status}"
  38. sleep 1
  39. cat "${scriptlogdir}/.${servicename}-tar-error.tmp"
  40. cat "${scriptlogdir}/.${servicename}-tar-error.tmp" >> "${scriptlog}"
  41. rm "${scriptlogdir}/.${servicename}-tar-error.tmp"
  42. fn_scriptlog "Failure! Unable to update"
  43. exit ${status}
  44. fi
  45. echo -e "copying to ${filesdir}...\c"
  46. fn_scriptlog "Copying to ${filesdir}"
  47. cp -R "${rootdir}/teamspeak3-server_linux_${ts3arch}/"* "${filesdir}" 2> "${scriptlogdir}/.${servicename}-cp-error.tmp"
  48. local status=$?
  49. if [ ${status} -eq 0 ]; then
  50. echo "OK"
  51. else
  52. echo "FAIL - Exit status ${status}"
  53. fn_scriptlog "Failed to copy - Exit status ${status}"
  54. sleep 1
  55. cat "${scriptlogdir}/.${servicename}-cp-error.tmp"
  56. cat "${scriptlogdir}/.${servicename}-cp-error.tmp" >> "${scriptlog}"
  57. rm "${scriptlogdir}/.${servicename}-cp-error.tmp"
  58. fn_scriptlog "Failure! Unable to update"
  59. exit ${status}
  60. fi
  61. rm -f teamspeak3-server_linux_${ts3arch}-${ts3_version_number}.tar.bz2
  62. rm -rf "${rootdir}/teamspeak3-server_linux_${ts3arch}"
  63. }
  64. check.sh
  65. info_config.sh
  66. fn_printdots "Updating ${servername}"
  67. sleep 1
  68. fn_printoknl "Updating ${servername}"
  69. fn_scriptlog "Updating ${servername}"
  70. sleep 1
  71. if [ "${gamename}" == "Teamspeak 3" ]; then
  72. fn_teamspeak3_dl
  73. else
  74. fn_steamcmd_dl
  75. fi