�
�Udac @ s� d Z d d l Z d d l m Z y d d l Z e Z Wn e k
rQ e Z n Xy d d l m
Z
e Z Wn e k
r� e Z n Xd d l m
Z
e d � Z d � Z e e d � Z d � Z d
� Z d S( s/
This module adds shared support for Apstra AOS modules
In order to use this module, include it as part of your module
from ansible.module_utils.network.aos.aos import (check_aos_version, get_aos_session, find_collection_item,
content_to_dict, do_load_resource)
i����N( t LooseVersion( t Session( t to_nativec C sm t s | j d d � nP | ri d d l } | j j } t | � t | � k ri | j d d | � qi n t S( sy
Check if the library aos-pyez is present.
If provided, also check if the minimum version requirement is met
t msgsW aos-pyez is not installed. Please see details here: https://github.com/Apstra/aos-pyezi����Ns* aos-pyez >= %s is required for this module( t HAS_AOS_PYEZt fail_jsont apstra.aosomt aosomt __version__R t True( t modulet mint apstrat AOS_PYEZ_VERSION( ( sH /usr/lib/python2.7/site-packages/ansible/module_utils/network/aos/aos.pyt check_aos_version; s c C s t | � t � } | | _ | S( s'
Resume an existing session and return an AOS object.
Args:
auth (dict): An AOS session as obtained by aos_login module blocks::
dict( token=<token>,
server=<ip>,
port=<port>
)
Return:
Aos object
( R R t session( R
t autht aos( ( sH /usr/lib/python2.7/site-packages/ansible/module_utils/network/aos/aos.pyt get_aos_sessionN s
c C sX d } | r! | j d | � } n | r<