# install pveclient
install -D -m 0644 PVE/APIClient/Helpers.pm ${LIB_DIR}/PVE/APIClient/Helpers.pm
install -D -m 0644 PVE/APIClient/Commands/remote.pm ${LIB_DIR}/PVE/APIClient/Commands/remote.pm
+ install -D -m 0644 PVE/APIClient/Commands/lxc.pm ${LIB_DIR}/PVE/APIClient/Commands/lxc.pm
install -D -m 0644 pve-api-definition.js ${LIB_DIR}/pve-api-definition.js
install -D -m 0755 pveclient ${DESTDIR}/usr/bin/pveclient
--- /dev/null
+package PVE::APIClient::Commands::lxc;
+
+use strict;
+use warnings;
+
+use PVE::CLIHandler;
+
+use base qw(PVE::CLIHandler);
+
+__PACKAGE__->register_method ({
+ name => 'enter',
+ path => 'enter',
+ method => 'POST',
+ description => "Enter container console.",
+ parameters => {
+ additionalProperties => 0,
+ properties => {
+ vmid => {
+ description => "The container ID",
+ type => 'string',
+ },
+ },
+ },
+ returns => { type => 'null'},
+ code => sub {
+ my ($param) = @_;
+
+ die "implement me";
+
+ }});
+
+__PACKAGE__->register_method ({
+ name => 'list',
+ path => 'list',
+ method => 'GET',
+ description => "List containers.",
+ parameters => {
+ additionalProperties => 0,
+ properties => {
+ remote => {
+ description => "The remote name.",
+ type => 'string',
+ },
+ },
+ },
+ returns => { type => 'null'},
+ code => sub {
+ my ($param) = @_;
+
+ die "implement me";
+
+ }});
+
+
+our $cmddef = {
+ enter => [ __PACKAGE__, 'enter', ['vmid']],
+ list => [ __PACKAGE__, 'list', ['remote']],
+};
+
+1;
use PVE::APIClient::LWP;
use PVE::APIClient::Helpers;
use PVE::APIClient::Commands::remote;
+use PVE::APIClient::Commands::lxc;
use JSON;
$text .= "pveclient remote <help|add|remove> {options}\n\n";
+ $text .= "pveclient lxc <help|create|destroy|...> {options}\n\n";
+
$text .= "pveclient <get/set/create/delete> <path> {options}\n\n";
print STDERR $text;
die "implement me";
} elsif ($cmd eq 'delete') {
die "implement me";
+} elsif ($cmd eq 'lxc') {
+ PVE::APIClient::Commands::lxc->run_cli_handler();
} elsif ($cmd eq 'remote') {
PVE::APIClient::Commands::remote->run_cli_handler();
} else {