fn_update_dl 2.7 KB

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