fn_update_dl 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. #!/bin/bash
  2. # LGSM fn_update_dl function
  3. # Author: Daniel Gibbs
  4. # Website: http://gameservermanagers.com
  5. # Version: 280515
  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. if [ "${gamename}" == "Counter Strike: Global Offensive" ]; then
  25. echo -e '\n'
  26. fn_csgofix
  27. fi
  28. }
  29. fn_teamspeak3_dl(){
  30. fn_check_root
  31. fn_check_systemdir
  32. fn_details_config
  33. fn_printdots "Updating ${servername}"
  34. sleep 1
  35. fn_printoknl "Updating ${servername}"
  36. fn_scriptlog "Updating ${servername}"
  37. sleep 1
  38. cd "${rootdir}"
  39. echo -e "downloading teamspeak3-server_linux-${ts3arch}-${availablebuild}.tar.gz...\c"
  40. fn_scriptlog "Downloading teamspeak3-server_linux-${ts3arch}-${availablebuild}.tar.gz"
  41. 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
  42. sleep 1
  43. echo -e "extracting teamspeak3-server_linux-${ts3arch}-${availablebuild}.tar.gz...\c"
  44. fn_scriptlog "Extracting teamspeak3-server_linux-${ts3arch}-${availablebuild}.tar.gz"
  45. tar -xf "teamspeak3-server_linux-${ts3arch}-${availablebuild}.tar.gz" 2> "${scriptlogdir}/.${servicename}-tar-error.tmp"
  46. local status=$?
  47. if [ ${status} -eq 0 ]; then
  48. echo "OK"
  49. else
  50. echo "FAIL - Exit status ${status}"
  51. fn_scriptlog "Failed to extract - Exit status ${status}"
  52. sleep 1
  53. cat "${scriptlogdir}/.${servicename}-tar-error.tmp"
  54. cat "${scriptlogdir}/.${servicename}-tar-error.tmp" >> "${scriptlog}"
  55. rm "${scriptlogdir}/.${servicename}-tar-error.tmp"
  56. fn_scriptlog "Failure! Unable to update"
  57. exit
  58. fi
  59. echo -e "copying to ${filesdir}...\c"
  60. fn_scriptlog "Copying to ${filesdir}"
  61. cp -R "${rootdir}/teamspeak3-server_linux-${ts3arch}/"* "${filesdir}" 2> "${scriptlogdir}/.${servicename}-cp-error.tmp"
  62. local status=$?
  63. if [ ${status} -eq 0 ]; then
  64. echo "OK"
  65. else
  66. echo "FAIL - Exit status ${status}"
  67. fn_scriptlog "Failed to copy - Exit status ${status}"
  68. sleep 1
  69. cat "${scriptlogdir}/.${servicename}-cp-error.tmp"
  70. cat "${scriptlogdir}/.${servicename}-cp-error.tmp" >> "${scriptlog}"
  71. rm "${scriptlogdir}/.${servicename}-cp-error.tmp"
  72. fn_scriptlog "Failure! Unable to update"
  73. exit
  74. fi
  75. rm -f teamspeak3-server_linux-${ts3arch}-${availablebuild}.tar.gz
  76. rm -rf "${rootdir}/teamspeak3-server_linux-${ts3arch}"
  77. }
  78. if [ "${gamename}" == "Teamspeak 3" ]; then
  79. fn_teamspeak3_dl
  80. else
  81. fn_steamcmd_dl
  82. fi