%PDF- %PDF-
Direktori : /lib/python2.7/site-packages/salt/runners/ |
Current File : //lib/python2.7/site-packages/salt/runners/ddns.pyo |
� ���^c @@ s d Z d d l m Z m Z m Z d d l Z d d l Z e Z y. d d l Z d d l Z d d l Z e Z Wn e k r� e Z n Xd d l Z d d l Z e j e � Z d � Z d � Z d d d � Z e d d d � Z d d d d d � Z d d d � Z d d d � Z d S( u� Dynamic DNS Runner ================== .. versionadded:: Beryllium Runner to interact with DNS server and create/delete/update DNS records :codeauthor: Nitin Madhok <nmadhok@clemson.edu> i ( t absolute_importt print_functiont unicode_literalsNc C@ s t s t St S( ug Check if required libs (python-dns) is installed and load runner only if they are present ( t HAS_LIBSt Falset True( ( ( s5 /usr/lib/python2.7/site-packages/salt/runners/ddns.pyt __virtual__$ s c C@ sp d } | rl t j j t j j | � � rl t j j j | � �( } t j j t j j j | � � } Wd QXn | S( N( t Nonet ost patht isfilet expandusert saltt utilst filest fopent dnst tsigkeyringt from_textt jsont load( t keyfilet keyringt _f( ( s5 /usr/lib/python2.7/site-packages/salt/runners/ddns.pyt _get_keyring/ s $*i5 u hmac-md5c C@ sw | | k r* | j | d � j d � } n d j | | � } t j j | | � } t j j | | | | � } t j j | � } t j j t j j | | � } x: | j D]/ } | | j k r� i d j | | j � | 6Sq� Wt | � } t j j | d | d | d | �} | j | | | � t j j | | | | � } | j � d k r]i d j | � | 6Si d j | | | � | 6S( u7 Create a DNS record. The nameserver must be an IP address and the master running this runner must have create privileges on that server. CLI Example: .. code-block:: bash salt-run ddns.create domain.com my-test-vm 3600 A 10.20.30.40 my-tsig-key /etc/salt/tsig.keyring 10.0.0.1 5 u u .u {0}.{1}u3 Record of type '{0}' already exists with ttl of {1}R t keynamet keyalgorithmi u% Failed to create record of type '{0}'u( Created record of type '{0}': {1} -> {2}( t replacet rstript formatR t messaget make_queryt queryt udpt rdatatypeR t rdatat rdataclasst INt answert itemst ttlR t updatet Updatet addt rcode( t zonet nameR( t rdtypet dataR R t nameservert timeoutt portR t fqdnt requestR&