From c7c9bf4800546b8625ce064f5256b6e13eee404c Mon Sep 17 00:00:00 2001 From: Denis Knauf Date: Wed, 23 Jun 2021 23:42:29 +0200 Subject: [PATCH] qm: resize implemented (copy of ct resize) --- lib/pve/cli/qm.rb | 7 +++++++ lib/pve/proxmox.rb | 5 +++++ 2 files changed, 12 insertions(+) diff --git a/lib/pve/cli/qm.rb b/lib/pve/cli/qm.rb index b11b16e..97bf4c1 100644 --- a/lib/pve/cli/qm.rb +++ b/lib/pve/cli/qm.rb @@ -26,6 +26,13 @@ def cli_qm STDERR.puts "! #{$?.exitstatus}" unless Proxmox::Qemu.find!( name_or_id).exec *command } + ct_cli.cmd( :resize, 'Resize a disk', &lambda {|name_or_id, disk, size| + connect + qm = Proxmox::Qemu.find! name_or_id + task = qm.resize disk, size + wait task, text: "Resizing #{qm.sid} #{disk} to #{size}" + }) + qm.cmd 'help', '', aliases: ['-h', '--help'], &lambda {|*args| help qm, *args } } end diff --git a/lib/pve/proxmox.rb b/lib/pve/proxmox.rb index 6203749..c453d82 100644 --- a/lib/pve/proxmox.rb +++ b/lib/pve/proxmox.rb @@ -404,6 +404,11 @@ module Proxmox def exec *args node.exec 'qm', 'guest', 'exec', vmid, '--', *args end + + def resize disk, size + upid = rest_put "#{@rest_prefix}/resize", disk: disk, size: size + Task.send :__new__, node: @node, host: self, upid: upid + end end class LXC < Hosted