From 71c09de4449535919f8a789fd1c995c4dc20e7fc Mon Sep 17 00:00:00 2001
From: Erik Reid <erik.reid@geant.org>
Date: Thu, 7 Feb 2019 19:53:47 +0100
Subject: [PATCH] only add peer as element if present

---
 inventory_provider/juniper.py | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/inventory_provider/juniper.py b/inventory_provider/juniper.py
index 4742147e..741ef352 100644
--- a/inventory_provider/juniper.py
+++ b/inventory_provider/juniper.py
@@ -281,15 +281,14 @@ def vpn_rr_peers(netconf_config):
             '/protocols/bgp/'
             'group[name/text()="VPN-RR" or name/text()="VPN-RR-INTERNAL"]/'
             'neighbor'):
-        peer_as = r.find('peer-as')
-        if peer_as is not None:
-            peer_as = int(r.find('peer-as').text)
-        yield {
+        neighbor = {
             'name': ipaddress.ip_address(r.find('name').text).exploded,
             'description': r.find('description').text,
-            'peer-as': peer_as
         }
-
+        peer_as = r.find('peer-as')
+        if peer_as is not None:
+            neighbor['peer-as'] = int(r.find('peer-as').text)
+        yield neighbor
 
 # note for enabling vrr data parsing ...
 # def fetch_vrr_config(hostname, ssh_params):
-- 
GitLab