Files
escape-from-funcraft-client/tools/validate_beta_release.py
T
2026-07-18 19:58:41 +05:00

29 lines
982 B
Python

from __future__ import annotations
import argparse
from pathlib import Path
from beta_release_lib import load_side_manifest, validate_client_stage, validate_server_stage
def main() -> None:
parser = argparse.ArgumentParser()
parser.add_argument("--client-stage", type=Path)
parser.add_argument("--server-stage", type=Path)
parser.add_argument("--manifest", required=True, type=Path)
parser.add_argument("--world")
args = parser.parse_args()
if (args.client_stage is None) == (args.server_stage is None):
parser.error("provide exactly one of --client-stage or --server-stage")
manifest = load_side_manifest(args.manifest)
if args.client_stage is not None:
validate_client_stage(args.client_stage, manifest)
else:
if args.world is None:
parser.error("--world is required with --server-stage")
validate_server_stage(args.server_stage, manifest, args.world)
if __name__ == "__main__":
main()