diff --git a/backend/converter.py b/backend/converter.py index 296577d..670989e 100644 --- a/backend/converter.py +++ b/backend/converter.py @@ -24,7 +24,7 @@ logger = logging.getLogger("backend.converter") DISK_EXTENSIONS = {".vmdk", ".qcow2", ".qcow", ".img", ".raw", ".vhd", ".vhdx"} -ARCHIVE_EXTENSIONS = {".7z", ".zip", ".rar", ".tar.gz", ".tgz", ".tar", ".gz", ".bz2", ".xz"} +ARCHIVE_EXTENSIONS = {".7z", ".zip", ".rar", ".tar.gz", ".tgz", ".tar", ".gz", ".bz2", ".xz", ".ova"} MIN_DISK_BYTES = 1024 @@ -69,6 +69,7 @@ def extract_if_needed(filename: str) -> Path: ".tar.gz": ("tar", ["tar", "-xzf", str(filepath)]), ".tgz": ("tar", ["tar", "-xzf", str(filepath)]), ".tar": ("tar", ["tar", "-xf", str(filepath)]), + ".ova": ("tar", ["tar", "-xf", str(filepath)]), ".gz": ("gunzip", ["gunzip", "-f", str(filepath)]), ".bz2": ("bunzip2", ["bunzip2", "-f", str(filepath)]), ".xz": ("xz", ["xz", "-d", str(filepath)]), @@ -475,6 +476,7 @@ def _extract_one_archive(archive_path: Path, target_dir: Path): ".tar.gz": ("tar", ["tar", "-xzf", str(archive_path)]), ".tgz": ("tar", ["tar", "-xzf", str(archive_path)]), ".tar": ("tar", ["tar", "-xf", str(archive_path)]), + ".ova": ("tar", ["tar", "-xf", str(archive_path)]), ".gz": ("gunzip", ["gunzip", "-f", str(archive_path)]), ".bz2": ("bunzip2", ["bunzip2", "-f", str(archive_path)]), ".xz": ("xz", ["xz", "-d", str(archive_path)]),