%PDF- %PDF-
Direktori : /usr/lib/python2.7/site-packages/salt/netapi/rest_cherrypy/ |
Current File : //usr/lib/python2.7/site-packages/salt/netapi/rest_cherrypy/event_processor.pyo |
� ���^c @@ sy d d l m Z m Z m Z d d l Z d d l m Z d d l Z d d l Z e j e � Z d e f d � � YZ d S( i ( t absolute_importt print_functiont unicode_literalsN( t sixt SaltInfoc B@ s_ e Z d Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z RS( uP Class to handle processing and publishing of "real time" Salt upates. c C@ s | | _ i | _ i | _ d S( ub handler is expected to be the server side end of a websocket connection. N( t handlert jobst minions( t selfR ( ( sM /usr/lib/python2.7/site-packages/salt/netapi/rest_cherrypy/event_processor.pyt __init__ s c C@ s� g } xT t j | j � D]@ \ } } i } | j | � | j i | d 6� | j | � q Wi | d 6} | j j t j j j | � t � d S( u7 Publishes minions as a list of dicts. u idu minionsN( R t iteritemsR t updatet appendR t sendt saltt utilst jsont dumpst False( R R t miniont minion_infot curr_miniont ret( ( sM /usr/lib/python2.7/site-packages/salt/netapi/rest_cherrypy/event_processor.pyt publish_minions# s c C@ s3 i | | 6} | j j t j j j | � t � d S( u9 Publishes the data to the event stream. N( R R R R R R R ( R t keyt datat publish_data( ( sM /usr/lib/python2.7/site-packages/salt/netapi/rest_cherrypy/event_processor.pyt publish2 s c C@ s� | d } | d } | j d � \ } } } } } | j j | d � sW i | j | <n | j | } | j i | d d 6� | j � d S( uO Associate grains data with a minion and publish minion update u tagu datau /u returnu grainsN( t splitR t gett NoneR R ( R t event_datat tagt event_infot _t midR ( ( sM /usr/lib/python2.7/site-packages/salt/netapi/rest_cherrypy/event_processor.pyt process_minion_update9 s c C@ s | d } | d } | j d � \ } } } } } | j j | i � } | j d i � j | i � } | j i | d d 6� | j i | d d 6� | j i | d d 6� t g t j | d � D] \ } } | d ^ q� � } | r� d | d <n | j d | j � d S( u� Process a /ret event returned by Salt for a particular minion. These events contain the returned results from a particular execution. u tagu datau /u minionsu returnu retcodeu successu completeu stateu jobsN( R R t setdefaultR t allR R R ( R R R R! R"