24 lines
819 B
Python
24 lines
819 B
Python
# Import this class to load the standard HLDS definitions
|
|
import subprocess
|
|
from pathlib import Path
|
|
from typing import List
|
|
|
|
from .models import Location
|
|
from .parser import parse_all_directory
|
|
|
|
__all__ = ["location_definitions", "location_definition_version"]
|
|
|
|
# pylint: disable=invalid-name
|
|
|
|
# TODO Use proper way to get resources, see https://stackoverflow.com/a/10935674
|
|
ROOT_DIR = Path(__file__).parent.parent.parent
|
|
DATA_DIR = ROOT_DIR / "menus"
|
|
|
|
location_definitions: List[Location] = parse_all_directory(str(DATA_DIR))
|
|
location_definitions.sort(key=lambda l: l.name)
|
|
|
|
try:
|
|
proc = subprocess.run(["git", "rev-parse", "HEAD"], stdout=subprocess.PIPE, cwd=str(ROOT_DIR), check=True)
|
|
location_definition_version = proc.stdout.decode().strip()
|
|
except FileNotFoundError:
|
|
location_definition_version = ""
|