Advertisement
Guest User

Untitled

a guest
May 14th, 2019
532
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.02 KB | None | 0 0
  1. #!/usr/bin/env python
  2.  
  3. import subprocess, sys, os
  4.  
  5.  
  6. STEAM_USERNAME = "steamusername"
  7. STEAM_PASSWORD = "steampassword"
  8.  
  9. WORKSHOP_IDS = [["843425103", "@rhsafrf"],
  10. ["843593391", "@rhsgref"],
  11. ["843577117", "@rhsusaf"],
  12. ["843632231", "@rhssaf"],
  13. ["450814997", "@CBA_A3"],
  14. ["620260972", "@ALiVE"],
  15. ["751965892", "@acre2"],
  16. ["463939057", "@ace3"],
  17. ["642457233", "@asr_ai3"]]
  18.  
  19.  
  20. #stop the server temporarily
  21. subprocess.call("~/arma3server/arma3server stop", shell=True)
  22.  
  23. os.chdir("/home/as/arma3server/steamcmd/")
  24.  
  25. for item in WORKSHOP_IDS:
  26. #download mod from Steam Workshop
  27. print("\n------ Downloading: " + item[1] + " ------\n")
  28. subprocess.call("./steamcmd.sh +login \'"+STEAM_USERNAME+"\' \'"+STEAM_PASSWORD+"\' +force_install_dir '../serverfiles/' +app_update 233780 +workshop_download_item 107410 "+item[0]+" validate +quit", shell=True)
  29. #copy and overwrite mod folder
  30. subprocess.call("rsync -rtua --delete ~/arma3server/serverfiles/steamapps/workshop/content/107410/"+item[0]+"/ ~/arma3server/serverfiles/servermods/"+item[1]+"/", shell=True)
  31. #copy .bikey files
  32. if os.path.isdir(os.path.join("~/arma3server/serverfiles/steamapps/workshop/content/107410", item[0], "keys")):
  33. subprocess.call("cp ~/arma3server/serverfiles/steamapps/workshop/content/107410/"+item[0]+"/keys/*.bikey ~/arma3server/serverfiles/keys/", shell=True)
  34. if os.path.isdir(os.path.join("~/arma3server/serverfiles/steamapps/workshop/content/107410", item[0], "key")):
  35. subprocess.call("cp ~/arma3server/serverfiles/steamapps/workshop/content/107410/"+item[0]+"/key/*.bikey ~/arma3server/serverfiles/keys/", shell=True)
  36.  
  37.  
  38. #Mod specific operations
  39. #copy compatibility addons for Ace3 and RHS to play nice
  40. subprocess.call("cp -rf ~/arma3server/serverfiles/servermods/@ace3/optionals/ace_compat_rhs_afrf3.pbo ~/arma3server/serverfiles/servermods/@ace3/addons/ace_compat_rhs_afrf3.pbo", shell=True)
  41. subprocess.call("cp -rf ~/arma3server/serverfiles/servermods/@ace3/optionals/ace_compat_rhs_usf3.pbo ~/arma3server/serverfiles/servermods/@ace3/addons/ace_compat_rhs_usf3.pbo", shell=True)
  42. subprocess.call("cp -f ~/arma3server/serverfiles/servermods/@ace3/optionals/ace_compat_rhs_afrf3.pbo.ace*.bisign ~/arma3server/serverfiles/servermods/@ace3/addons/", shell=True)
  43. subprocess.call("cp -f ~/arma3server/serverfiles/servermods/@ace3/optionals/ace_compat_rhs_usf3.pbo.ace*.bisign ~/arma3server/serverfiles/servermods/@ace3/addons/", shell=True)
  44.  
  45. #Create backup of missions folder
  46. print("\n Creating backup of mpmissions folder")
  47. subprocess.call("tar -cvzf ~/mpmissions-backup-autogenerated.tar.gz ~/arma3server/serverfiles/mpmissions/", shell=True)
  48.  
  49.  
  50. #Copy over files for serving via Arma3Sync
  51. os.chdir("/home/as/arma3server/serverfiles/servermods/")
  52. subprocess.call("chmod -R 755 *", shell=True)
  53.  
  54. os.chdir("/home/as/ArmA3Sync/")
  55. subprocess.call("java -jar ArmA3Sync.jar -BUILD AlphaSquad", shell=True)
  56.  
  57. subprocess.call("rsync -rtua --delete ~/arma3server/serverfiles/servermods/ /var/www/html/servermods/", shell=True)
  58.  
  59.  
  60. #start the server back up
  61. subprocess.call("~/arma3server/arma3server start", shell=True)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement