fn_update_dl 2.7 KB

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