%PDF- %PDF-
Direktori : /lib/python2.7/site-packages/salt/grains/ |
Current File : //lib/python2.7/site-packages/salt/grains/metadata.pyo |
� ���^c @@ s� d Z d d l m Z m Z m Z d d l Z d d l Z d d l j j Z d d l Z d d l j j Z d d l Z d d l Z d Z d j e � Z d � Z d d � Z d � Z d S( u Grains from cloud metadata servers at 169.254.169.254 .. versionadded:: 2017.7.0 :depends: requests To enable these grains that pull from the http://169.254.169.254/latest metadata server set `metadata_server_grains: True`. .. code-block:: yaml metadata_server_grains: True i ( t absolute_importt print_functiont unicode_literalsNu 169.254.169.254u http://{0}/c C@ s� t j d t � t k r t St j t j t j � } | j d � | j t d f � } | d k rf t St j t j j t d � d t �j d � d k r� t St S( Nu metadata_server_grainsg�������?iP i u latest/t statusu statusi� ( t __opts__t gett Falset sockett AF_INETt SOCK_STREAMt settimeoutt connect_ext IPt httpt queryt ost patht joint HOSTt True( t sockt result( ( s8 /usr/lib/python2.7/site-packages/salt/grains/metadata.pyt __virtual__$ s 3u latest/c C@ s, i } t j t j j t | � d t �} d | k r: | St j j j | d � } | d j d d � d k rs | Sx�| j d � D]�} | j d � r� t d t j j | | � � | | d <q� | d k r� t d t j j | | d � � | | <q� | j d � r*t d t j j | | � � | | <q� d | k rp| j d � \ } } t d t j j | | � � | | <q� t j t j j t | | � � j d d � } t | t j � ry, t j j j t j j j | � � | | <Wqt k rt j j j | � | | <qXq� | | | <q� Wt j j j | � S( u? Recursively look up all grains in the metadata server t headersu bodyu headersu Content-Typeu text/plainu application/octet-streamu u /t prefixi����u latest/u dynamicu meta-datau =( u dynamicu meta-dataN( R R R R R R R t saltt utilst stringutilst to_unicodeR t splitt endswitht _searcht Nonet isinstancet sixt binary_typet jsont loadst ValueErrort datat decode( R t rett linedatat bodyt linet keyt valuet retdata( ( s8 /usr/lib/python2.7/site-packages/salt/grains/metadata.pyR 1 s2 $))%%-, c C@ s t � S( N( R ( ( ( s8 /usr/lib/python2.7/site-packages/salt/grains/metadata.pyt metadataW s ( t __doc__t __future__R R R R R t salt.ext.sixt extR"