command_validate.sh 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #!/bin/bash
  2. # LinuxGSM command_validate.sh function
  3. # Author: Daniel Gibbs
  4. # Website: https://linuxgsm.com
  5. # Description: Runs a server validation.
  6. local commandname="VALIDATE"
  7. local commandaction="Validate"
  8. local function_selfname=$(basename "$(readlink -f "${BASH_SOURCE[0]}")")
  9. fn_validation(){
  10. fn_print_info "Validating files: SteamCMD"
  11. echo -e ""
  12. echo -e "* Validating may overwrite some customised files."
  13. echo -e "* https://docs.linuxgsm.com/commands/validate"
  14. fn_script_log_info "Validating files: SteamCMD"
  15. sleep 3
  16. cd "${steamcmddir}" || exit
  17. # Detects if unbuffer command is available for 32 bit distributions only.
  18. info_distro.sh
  19. if [ -n "$(command -v stdbuf)" ]&&[ "${arch}" != "x86_64" ]; then
  20. unbuffer="stdbuf -i0 -o0 -e0"
  21. fi
  22. if [ "${appid}" == "90" ]; then
  23. ${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_info_print 70 +app_set_config 90 mod "${appidmod}" +app_update "${appid}" ${branch} +app_update "${appid}" -beta ${branch} validate +quit | tee -a "${lgsmlog}"
  24. else
  25. ${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" -beta ${branch} validate +quit | tee -a "${lgsmlog}"
  26. fi
  27. if [ $? != 0 ]; then
  28. fn_print_fail_nl "Validating files: SteamCMD"
  29. fn_script_log_fatal "Validating files: SteamCMD: FAIL"
  30. else
  31. fn_print_ok_nl "Validating files: SteamCMD"
  32. fn_script_log_pass "Validating files: SteamCMD: OK"
  33. fi
  34. fix.sh
  35. }
  36. fn_print_dots "Validating files:"
  37. fn_print_dots "Validating files: SteamCMD"
  38. check.sh
  39. check_status.sh
  40. if [ "${status}" != "0" ]; then
  41. exitbypass=1
  42. command_stop.sh
  43. fn_validation "${appid}"
  44. exitbypass=1
  45. command_start.sh
  46. else
  47. fn_validation
  48. fi
  49. core_exit.sh