Spaces:
Runtime error
Runtime error
Download scripts/setup_artifacts.py from ashokbugude/redrob-ranker: direct link, hf CLI and curl.
- Browser
- Download file 2.53 kB
-
https://huggingface.co/spaces/ashokbugude/redrob-ranker/resolve/main/scripts/setup_artifacts.py
- Command line
-
hf download hf://spaces/ashokbugude/redrob-ranker/scripts/setup_artifacts.py
-
curl -L -o setup_artifacts.py https://huggingface.co/spaces/ashokbugude/redrob-ranker/resolve/main/scripts/setup_artifacts.py
2.53 kB
| #!/usr/bin/env python3 | |
| """Bootstrap artifacts directory with challenge reference documents.""" | |
| from __future__ import annotations | |
| import argparse | |
| import logging | |
| import shutil | |
| import sys | |
| from pathlib import Path | |
| PROJECT_ROOT = Path(__file__).resolve().parent.parent | |
| sys.path.insert(0, str(PROJECT_ROOT)) | |
| from app.config import get_settings # noqa: E402 | |
| from app.logging_setup import configure_logging # noqa: E402 | |
| logger = logging.getLogger(__name__) | |
| # Source files inside challenge/ → artifacts/ | |
| DOC_MAPPINGS: dict[str, str] = { | |
| "job_description.txt": "challenge/_extracted/job_description.txt", | |
| "submission_spec.txt": "challenge/_extracted/submission_spec.txt", | |
| "redrob_signals_doc.txt": "challenge/_extracted/redrob_signals_doc.txt", | |
| "README_challenge.txt": "challenge/_extracted/README.txt", | |
| } | |
| def copy_reference_docs(settings, force: bool = False) -> list[Path]: | |
| """Copy challenge reference documents into artifacts/.""" | |
| settings.ensure_artifacts_dir() | |
| copied: list[Path] = [] | |
| for dest_name, src_rel in DOC_MAPPINGS.items(): | |
| src = PROJECT_ROOT / src_rel | |
| dest = settings.artifacts_dir / dest_name | |
| if not src.exists(): | |
| logger.warning("Source not found, skipping: %s", src) | |
| continue | |
| if dest.exists() and not force: | |
| logger.info("Already exists, skipping: %s", dest.name) | |
| copied.append(dest) | |
| continue | |
| shutil.copy2(src, dest) | |
| logger.info("Copied %s -> %s", src.name, dest) | |
| copied.append(dest) | |
| return copied | |
| def write_gitkeep(artifacts_dir: Path) -> None: | |
| """Ensure artifacts/.gitkeep exists for empty-dir tracking.""" | |
| gitkeep = artifacts_dir / ".gitkeep" | |
| if not gitkeep.exists(): | |
| gitkeep.touch() | |
| def main() -> int: | |
| parser = argparse.ArgumentParser(description="Bootstrap artifacts directory.") | |
| parser.add_argument( | |
| "--force", | |
| action="store_true", | |
| help="Overwrite existing artifact documents.", | |
| ) | |
| args = parser.parse_args() | |
| settings = get_settings() | |
| configure_logging(settings.log_level) | |
| write_gitkeep(settings.artifacts_dir) | |
| copied = copy_reference_docs(settings, force=args.force) | |
| if not copied: | |
| logger.error("No documents copied. Run from project root after extracting challenge docs.") | |
| return 1 | |
| logger.info("Artifacts ready at %s (%d files)", settings.artifacts_dir, len(copied)) | |
| return 0 | |
| if __name__ == "__main__": | |
| raise SystemExit(main()) | |