diff --git a/swh/deposit/api/private/deposit_read.py b/swh/deposit/api/private/deposit_read.py
index c9a575c51f9505590d669dd18c6ac0d8ce901db5..56f1dbd2a8f17fddca434d8c8caec6738dffa05b 100644
--- a/swh/deposit/api/private/deposit_read.py
+++ b/swh/deposit/api/private/deposit_read.py
@@ -35,35 +35,31 @@ def aggregate_tarballs(extraction_dir, archive_paths):
         Tuple (directory to clean up, archive path (aggregated or not))
 
     """
-    if len(archive_paths) > 1:
-        # need to rebuild one archive from multiple ones
-        os.makedirs(extraction_dir, 0o755, exist_ok=True)
-        dir_path = tempfile.mkdtemp(prefix='swh.deposit-',
-                                    dir=extraction_dir)
-        # root folder to build an aggregated tarball
-        aggregated_tarball_rootdir = os.path.join(dir_path, 'aggregate')
-        os.makedirs(aggregated_tarball_rootdir, 0o755, exist_ok=True)
-
-        # uncompress in a temporary location all archives
-        for archive_path in archive_paths:
-            tarball.uncompress(archive_path, aggregated_tarball_rootdir)
-
-        # Aggregate into one big tarball the multiple smaller ones
-        temp_tarpath = tarball.compress(
-            aggregated_tarball_rootdir + '.zip',
-            nature='zip',
-            dirpath_or_files=aggregated_tarball_rootdir)
-
-        # can already clean up temporary directory
-        shutil.rmtree(aggregated_tarball_rootdir)
-
-        try:
-            yield temp_tarpath
-        finally:
-            shutil.rmtree(dir_path)
-
-    else:  # only 1 archive, no need to do fancy actions (and no cleanup step)
-        yield archive_paths[0]
+    # rebuild one zip archive from (possibly) multiple ones
+    os.makedirs(extraction_dir, 0o755, exist_ok=True)
+    dir_path = tempfile.mkdtemp(prefix='swh.deposit-', dir=extraction_dir)
+
+    # root folder to build an aggregated tarball
+    aggregated_tarball_rootdir = os.path.join(dir_path, 'aggregate')
+    os.makedirs(aggregated_tarball_rootdir, 0o755, exist_ok=True)
+
+    # uncompress in a temporary location all archives
+    for archive_path in archive_paths:
+        tarball.uncompress(archive_path, aggregated_tarball_rootdir)
+
+    # Aggregate into one big tarball the multiple smaller ones
+    temp_tarpath = tarball.compress(
+        aggregated_tarball_rootdir + '.zip',
+        nature='zip',
+        dirpath_or_files=aggregated_tarball_rootdir)
+
+    # can already clean up temporary directory
+    shutil.rmtree(aggregated_tarball_rootdir)
+
+    try:
+        yield temp_tarpath
+    finally:
+        shutil.rmtree(dir_path)
 
 
 class SWHDepositReadArchives(SWHPrivateAPIView, SWHGetDepositAPI,