Fix: use temp dir for split / merge

This commit is contained in:
shamoon 2024-06-26 07:22:02 -07:00
parent f3b7ae93f0
commit 5cdd0cd476

View File

@ -2,6 +2,7 @@ import hashlib
import itertools import itertools
import logging import logging
import os import os
import tempfile
from typing import Optional from typing import Optional
from celery import chain from celery import chain
@ -269,7 +270,7 @@ def merge(
return "OK" return "OK"
filepath = os.path.join( filepath = os.path.join(
settings.SCRATCH_DIR, tempfile.mkdtemp(dir=settings.SCRATCH_DIR),
f"{'_'.join([str(doc_id) for doc_id in doc_ids])[:100]}_merged.pdf", f"{'_'.join([str(doc_id) for doc_id in doc_ids])[:100]}_merged.pdf",
) )
merged_pdf.remove_unreferenced_resources() merged_pdf.remove_unreferenced_resources()
@ -321,7 +322,7 @@ def split(doc_ids: list[int], pages: list[list[int]], delete_originals: bool = F
for page in split_doc: for page in split_doc:
dst.pages.append(pdf.pages[page - 1]) dst.pages.append(pdf.pages[page - 1])
filepath = os.path.join( filepath = os.path.join(
settings.SCRATCH_DIR, tempfile.mkdtemp(dir=settings.SCRATCH_DIR),
f"{doc.id}_{split_doc[0]}-{split_doc[-1]}.pdf", f"{doc.id}_{split_doc[0]}-{split_doc[-1]}.pdf",
) )
dst.remove_unreferenced_resources() dst.remove_unreferenced_resources()