Skip to content

Commit 6f80eb0

Browse files
authored
Move files from an input directory to an output directory (#22)
1 parent 465a416 commit 6f80eb0

File tree

2 files changed

+11
-9
lines changed

2 files changed

+11
-9
lines changed

perdoo/__main__.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -305,11 +305,11 @@ def start(settings: Settings, force: bool = False) -> None:
305305
LOGGER.info("Starting Perdoo")
306306

307307
with CONSOLE.status(f"Searching for non-{settings.output.format} files"):
308-
convert_collection(path=settings.collection_folder, output=settings.output.format)
308+
convert_collection(path=settings.input_folder, output=settings.output.format)
309309

310310
with CONSOLE.status(f"Searching for {settings.output.format} files"):
311311
archives = load_archives(
312-
path=settings.collection_folder, output=settings.output.format, force=force
312+
path=settings.input_folder, output=settings.output.format, force=force
313313
)
314314

315315
for file, archive, details in archives:
@@ -322,7 +322,7 @@ def start(settings: Settings, force: bool = False) -> None:
322322

323323
metadata, metron_info, comic_info = fetch_from_services(settings=settings, details=details)
324324
new_file = generate_filename(
325-
root=settings.collection_folder,
325+
root=settings.output_folder,
326326
extension=settings.output.format.value,
327327
metadata=metadata,
328328
)
@@ -359,18 +359,18 @@ def start(settings: Settings, force: bool = False) -> None:
359359
continue
360360
archive.path.unlink(missing_ok=True)
361361
shutil.move(archive_file, archive.path)
362-
if file.relative_to(settings.collection_folder) != new_file.relative_to(
363-
settings.collection_folder
362+
if file.relative_to(settings.input_folder) != new_file.relative_to(
363+
settings.output_folder
364364
):
365365
LOGGER.info(
366366
"Organizing comic, moving file to %s",
367-
new_file.relative_to(settings.collection_folder),
367+
new_file.relative_to(settings.output_folder),
368368
)
369369
new_file.parent.mkdir(parents=True, exist_ok=True)
370370
shutil.move(file, new_file)
371371

372372
for folder in sorted(
373-
settings.collection_folder.rglob("*"), key=lambda p: len(p.parts), reverse=True
373+
settings.input_folder.rglob("*"), key=lambda p: len(p.parts), reverse=True
374374
):
375375
if folder.is_dir() and not any(folder.iterdir()):
376376
folder.rmdir()

perdoo/settings.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,8 @@ def validate_format(cls: type[Output], v: str) -> str:
116116

117117
class Settings(SettingsModel):
118118
_filename: ClassVar[Path] = get_config_dir() / "settings.toml"
119-
collection_folder: Path = get_data_dir()
119+
input_folder: Path = get_data_dir()
120+
output_folder: Path = get_data_dir()
120121
comicvine: Comicvine = Comicvine()
121122
league_of_comic_geeks: LeagueofComicGeeks = LeagueofComicGeeks()
122123
marvel: Marvel = Marvel()
@@ -140,7 +141,8 @@ def load(cls: type[Settings]) -> Settings:
140141
def save(self: Settings) -> Settings:
141142
with self._filename.open("wb") as stream:
142143
content = self.dict(by_alias=False)
143-
content["collection_folder"] = str(content["collection_folder"])
144+
content["input_folder"] = str(content["input_folder"])
145+
content["output_folder"] = str(content["output_folder"])
144146
content["service_order"] = [str(x) for x in content["service_order"]]
145147
content["output"]["format"] = str(content["output"]["format"])
146148
tomlwriter.dump(content, stream)

0 commit comments

Comments
 (0)