Download the server rather than the URL
Actually download the server and save it to server.jar.
This commit is contained in:
@@ -6,7 +6,7 @@ LATEST = "latest"
|
|||||||
RELEASE = "release"
|
RELEASE = "release"
|
||||||
SNAPSHOT = "snapshot"
|
SNAPSHOT = "snapshot"
|
||||||
REQUESTED_VERSION = os.getenv("SERVER_VERSION", LATEST)
|
REQUESTED_VERSION = os.getenv("SERVER_VERSION", LATEST)
|
||||||
VERSION_FILE = "SERVER_VERSION"
|
JARFILE = "server.jar"
|
||||||
|
|
||||||
def get_latest_version(latest):
|
def get_latest_version(latest):
|
||||||
return latest.get(RELEASE)
|
return latest.get(RELEASE)
|
||||||
@@ -33,9 +33,9 @@ def get_metadata_from_version(version):
|
|||||||
def get_server_url_from_metadata(metadata):
|
def get_server_url_from_metadata(metadata):
|
||||||
return metadata['downloads']['server']['url']
|
return metadata['downloads']['server']['url']
|
||||||
|
|
||||||
def write_url_file(url):
|
def write_server_jar(file):
|
||||||
with open(VERSION_FILE, "w") as f:
|
with open(JARFILE, "wb") as f:
|
||||||
return f.write(url)
|
return f.write(file)
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
version_manifest = requests.get("https://launchermeta.mojang.com/mc/game/version_manifest_v2.json")
|
version_manifest = requests.get("https://launchermeta.mojang.com/mc/game/version_manifest_v2.json")
|
||||||
@@ -47,5 +47,6 @@ if __name__ == "__main__":
|
|||||||
version = get_version_data(versions, latest, REQUESTED_VERSION)
|
version = get_version_data(versions, latest, REQUESTED_VERSION)
|
||||||
metadata = get_metadata_from_version(version)
|
metadata = get_metadata_from_version(version)
|
||||||
url = get_server_url_from_metadata(metadata)
|
url = get_server_url_from_metadata(metadata)
|
||||||
print(f"Found, writing url to VERSION file.")
|
print(f"Downloading from URL for {REQUESTED_VERSION} at {url}.")
|
||||||
write_url_file(url)
|
server_jar = requests.get(url)
|
||||||
|
write_server_jar(server_jar.content)
|
||||||
|
|||||||
Reference in New Issue
Block a user