all lists on lists.proxmox.com
 help / color / mirror / Atom feed
From: Dominik Csapak <d.csapak@proxmox.com>
To: Fiona Ebner <f.ebner@proxmox.com>,
	Proxmox VE development discussion <pve-devel@lists.proxmox.com>
Subject: Re: [pve-devel] [PATCH storage/manager v3] allow upload & import of qcow2 in the web UI
Date: Wed, 26 Mar 2025 13:25:08 +0100	[thread overview]
Message-ID: <4c317f4d-42f4-4d0e-a276-517b2ed09dfc@proxmox.com> (raw)
In-Reply-To: <c4f6dfeb-6162-4409-a4a5-2d1b741c014e@proxmox.com>

On 3/26/25 13:05, Fiona Ebner wrote:
> 
> 
> Am 26.03.25 um 12:47 schrieb Dominik Csapak:
>> On 3/26/25 12:41, Fiona Ebner wrote:
>>> Am 26.03.25 um 11:47 schrieb Dominik Csapak:
>>>> On 3/26/25 11:37, Fiona Ebner wrote:
>>>>> Am 25.03.25 um 16:14 schrieb Dominik Csapak:
>>>>>> most of the building blocks are already there:
>>>>>> * we can have qcow2 files in an import storage
>>>>>> * we can import qcow2 files via the api from such a storage
>>>>>>
>>>>>> this series fills in the missing bits & pieces:
>>>>>> * allow uploading qcow2 files into an import storage via the webgui
>>>>>> * adding the possibility to select such a file when creating a vm/disk
>>>>>>
>>>>>> We could maybe also allow this for raw/vmdk if we want to, but IMHO
>>>>>> we can start out with qcow2 and add the others as necssary.
>>>>>>
>>>>>> (if wanted, I can of course also add the others in a next version
>>>>>> or as
>>>>>> a follow up)
>>>>>
>>>>>
>>>>> Yes, please! It would be nice to have all three at the same time. Or is
>>>>> there any specific reason why you limit it to qcow2? Otherwise, users
>>>>> will just ask why support for these is missing right away.
>>>>
>>>> No specific reason, it was just easier/quicker to implement one first.
>>>> When we also allow raw files,
>>>> should we also allow other extensions than '.raw'? not sure if there is
>>>> one that
>>>> is often used (since I think '.raw' is more a PVE thing)
>>>>
>>>
>>> Right, raw is actually a bit of a headache because of that :P
>>>
>>> We could either:
>>>
>>> 1) have a list of common extensions for raw: .raw/.img/etc
>>>
>>> 1b) also treat files without extension as raw?
>>>
>>> 2) have a list of known extensions that are not raw and treat everything
>>> else as raw, while logging an informational message
>>>
>>> I'd prefer 1), because we already require specific extensions for other
>>> uploads.
>>>
>>> And likely we want to rename after/during upload, so images that are raw
>>> for us always have a ".raw" extension? Otherwise, we need to be careful
>>> enough to enforce the very same rules when parsing the import volume
>>> name and thus mostly also have them set in stone for the future. The
>>> advantage of the latter would be for the use case where one wants to
>>> manually make accessible their already existing image folders without
>>> using the API.
>>>
>>
>> I'd also use a list (e.g. for now '.raw', '.img')
>>
>> renaming is a good idea, but how should we do that? e.g.
>>
>> foo.img -> foo.img.raw ?
>>
>> because if we'd do foo.img -> foo.raw i think it's more likely
>> to get a collision than when we keep the .img in the name
>>
>> what do you think?
> 
> Yes, IMHO, simply attaching .raw is better.
> 
>> Side note (can be done later; or not) do we want to support compressed
>> files?
>> (gz, xz, etc.?) just noticed that e.g. the home assistant disk image is a
>> qcow2.xz file
> 
> Yeah, I think it makes sense. We'll just need to adapt the "needs
> extraction" logic?

i actually thought more about uncompressing on download/upload, otherwise
we can't check the file until importing...

in any case, this could still be done as a follow up, I'd like to concentrate
on uncompressed images for now if that's ok with you?


_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


  reply	other threads:[~2025-03-26 12:25 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-25 15:14 Dominik Csapak
2025-03-25 15:14 ` [pve-devel] [PATCH storage v3 1/1] import: allow upload of qcow2 files into import storage Dominik Csapak
2025-03-25 15:14 ` [pve-devel] [PATCH manager v3 1/3] ui: storage content: allow upload of qcow2 for import type Dominik Csapak
2025-03-25 15:14 ` [pve-devel] [PATCH manager v3 2/3] ui: form: file selector: allow optional filter Dominik Csapak
2025-03-25 15:14 ` [pve-devel] [PATCH manager v3 3/3] ui: qemu hd edit: allow importing a disk from the import storage Dominik Csapak
2025-03-26 10:09 ` [pve-devel] [PATCH storage/manager v3] allow upload & import of qcow2 in the web UI Filip Schauer
2025-03-26 10:37 ` Fiona Ebner
2025-03-26 10:47   ` Dominik Csapak
2025-03-26 11:41     ` Fiona Ebner
2025-03-26 11:47       ` Dominik Csapak
2025-03-26 12:05         ` Fiona Ebner
2025-03-26 12:25           ` Dominik Csapak [this message]
2025-03-26 12:28             ` Fiona Ebner
2025-03-26 11:57       ` Dominik Csapak
2025-03-26 12:06         ` Fiona Ebner
2025-03-26 15:30         ` Thomas Lamprecht
2025-03-26 10:47   ` Thomas Lamprecht
2025-03-26 15:27 ` Dominik Csapak

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4c317f4d-42f4-4d0e-a276-517b2ed09dfc@proxmox.com \
    --to=d.csapak@proxmox.com \
    --cc=f.ebner@proxmox.com \
    --cc=pve-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal