summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/PVE/Network/SDN.pm5
-rw-r--r--src/PVE/Network/SDN/Frr.pm3
2 files changed, 7 insertions, 1 deletions
diff --git a/src/PVE/Network/SDN.pm b/src/PVE/Network/SDN.pm
index 66665a4..0e7d1df 100644
--- a/src/PVE/Network/SDN.pm
+++ b/src/PVE/Network/SDN.pm
@@ -355,6 +355,11 @@ sub get_frr_daemon_status {
sub generate_frr_config {
my ($apply) = @_;
+ if (!-d '/etc/frr') {
+ print "frr is not installed, not generating any frr configuration\n";
+ return;
+ }
+
my $running_config = PVE::Network::SDN::running_config();
my $fabric_config = PVE::Network::SDN::Fabrics::config(1);
diff --git a/src/PVE/Network/SDN/Frr.pm b/src/PVE/Network/SDN/Frr.pm
index 52fa456..b548e7b 100644
--- a/src/PVE/Network/SDN/Frr.pm
+++ b/src/PVE/Network/SDN/Frr.pm
@@ -130,7 +130,8 @@ sub set_daemon_status {
my ($daemon_status, $set_default) = @_;
my $daemons_file = "/etc/frr/daemons";
- die "daemons file does not exist" if !-e $daemons_file;
+ die "/etc/frr/daemons file does not exist; is the frr package installed?\n"
+ if !-e $daemons_file;
for my $daemon (keys %$daemon_status) {
die "$daemon is not SDN managed" if !defined $SDN_DAEMONS_DEFAULT->{$daemon};