Learning Lab: 01_inventory_mount.py


In [2]:
run 01_inventory_mount


---------------------------------------------------------------------------
ConnectionError                           Traceback (most recent call last)
/usr/lib/python2.7/dist-packages/IPython/utils/py3compat.pyc in execfile(fname, *where)
    202             else:
    203                 filename = fname
--> 204             __builtin__.execfile(filename, *where)

/home/virl/git/cosc-learning-labs/src/learning_lab/01_inventory_mount.py in <module>()
     46 
     47 if __name__ == "__main__":
---> 48     main()
     49 

/home/virl/git/cosc-learning-labs/src/learning_lab/01_inventory_mount.py in main()
     25 def main():
     26     print(plain(doc(inventory_mount)))
---> 27     unmounted_list = inventory_unmounted()
     28     if not unmounted_list:
     29         print('There are no (configured) devices unmounted.')

/home/virl/git/cosc-learning-labs/src/basics/inventory.pyc in inventory_unmounted()
    102     '''
    103     configured_list = config['network_device'].keys()
--> 104     mounted_list = inventory_mounted()
    105     unmounted_list = list(set(configured_list) - set(mounted_list)) if mounted_list else configured_list
    106     return unmounted_list

/home/virl/git/cosc-learning-labs/src/basics/inventory.pyc in inventory_mounted()
     86     Mounted devices can be connected or not.
     87     '''
---> 88     tree = mounted_xml()
     89     names = tree.xpath("i:node/i:id/text()", namespaces=_inventory_namespaces)
     90     names.remove('controller-config')

/home/virl/git/cosc-learning-labs/src/basics/inventory.pyc in mounted_xml()
     76 def mounted_xml():
     77     'Return a XML tree representation of the mounted items.'
---> 78     response = mounted_xml_http()
     79     return etree.parse(StringIO(response.text))
     80 

/home/virl/git/cosc-learning-labs/src/basics/inventory.pyc in mounted_xml_http()
     72 def mounted_xml_http():
     73     'Return a HTTP request/response pair for the mounted items, in XML representation.'
---> 74     return odl_http_get(_url_mounted, 'application/xml')
     75 
     76 def mounted_xml():

/home/virl/git/cosc-learning-labs/src/basics/odl_http.pyc in odl_http_get(url_suffix, accept, expected_status_code, contentType, content)
    110 ):
    111     'Get a response from the ODL server.'
--> 112     return odl_http_request('get', url_suffix, contentType, content, accept, expected_status_code)
    113 
    114 def odl_http_post(

/home/virl/git/cosc-learning-labs/src/basics/odl_http.pyc in odl_http_request(method, url_suffix, contentType, content, accept, expected_status_code)
     80     if content != None:
     81         headers['Content-Length'] = len(content)
---> 82     response = request(method, url, headers=headers, data=content, auth=(odl_server['username'], odl_server['password']))
     83     http_history_append(response)
     84     status_code_ok = False

/usr/lib/python2.7/dist-packages/requests/api.pyc in request(method, url, **kwargs)
     42 
     43     session = sessions.Session()
---> 44     return session.request(method=method, url=url, **kwargs)
     45 
     46 

/usr/lib/python2.7/dist-packages/requests/sessions.pyc in request(self, method, url, params, data, headers, cookies, files, auth, timeout, allow_redirects, proxies, hooks, stream, verify, cert)
    453             'allow_redirects': allow_redirects,
    454         }
--> 455         resp = self.send(prep, **send_kwargs)
    456 
    457         return resp

/usr/lib/python2.7/dist-packages/requests/sessions.pyc in send(self, request, **kwargs)
    556         start = datetime.utcnow()
    557         # Send the request
--> 558         r = adapter.send(request, **kwargs)
    559         # Total elapsed time of the request (approximately)
    560         r.elapsed = datetime.utcnow() - start

/usr/lib/python2.7/dist-packages/requests/adapters.pyc in send(self, request, stream, timeout, verify, cert, proxies)
    376 
    377         except MaxRetryError as e:
--> 378             raise ConnectionError(e)
    379 
    380         except _ProxyError as e:

ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8181): Max retries exceeded with url: /restconf/config/opendaylight-inventory:nodes (Caused by <class 'socket.error'>: [Errno 111] Connection refused)
Python Library Documentation: function inventory_mount in module basics.inventory

inventory_mount(device_name, device_address, device_port, device_username, device_password)
    Add the specified network device to the inventory of the Controller.


In [ ]:
from basics.odl_http import http_history
from basics.http import http_html
from IPython.core.display import HTML
HTML(http_html(http_history()))