Compare commits

..

1 Commits

Author SHA1 Message Date
shamoon
e98aae261a Enhancement: ignore same files in sanity checker as consumer 2025-10-04 07:43:38 -07:00
3 changed files with 23 additions and 2 deletions

View File

@@ -76,7 +76,9 @@ def check_sanity(*, progress=False, scheduled=True) -> SanityCheckMessages:
messages = SanityCheckMessages() messages = SanityCheckMessages()
present_files = { present_files = {
x.resolve() for x in Path(settings.MEDIA_ROOT).glob("**/*") if not x.is_dir() x.resolve()
for x in Path(settings.MEDIA_ROOT).glob("**/*")
if not x.is_dir() and x.name not in settings.IGNORABLE_FILES
} }
lockfile = Path(settings.MEDIA_LOCK).resolve() lockfile = Path(settings.MEDIA_LOCK).resolve()

View File

@@ -169,6 +169,13 @@ class TestSanityCheck(DirectoriesMixin, TestCase):
messages = check_sanity() messages = check_sanity()
self.assertFalse(messages.has_warning) self.assertFalse(messages.has_warning)
def test_ignore_ignorable_files(self):
self.make_test_data()
Path(self.dirs.media_dir, ".DS_Store").touch()
Path(self.dirs.media_dir, "desktop.ini").touch()
messages = check_sanity()
self.assertFalse(messages.has_warning)
def test_archive_filename_no_checksum(self): def test_archive_filename_no_checksum(self):
doc = self.make_test_data() doc = self.make_test_data()
doc.archive_checksum = None doc.archive_checksum = None

View File

@@ -1003,6 +1003,18 @@ THREADS_PER_WORKER = os.getenv(
# Paperless Specific Settings # # Paperless Specific Settings #
############################################################################### ###############################################################################
IGNORABLE_FILES: Final[list[str]] = [
".DS_Store",
".DS_STORE",
"._*",
".stfolder/*",
".stversions/*",
".localized/*",
"desktop.ini",
"@eaDir/*",
"Thumbs.db",
]
CONSUMER_POLLING = int(os.getenv("PAPERLESS_CONSUMER_POLLING", 0)) CONSUMER_POLLING = int(os.getenv("PAPERLESS_CONSUMER_POLLING", 0))
CONSUMER_POLLING_DELAY = int(os.getenv("PAPERLESS_CONSUMER_POLLING_DELAY", 5)) CONSUMER_POLLING_DELAY = int(os.getenv("PAPERLESS_CONSUMER_POLLING_DELAY", 5))
@@ -1025,7 +1037,7 @@ CONSUMER_IGNORE_PATTERNS = list(
json.loads( json.loads(
os.getenv( os.getenv(
"PAPERLESS_CONSUMER_IGNORE_PATTERNS", "PAPERLESS_CONSUMER_IGNORE_PATTERNS",
'[".DS_Store", ".DS_STORE", "._*", ".stfolder/*", ".stversions/*", ".localized/*", "desktop.ini", "@eaDir/*", "Thumbs.db"]', json.dumps(IGNORABLE_FILES),
), ),
), ),
) )