diff --git a/update-server.py b/update-server.py new file mode 100644 index 0000000..9d84973 --- /dev/null +++ b/update-server.py @@ -0,0 +1,33 @@ +from os import remove, symlink + +from requests import get + + +manifest = get('https://launchermeta.mojang.com/mc/game/version_manifest.json') +versions = manifest.json()['versions'] +for version in versions: + if version['type'] == 'release': + break + +server_id = version['id'] +print(f'Found version {server_id}') + +latest_info_url = version['url'] +latest_info = get(latest_info_url) +server_url = latest_info.json()['downloads']['server']['url'] + +server = get(server_url) + +fname = f'minecraft_server.{server_id}.jar' +fullpath = f'/home/ubuntu/minecraft/{fname}' +print(f'Writing to {fullpath}') +with open(fname, 'wb') as f: + f.write(server.content) + +linkname = '/home/ubuntu/minecraft/server.jar' +print(f'Symlinking {linkname} to {fullpath}') +try: + remove(linkname) +except FileNotFoundError: + pass +symlink(fname, linkname)