From cde0809253b7b346ede27c11a273df16f63f738d Mon Sep 17 00:00:00 2001
From: Erik Reid <erik.reid@geant.org>
Date: Thu, 7 Feb 2019 17:38:08 +0100
Subject: [PATCH] bugfix: peer-as isn't always present

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

diff --git a/inventory_provider/juniper.py b/inventory_provider/juniper.py
index ea98adb8..4742147e 100644
--- a/inventory_provider/juniper.py
+++ b/inventory_provider/juniper.py
@@ -281,11 +281,13 @@ def vpn_rr_peers(netconf_config):
             '/protocols/bgp/'
             'group[name/text()="VPN-RR" or name/text()="VPN-RR-INTERNAL"]/'
             'neighbor'):
-        name = r.find('name')
+        peer_as = r.find('peer-as')
+        if peer_as is not None:
+            peer_as = int(r.find('peer-as').text)
         yield {
-            'name': ipaddress.ip_address(name.text).exploded,
+            'name': ipaddress.ip_address(r.find('name').text).exploded,
             'description': r.find('description').text,
-            'peer-as': int(r.find('peer-as').text)
+            'peer-as': peer_as
         }
 
 
-- 
GitLab