feat: add .ova support — OVA files are tar archives containing .vmdk disks
This commit is contained in:
parent
0c2b11f2d2
commit
878bc66da8
1 changed files with 3 additions and 1 deletions
|
|
@ -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)]),
|
||||
|
|
|
|||
Loading…
Reference in a new issue