sub complete_sdn_zone {
my ($cmdname, $pname, $cvalue) = @_;
- my $cfg = PVE::Network::SDN::config();
+ my $cfg = PVE::Network::SDN::running_config();
return $cmdname eq 'add' ? [] : [ PVE::Network::SDN::sdn_zones_ids($cfg) ];
}
my $cfg = {};
if($running) {
- my $cfg = PVE::Network::SDN::config();
+ my $cfg = PVE::Network::SDN::running_config();
$cfg = $cfg->{vnets};
} else {
$cfg = PVE::Network::SDN::Zones::config();
sub generate_etc_network_config {
- my $cfg = PVE::Network::SDN::config();
+ my $cfg = PVE::Network::SDN::running_config();
my $version = $cfg->{version};
my $vnet_cfg = $cfg->{vnets};
my $err_config = undef;
my $local_version = PVE::Network::SDN::Zones::read_etc_network_config_version();
- my $cfg = PVE::Network::SDN::config();
+ my $cfg = PVE::Network::SDN::running_config();
my $sdn_version = $cfg->{version};
return if !$sdn_version;
my $status = ifquery_check();
-
my $vnet_cfg = $cfg->{vnets};
my $zone_cfg = $cfg->{zones};
my $nodename = PVE::INotify::nodename();
foreach my $id (sort keys %{$vnet_cfg->{ids}}) {
my $vnet = $vnet_cfg->{ids}->{$id};
my $zone = $vnet->{zone};
- next if !$zone;
+ next if !defined($zone);
my $plugin_config = $zone_cfg->{ids}->{$zone};
+
+ if (!defined($plugin_config)) {
+ $vnet_status->{$id}->{status} = 'error';
+ $vnet_status->{$id}->{statusmsg} = "unknown zone '$zone' configured";
+ next;
+ }
+
next if defined($plugin_config->{nodes}) && !$plugin_config->{nodes}->{$nodename};
$vnet_status->{$id}->{zone} = $zone;