diff --git a/arkindex_worker/worker/training.py b/arkindex_worker/worker/training.py
index ffe52d6f9632882743dbc7a5340d4fc5b1c5ef66..c53cffee4f2633307a94b9131ca3146415e5c283 100644
--- a/arkindex_worker/worker/training.py
+++ b/arkindex_worker/worker/training.py
@@ -50,10 +50,12 @@ def create_archive(path: DirPath) -> Tuple[Path, Hash, FileSize, Hash]:
 
     # Create an uncompressed tar archive with all the needed files
     # Files hierarchy ifs kept in the archive.
-
+    file_list = []
     with tarfile.open(path_to_tar_archive, "w") as tar:
-        tar.add(path)
-        file_list = [member for member in tar.getnames() if os.path.isfile(member)]
+        for p in path.glob("**/*"):
+            x = p.relative_to(path)
+            tar.add(p, arcname=x, recursive=False)
+            file_list.append(p)
 
     # Sort by path
     file_list.sort()
diff --git a/tests/conftest.py b/tests/conftest.py
index 8b6f16ef834712c769badc8308143c81e58a3a88..d058dc878d05de7160d06ce8d0380008d5711a14 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -26,7 +26,7 @@ from arkindex_worker.worker import BaseWorker, ElementsWorker
 from arkindex_worker.worker.transcription import TextOrientation
 
 FIXTURES_DIR = Path(__file__).resolve().parent / "data"
-SAMPLES_DIR = Path("tests") / "samples"
+SAMPLES_DIR = Path(__file__).resolve().parent / "samples"
 
 __yaml_cache = {}
 
@@ -280,11 +280,6 @@ def model_file_dir():
     return SAMPLES_DIR / "model_files"
 
 
-@pytest.fixture
-def model_file_dir_with_subfolder():
-    return SAMPLES_DIR / "model_files_with_subfolder"
-
-
 @pytest.fixture
 def fake_dummy_worker():
     api_client = MockApiClient()
diff --git a/tests/samples/model_files_with_subfolder/model-best/model_file.pth b/tests/samples/model_files_with_subfolder/model-best/model_file.pth
deleted file mode 100644
index cc78ba3026c620f5d0e8c5b65071ae8ae2dfe157..0000000000000000000000000000000000000000
--- a/tests/samples/model_files_with_subfolder/model-best/model_file.pth
+++ /dev/null
@@ -1 +0,0 @@
-Wow this is actually the data of the best model ever created on Arkindex
\ No newline at end of file
diff --git a/tests/samples/model_files_with_subfolder/model-last/model_file.pth b/tests/samples/model_files_with_subfolder/model-last/model_file.pth
deleted file mode 100644
index cc78ba3026c620f5d0e8c5b65071ae8ae2dfe157..0000000000000000000000000000000000000000
--- a/tests/samples/model_files_with_subfolder/model-last/model_file.pth
+++ /dev/null
@@ -1 +0,0 @@
-Wow this is actually the data of the best model ever created on Arkindex
\ No newline at end of file
diff --git a/tests/test_elements_worker/test_training.py b/tests/test_elements_worker/test_training.py
index 4448554da951fcaaa87ccde715af8c31865a92fd..e8f419621bbf964a4313c93c130ffe14d049af7f 100644
--- a/tests/test_elements_worker/test_training.py
+++ b/tests/test_elements_worker/test_training.py
@@ -45,24 +45,6 @@ def test_create_archive(model_file_dir):
     assert not os.path.exists(zst_archive_path), "Auto removal failed"
 
 
-def test_create_archive_with_subfolder(model_file_dir_with_subfolder):
-    """Create an archive when the model's file is in a folder containing a subfolder"""
-
-    with create_archive(path=model_file_dir_with_subfolder) as (
-        zst_archive_path,
-        hash,
-        size,
-        archive_hash,
-    ):
-        assert os.path.exists(zst_archive_path), "The archive was not created"
-        assert (
-            hash == "e2fa86cefc33b24502ad4151a638dd29"
-        ), "Hash was not properly computed"
-        assert 300 < size < 1500
-
-    assert not os.path.exists(zst_archive_path), "Auto removal failed"
-
-
 @pytest.mark.parametrize(
     "tag, description",
     [