29 lines
660 B
Python
29 lines
660 B
Python
|
import pathlib
|
||
|
import subprocess
|
||
|
import configparser
|
||
|
import shutil
|
||
|
import tempfile
|
||
|
|
||
|
|
||
|
config = configparser.ConfigParser()
|
||
|
config.read("config.ini")
|
||
|
|
||
|
inp = pathlib.Path(config.get("swash", "input"))
|
||
|
out = pathlib.Path(config.get("swash", "out"))
|
||
|
|
||
|
with tempfile.TemporaryDirectory(prefix="swash_") as tmp_raw:
|
||
|
tmpdir = pathlib.Path(tmp_raw)
|
||
|
|
||
|
shutil.copy2(inp, tmpdir)
|
||
|
shutil.copytree(
|
||
|
pathlib.Path(config.get("out", "root")), tmpdir, dirs_exist_ok=True
|
||
|
)
|
||
|
|
||
|
subprocess.run(
|
||
|
(config.get("swash", "swashrun"), "-input", inp.name), cwd=tmpdir
|
||
|
)
|
||
|
|
||
|
if out.exists():
|
||
|
shutil.rmtree(out)
|
||
|
shutil.copytree(tmpdir, out)
|