X-Git-Url: https://git.proxmox.com/?p=pve-client.git;a=blobdiff_plain;f=pveclient;h=34e2aab8b1b14028e534bc0024cf8420ad529fa1;hp=404090f6722e66fb94ba3e179de23a6dbd8770af;hb=b8b2e694f1fa0f574b4b7349aa68c5659fbe0420;hpb=61ad3df5bc6f3ae354a0f52e726fb600d924e7fc diff --git a/pveclient b/pveclient index 404090f..34e2aab 100755 --- a/pveclient +++ b/pveclient @@ -9,6 +9,7 @@ use Data::Dumper; use PVE::APIClient::JSONSchema qw(register_standard_option get_standard_option); use PVE::APIClient::CLIHandler; +use PVE::APIClient::PTY; use PVE::APIClient::LWP; use PVE::APIClient::Helpers; @@ -49,6 +50,11 @@ sub call_api_method { use base qw(PVE::APIClient::CLIHandler); +sub read_password { + return PVE::APIClient::PTY::read_password("Remote password: ") +} + + my $cmd = $ARGV[0]; if ($cmd && $cmd eq 'packagedepends') { @@ -98,12 +104,7 @@ $path_properties->{api_path} = { my $format_result = sub { my ($data) = @_; - my $format = PVE::APIClient::Helpers::get_output_format(); - - return if $path_returns->{type} eq 'null'; - - # TODO: implement different output formats ($format) - print to_json($data, {utf8 => 1, allow_nonref => 1, canonical => 1, pretty => 1 }); + PVE::APIClient::Helpers::print_result($data, $path_returns); }; __PACKAGE__->register_method ({ @@ -177,9 +178,12 @@ our $cmddef = { lxc => $PVE::APIClient::Commands::lxc::cmddef, remote => $PVE::APIClient::Commands::remote::cmddef, + resume => [ 'PVE::APIClient::Commands::GuestStatus', 'resume', ['remote', 'vmid']], + shutdown => [ 'PVE::APIClient::Commands::GuestStatus', 'shutdown', ['remote', 'vmid']], spice => [ 'PVE::APIClient::Commands::GuestStatus', 'spice', ['remote', 'vmid']], start => [ 'PVE::APIClient::Commands::GuestStatus', 'start', ['remote', 'vmid']], stop => [ 'PVE::APIClient::Commands::GuestStatus', 'stop', ['remote', 'vmid']], + suspend => [ 'PVE::APIClient::Commands::GuestStatus', 'suspend', ['remote', 'vmid']], api => { get => [ __PACKAGE__, 'pveclient_get', ['remote', 'api_path'], {}, $format_result ],