| import sys |
|
|
| import argbind |
|
|
| from dac.utils import download |
| from dac.utils.decode import decode |
| from dac.utils.encode import encode |
|
|
| STAGES = ["encode", "decode", "download"] |
|
|
|
|
| def run(stage: str): |
| """Run stages. |
| |
| Parameters |
| ---------- |
| stage : str |
| Stage to run |
| """ |
| if stage not in STAGES: |
| raise ValueError(f"Unknown command: {stage}. Allowed commands are {STAGES}") |
| stage_fn = globals()[stage] |
|
|
| if stage == "download": |
| stage_fn() |
| return |
|
|
| stage_fn() |
|
|
|
|
| if __name__ == "__main__": |
| group = sys.argv.pop(1) |
| args = argbind.parse_args(group=group) |
|
|
| with argbind.scope(args): |
| run(group) |
|
|