Signed-off-by: Alexandre Derumier <aderum...@odiso.com> --- PVE/API2.pm | 6 +++++ PVE/API2/Guests.pm | 55 ++++++++++++++++++++++++++++++++++++++++++++++ PVE/API2/Makefile | 1 + 3 files changed, 62 insertions(+) create mode 100644 PVE/API2/Guests.pm
diff --git a/PVE/API2.pm b/PVE/API2.pm index 42941fd2..092c6df7 100644 --- a/PVE/API2.pm +++ b/PVE/API2.pm @@ -17,6 +17,7 @@ use PVE::API2::Nodes; use PVE::API2::Pool; use PVE::API2::AccessControl; use PVE::API2::Storage::Config; +use PVE::API2::Guests; __PACKAGE__->register_method ({ subclass => "PVE::API2::Cluster", @@ -38,6 +39,11 @@ __PACKAGE__->register_method ({ path => 'access', }); +__PACKAGE__->register_method ({ + subclass => "PVE::API2::Guests", + path => 'guests', +}); + __PACKAGE__->register_method ({ subclass => "PVE::API2::Pool", path => 'pools', diff --git a/PVE/API2/Guests.pm b/PVE/API2/Guests.pm new file mode 100644 index 00000000..9be96393 --- /dev/null +++ b/PVE/API2/Guests.pm @@ -0,0 +1,55 @@ +package PVE::API2::Guests; + +use strict; +use warnings; + +use PVE::RESTHandler; + +use base qw(PVE::RESTHandler); + +# preload classes +use PVE::API2::Qemu; +use PVE::API2::LXC; + + +__PACKAGE__->register_method ({ + subclass => "PVE::API2::Qemu", + path => 'qemu', +}); + +__PACKAGE__->register_method ({ + subclass => "PVE::API2::LXC", + path => 'lxc', +}); + +__PACKAGE__->register_method ({ + name => 'index', + path => '', + method => 'GET', + permissions => { user => 'all' }, + description => "Directory index.", + parameters => { + additionalProperties => 0, + properties => {}, + }, + returns => { + type => 'array', + items => { + type => "object", + properties => { + subdir => { type => 'string' }, + }, + }, + links => [ { rel => 'child', href => "{subdir}" } ], + }, + code => sub { + my ($param) = @_; + + my $res = [ + { subdir => 'qemu' }, + { subdir => 'lxc' }, + ]; + + return $res; + }}); +1; diff --git a/PVE/API2/Makefile b/PVE/API2/Makefile index 97f1cc20..b1ece7d6 100644 --- a/PVE/API2/Makefile +++ b/PVE/API2/Makefile @@ -12,6 +12,7 @@ PERLSOURCE = \ Ceph.pm \ Certificates.pm \ Cluster.pm \ + Guests.pm \ HAConfig.pm \ Hardware.pm \ Network.pm \ -- 2.30.2 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel