[pve-devel] [PATCH pve-network 3/3] api2: add networkconfig
Alexandre Derumier
aderumier at odiso.com
Wed Apr 3 00:19:11 CEST 2019
/cluster/network/vnet
/cluster/network/transport
---
PVE/API2/Makefile | 3 +++
PVE/API2/NetworkConfig.pm | 62 +++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 65 insertions(+)
create mode 100644 PVE/API2/NetworkConfig.pm
diff --git a/PVE/API2/Makefile b/PVE/API2/Makefile
index 5bc7988..3e0ae7e 100644
--- a/PVE/API2/Makefile
+++ b/PVE/API2/Makefile
@@ -1,5 +1,8 @@
+SOURCES=NetworkConfig.pm
+PERL5DIR=${DESTDIR}/usr/share/perl5
.PHONY: install
install:
+ for i in ${SOURCES}; do install -D -m 0644 $$i ${PERL5DIR}/PVE/API2/$$i; done
make -C Network install
diff --git a/PVE/API2/NetworkConfig.pm b/PVE/API2/NetworkConfig.pm
new file mode 100644
index 0000000..91b7699
--- /dev/null
+++ b/PVE/API2/NetworkConfig.pm
@@ -0,0 +1,62 @@
+package PVE::API2::NetworkConfig;
+
+use strict;
+use warnings;
+
+use PVE::SafeSyslog;
+use PVE::Tools;
+use PVE::Cluster qw(cfs_lock_file cfs_read_file cfs_write_file);
+use PVE::RESTHandler;
+use PVE::RPCEnvironment;
+use PVE::JSONSchema qw(get_standard_option);
+use PVE::Exception qw(raise_param_exc);
+use PVE::API2::Network::Transport;
+use PVE::API2::Network::Vnet;
+
+use base qw(PVE::RESTHandler);
+
+__PACKAGE__->register_method ({
+ subclass => "PVE::API2::Network::Transport",
+ path => 'transport',
+ });
+
+__PACKAGE__->register_method ({
+ subclass => "PVE::API2::Network::Vnet",
+ path => 'vnet',
+ });
+
+__PACKAGE__->register_method({
+ name => 'index',
+ path => '',
+ method => 'GET',
+ description => "Directory index.",
+ permissions => {
+ check => ['perm', '/', [ 'Sys.Audit' ]],
+ },
+ parameters => {
+ additionalProperties => 0,
+ properties => {},
+ },
+ returns => {
+ type => 'array',
+ items => {
+ type => "object",
+ properties => {
+ id => { type => 'string' },
+ },
+ },
+ links => [ { rel => 'child', href => "{id}" } ],
+ },
+ code => sub {
+ my ($param) = @_;
+
+ my $res = [
+ { id => 'transport' },
+ { id => 'vnet' },
+ ];
+
+ return $res;
+ }});
+
+
+1;
--
2.11.0
More information about the pve-devel
mailing list