avoid extra dep on frr-pythontools and parse error messages

Signed-off-by: Alexandre Derumier <aderum...@odiso.com>
---
 PVE/API2/Network.pm | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/PVE/API2/Network.pm b/PVE/API2/Network.pm
index ac5571a7..fa605ba7 100644
--- a/PVE/API2/Network.pm
+++ b/PVE/API2/Network.pm
@@ -578,8 +578,15 @@ __PACKAGE__->register_method({
            };
            PVE::Tools::run_command(['ifreload', '-a'], errfunc => $err);
 
-           if ($frr_config && -e "/usr/lib/frr/frr-reload.py") {
-               PVE::Tools::run_command(['systemctl', 'reload', 'frr']);
+           my $err_frr = sub {
+               my $line = shift;
+               if ($line =~ /^line (\S+)/) {
+                   print "$line \n";
+               }
+           };
+
+           if ($frr_config && -e "/usr/bin/vtysh") {
+               PVE::Tools::run_command(['/usr/bin/vtysh', '-m', '-f', 
'/etc/frr/frr.conf'], outfunc => {}, errfunc => $err_frr);
            }
        };
        return $rpcenv->fork_worker('srvreload', 'networking', $authuser, 
$worker);
-- 
2.20.1

_______________________________________________
pve-devel mailing list
pve-devel@pve.proxmox.com
https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to