api: alloc: allow 'vmdk' for the 'format' option

The API endpoint will automatically detect the format from the
extension for raw, qcow2 and vmdk, but it was not yet possible to
specify the format explicitly via the parameter. This could be
annoying/surprising to users. There also might be third-party plugins
that want to use vmdk, but not require a suffix in the name. Add
'vmdk' as an allowed format to avoid these issues and for consistency
by using the 'pve-storage-format' format.

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
Acked-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Reviewed-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
This commit is contained in:
Fiona Ebner
2025-03-05 11:49:21 +01:00
committed by Thomas Lamprecht
parent 1b38ad0e27
commit 559867f79b

View File

@ -6,6 +6,7 @@ use warnings;
use PVE::SafeSyslog;
use PVE::Cluster;
use PVE::Storage;
use PVE::Storage::Plugin; # for 'pve-storage-format' format
use PVE::INotify;
use PVE::Exception qw(raise_param_exc);
use PVE::RPCEnvironment;
@ -179,7 +180,7 @@ __PACKAGE__->register_method ({
},
'format' => {
type => 'string',
enum => ['raw', 'qcow2', 'subvol'],
format => 'pve-storage-format',
requires => 'size',
optional => 1,
},