|
@@ -0,0 +1,32 @@
|
|
|
+import shutil
|
|
|
+from datetime import datetime, timedelta
|
|
|
+from pathlib import Path
|
|
|
+
|
|
|
+
|
|
|
+def deploy(cube_out: str, cubes_dir: str) -> None:
|
|
|
+ for p in Path(cube_out).glob("*.mdc"):
|
|
|
+ mtime = datetime.fromtimestamp(p.stat().st_mtime)
|
|
|
+ if mtime < datetime.now() - timedelta(days=1):
|
|
|
+ continue
|
|
|
+ cube_name = p.name.lower()[:-4]
|
|
|
+ basename = cube_name + "__" + mtime.strftime("%Y%m%d%H%M%S")
|
|
|
+ folder = Path(cubes_dir) / basename
|
|
|
+ if folder.exists():
|
|
|
+ continue
|
|
|
+ print(basename)
|
|
|
+ folder.mkdir()
|
|
|
+ shutil.copy2(p, folder / p.name)
|
|
|
+ for v in Path(cubes_dir).glob(cube_name + "__*.ver"):
|
|
|
+ v.unlink()
|
|
|
+ old_folders = list(sorted([f.name for f in Path(cubes_dir).glob(cube_name + "__*") if f.is_dir()]))[:-3]
|
|
|
+ for f in old_folders:
|
|
|
+ shutil.rmtree(cubes_dir + "\\" + f, ignore_errors=True)
|
|
|
+
|
|
|
+ with open(cubes_dir + "\\" + basename + ".ver", "w", encoding="latin-1") as fwh:
|
|
|
+ fwh.write("Dies ist eine PowerCube-Versionsdatei. Nicht löschen!\n")
|
|
|
+
|
|
|
+
|
|
|
+if __name__ == "__main__":
|
|
|
+ cube_out = "C:\\GlobalCube\\System\\OPTIMA\\Cube_out"
|
|
|
+ cubes_dir = "C:\\GlobalCube\\Cubes"
|
|
|
+ deploy(cube_out, cubes_dir)
|