nodes => get_standard_option('pve-node-list', { optional => 1 }),
zone => get_standard_option('pve-sdn-zone-id',
{ completion => \&PVE::Network::SDN::Zones::complete_sdn_zone }),
+ ipam => {
+ type => 'string',
+ description => "use a specific ipam",
+ },
},
};
}
return $res;
- }
+ }
return $value;
}
}
sub generate_sdn_config {
- my ($class, $plugin_config, $zoneid, $vnetid, $vnet, $controller, $interfaces_config, $config) = @_;
+ my ($class, $plugin_config, $zoneid, $vnetid, $vnet, $controller, $subnet_cfg, $interfaces_config, $config) = @_;
die "please implement inside plugin";
}
# do nothing by default
}
+sub vnet_update_hook {
+ my ($class, $vnet_cfg, $vnetid, $zone_cfg) = @_;
+
+ # do nothing by default
+}
+
#helpers
sub parse_tag_number_or_range {
my ($str, $max, $tag) = @_;