[pve-devel] [PATCH v2 qemu-server 2/2] add timeout parameter to vm_start api endpoint
Tim Marx
t.marx at proxmox.com
Tue Jan 14 14:30:37 CET 2020
Signed-off-by: Tim Marx <t.marx at proxmox.com>
---
changes:
* squashed patch 2 & 4
PVE/API2/Qemu.pm | 13 ++++++++++---
PVE/QemuServer.pm | 4 ++--
2 files changed, 12 insertions(+), 5 deletions(-)
diff --git a/PVE/API2/Qemu.pm b/PVE/API2/Qemu.pm
index 5bae513..2dee3f1 100644
--- a/PVE/API2/Qemu.pm
+++ b/PVE/API2/Qemu.pm
@@ -1993,7 +1993,13 @@ __PACKAGE__->register_method({
description => "Target storage for the migration. (Can be '1' to use the same storage id as on the source node.)",
type => 'string',
optional => 1
- }
+ },
+ timeout => {
+ description => "Wait maximal timeout seconds.",
+ type => 'integer',
+ minimum => 0,
+ optional => 1,
+ },
},
},
returns => {
@@ -2007,6 +2013,7 @@ __PACKAGE__->register_method({
my $node = extract_param($param, 'node');
my $vmid = extract_param($param, 'vmid');
+ my $timeout = extract_param($param, 'timeout');
my $machine = extract_param($param, 'machine');
@@ -2060,8 +2067,8 @@ __PACKAGE__->register_method({
syslog('info', "start VM $vmid: $upid\n");
- PVE::QemuServer::vm_start($storecfg, $vmid, $stateuri, $skiplock, $migratedfrom, undef,
- $machine, $spice_ticket, $migration_network, $migration_type, $targetstorage);
+ PVE::QemuServer::vm_start($storecfg, $vmid, $stateuri, $skiplock, $migratedfrom, undef, $machine,
+ $spice_ticket, $migration_network, $migration_type, $targetstorage, $timeout);
return;
};
diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm
index e51ca62..822be6d 100644
--- a/PVE/QemuServer.pm
+++ b/PVE/QemuServer.pm
@@ -5196,7 +5196,7 @@ sub vmconfig_update_disk {
sub vm_start {
my ($storecfg, $vmid, $statefile, $skiplock, $migratedfrom, $paused,
- $forcemachine, $spice_ticket, $migration_network, $migration_type, $targetstorage) = @_;
+ $forcemachine, $spice_ticket, $migration_network, $migration_type, $targetstorage, $timeout) = @_;
PVE::QemuConfig->lock_config($vmid, sub {
my $conf = PVE::QemuConfig->load_config($vmid, $migratedfrom);
@@ -5399,7 +5399,7 @@ sub vm_start {
my $cpuunits = defined($conf->{cpuunits}) ? $conf->{cpuunits}
: $defaults->{cpuunits};
- my $start_timeout = config_aware_timeout($conf, $is_suspended);
+ my $start_timeout = $timeout // config_aware_timeout($conf, $is_suspended);
my %run_params = (
timeout => $statefile ? undef : $start_timeout,
umask => 0077,
--
2.20.1
More information about the pve-devel
mailing list