Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
supervisor / __pycache__ / pidproxy.cpython-38.pyc
Size: Mime:
U

|^®\dã@sLdZddlZddlZddlZddlZGdd„dƒZdd„ZedkrHeƒdS)z{ An executable which proxies for a subprocess; upon a signal, it sends that
signal to the process identified by a pidfile. éNc@s@eZdZdZdd„Zdd„Zdd„Zdd	„Zd
d„Zdd
„Z	dS)ÚPidProxyNc	Csl| ¡z4|d|dd…|_}tj |d¡|_||_Wn*ttfk
rf| 	¡t
 d¡YnXdS)Néér)Ú
setsignalsÚpidfileÚosÚpathÚabspathÚcommandÚcmdargsÚ
ValueErrorÚ
IndexErrorÚusageÚsysÚexit)ÚselfÚargsr©rú"./build/lib/supervisor/pidproxy.pyÚ__init__
s
zPidProxy.__init__cCs\t tj|j|j¡|_t d¡zt dtj	¡d}Wnt
k
rNd}YnX|rqXqdS)Nééÿÿÿÿr)rÚspawnvÚP_NOWAITr
rÚpidÚtimeÚsleepÚwaitpidÚWNOHANGÚOSError)rrrrrÚgos

zPidProxy.gocCstdƒdS)Nz4pidproxy.py <pidfile name> <command> [<cmdarg1> ...])Úprint©rrrrr"szPidProxy.usagecCstt tj|j¡t tj|j¡t tj|j¡t tj|j¡t tj|j¡t tj|j¡t tj|j	¡dS©N)
ÚsignalÚSIGTERMÚpasstochildÚSIGHUPÚSIGINTÚSIGUSR1ÚSIGUSR2ÚSIGQUITÚSIGCHLDÚreapr"rrrr%szPidProxy.setsignalscCsdSr#r)rÚsigÚframerrrr-.sz
PidProxy.reapc	Csxz,t|jdƒ}t| ¡ ¡ƒ}W5QRXWntd|jƒYdSXt ||¡|tj	tj
tjfkrtt 
d¡dS)NÚrzCan't read child pidfile %s!r)ÚopenrÚintÚreadÚstripr!rÚkillr$r%r(r+rr)rr.r/Úfrrrrr&2szPidProxy.passtochild)
Ú__name__Ú
__module__Ú__qualname__rrr rrr-r&rrrrrs
	rcCsttjƒ}| ¡dSr#)rrÚargvr )ZpprrrÚmain=s
r;Ú__main__)Ú__doc__rrr$rrr;r7rrrrÚ<module>s2