diff --git a/src/documents/consumer.py b/src/documents/consumer.py index 886b0dd69..fc8635c95 100644 --- a/src/documents/consumer.py +++ b/src/documents/consumer.py @@ -43,10 +43,7 @@ class Consumer: self.consume = consume self.scratch = scratch - try: - os.makedirs(self.scratch) - except FileExistsError: - pass + make_dirs(self.scratch) if not self.consume: raise ConsumerError( @@ -245,3 +242,11 @@ class Consumer: with open(doc, "rb") as f: checksum = hashlib.md5(f.read()).hexdigest() return Document.objects.filter(checksum=checksum).exists() + + +def make_dirs(*dirs): + for dir in dirs: + try: + os.makedirs(dir) + except FileExistsError: + pass diff --git a/src/documents/management/commands/document_consumer.py b/src/documents/management/commands/document_consumer.py index f94265b65..ae8ff7e35 100644 --- a/src/documents/management/commands/document_consumer.py +++ b/src/documents/management/commands/document_consumer.py @@ -6,7 +6,7 @@ import time from django.conf import settings from django.core.management.base import BaseCommand, CommandError -from ...consumer import Consumer, ConsumerError +from ...consumer import Consumer, ConsumerError, make_dirs from ...mail import MailFetcher, MailFetcherError @@ -67,11 +67,7 @@ class Command(BaseCommand): except (ConsumerError, MailFetcherError) as e: raise CommandError(e) - for path in (self.ORIGINAL_DOCS, self.THUMB_DOCS): - try: - os.makedirs(path) - except FileExistsError: - pass + make_dirs(self.ORIGINAL_DOCS, self.THUMB_DOCS) logging.getLogger(__name__).info( "Starting document consumer at {}".format(directory)