From 9dd6215c0c2cc2acf8703d56e7002d7012b312a5 Mon Sep 17 00:00:00 2001
From: Maximilian Moser <maximilian.moser@tuwien.ac.at>
Date: Wed, 28 Apr 2021 15:44:08 +0200
Subject: [PATCH] Fix access to property of FileInstance set to None

* soft-deleted files will have ObjectVersions that don't have an
  associated FileInstance
---
 invenio_utilities_tuw/cli/files.py | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/invenio_utilities_tuw/cli/files.py b/invenio_utilities_tuw/cli/files.py
index 95d8790..326e1d0 100644
--- a/invenio_utilities_tuw/cli/files.py
+++ b/invenio_utilities_tuw/cli/files.py
@@ -49,7 +49,10 @@ def get_orphaned_files(location):
     # filter out those files that invenio has knowledge about
     for bucket in location.buckets:
         for obj in bucket.objects:
-            all_files.remove(obj.file.uri)
+            if obj.file:
+                # an object_version without attached file_instance
+                # likely denotes a soft-deleted file
+                all_files.remove(obj.file.uri)
 
     return all_files
 
-- 
GitLab