%PDF- %PDF-
| Direktori : /proc/self/root/usr/lib/python2.7/site-packages/salt/runners/ |
| Current File : //proc/self/root/usr/lib/python2.7/site-packages/salt/runners/ddns.pyc |
�
���^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&