bare batch load functionality

This commit is contained in:
Tom Krüger
2020-11-25 19:55:29 +01:00
parent 525f037173
commit 86d4176fcc
4 changed files with 50 additions and 0 deletions

5
.gitignore vendored Normal file
View File

@@ -0,0 +1,5 @@
al2.egg-info/
__pycache__
dist/
*.swp

0
al2/__init__.py Normal file
View File

38
al2/batch.py Normal file
View File

@@ -0,0 +1,38 @@
import json
import pathlib as pl
def load(batch_file):
batch_file = pl.Path(batch_file).resolve()
with open(batch_file, "r") as bfile:
batch_obj = json.loads(bfile.read())
batch_obj["base_path"] = batch_file.parent
return __load_batch_obj(batch_obj)
def __load_batch_obj(batch_obj):
paths = []
instance_dir = None
if "dir" in batch_obj:
instance_dir = pl.Path(batch_obj["dir"])
if not instance_dir.is_absolute():
instance_dir = pl.Path(batch_obj["base_path"], instance_dir)
else:
instance_dir = batch_obj["base_path"]
if "instances" in batch_obj:
for instance in batch_obj["instances"]:
paths.append(pl.Path(instance_dir, instance))
if "batches" in batch_obj:
for batch in batch_obj["batches"]:
batch["base_path"] = instance_dir
paths.extend(__load_batch_obj(batch))
return paths

View File

@@ -0,0 +1,7 @@
from setuptools import setup, find_packages
setup(name="al2",
version="0.1.0",
packages=["al2"],
author="Tom Krueger",
python_requires=">=3")