????

Your IP : 216.73.216.152


Current Path : /usr/lib/python2.7/site-packages/tuned/plugins/
Upload File :
Current File : //usr/lib/python2.7/site-packages/tuned/plugins/plugin_script.pyc

�
��\c@syddljZddlmZddlZddlZddlmZm	Z	ej
j�Zdej
fd��YZdS(i����Ni(tbase(tPopentPIPEtScriptPlugincBsVeZdZed��Zd�Zd�Zd�Zd�Zd�Z	e
d�ZRS(sO
	Plugin for running custom scripts with profile activation and deactivation.
	cCsidd6S(Ntscript(tNone(tself((s?/usr/lib/python2.7/site-packages/tuned/plugins/plugin_script.pyt_get_config_optionsscCsat|_t|_|jddk	rTt|jdt�sAt�|jd|_	n	g|_	dS(NR(
tTruet_has_static_tuningtFalset_has_dynamic_tuningtoptionsRt
isinstancetlisttAssertionErrort_scripts(Rtinstance((s?/usr/lib/python2.7/site-packages/tuned/plugins/plugin_script.pyt_instance_inits		cCsdS(N((RR((s?/usr/lib/python2.7/site-packages/tuned/plugins/plugin_script.pyt_instance_cleanupsc	CsRxK|D]C}tj}|j|jj��tjd|t|�f�tjdtt	|j
����y�t|g|dtdtdt
d|dt
dtjj|��}|j�\}}t|�r�tjd	||d
 f�n|jrtjd||jf�tSWqttfk
rI}tjd||f�tSXqWt
S(
Ns'calling script '%s' with arguments '%s'susing environment '%s'tstdouttstderrt	close_fdstenvtuniversal_newlinestcwdsscript '%s' error output: '%s'i����s#script '%s' returned error code: %dsscript '%s' error: %s(tostenvirontupdatet
_variablestget_envtlogtinfotstrtdebugRtitemsRRRtpathtdirnametcommunicatetlenterrort
returncodeR
tOSErrortIOError(	Rtscriptst	argumentsRRtproctoutterrte((s?/usr/lib/python2.7/site-packages/tuned/plugins/plugin_script.pyt
_call_scripts!s*
	#		cCs0tt|�j|�|j|jdg�dS(Ntstart(tsuperRt_instance_apply_staticR2R(RR((s?/usr/lib/python2.7/site-packages/tuned/plugins/plugin_script.pyR58scCs�t}tt|�j|||�tkr3t}ndg}|rR|dg7}n|j|j|�tkr�tjt	j
|j�ntjt	j|j�t}|S(Ntverifytignore_missing(
RR4Rt_instance_verify_staticR
R2RRR tconststSTR_VERIFY_PROFILE_OKR(tSTR_VERIFY_PROFILE_FAIL(RRR7tdevicestrettargs((s?/usr/lib/python2.7/site-packages/tuned/plugins/plugin_script.pyR8<s		cCsUdg}|r|dg}n|jt|j�|�tt|�j||�dS(Ntstopt
full_rollback(R2treversedRR4Rt_instance_unapply_static(RRR@R>((s?/usr/lib/python2.7/site-packages/tuned/plugins/plugin_script.pyRBKs
	(t__name__t
__module__t__doc__tclassmethodRRRR2R5R8R
RB(((s?/usr/lib/python2.7/site-packages/tuned/plugins/plugin_script.pyR	s	
				(ttuned.constsR9tRt
tuned.logsttunedRt
subprocessRRtlogstgetRtPluginR(((s?/usr/lib/python2.7/site-packages/tuned/plugins/plugin_script.pyt<module>s