%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /opt/alt/alt-php-config/
Upload File :
Create Path :
Current File : //opt/alt/alt-php-config/alt-php-panel-configuration.pyo

�
�S�ac@sddlZddlZddlZddlZddlZddlZddlmZyddlj	j
Z
Wnek
r�ddlZ
nXdZ
d�Zd�Zd�Zd	�Zd
�Zd�Zd�Zed
kr�ejeejd��ndS(i����N(tcopy2tchecktinstallt	uninstallcCs�|rtj}n	tj}tj�}|j|�d}tj|d�}|j|�tj�}|j|�|j|�|S(s�
    Logging configuration function

    :type verbose: bool
    :param verbose: Enable additional debug output if True, display only errors
        othervise
    :return: configured logger object
    s%(levelname)-8s: %(message)ss%H:%M:%S %d.%m.%y(	tloggingtDEBUGtERRORt
StreamHandlertsetLevelt	FormattertsetFormattert	getLoggert
addHandler(tverbosetlevelthandlert
log_formatt	formattertlogger((s6/opt/alt/alt-php-config/alt-php-panel-configuration.pytconfigure_loggings		



cCsEg}x.tjd�D]}|j|d|f�qW|j�|S(s�
    Returns list of installed alt-php versions and their base directories

    :rtype:  list
    :return:  List of version (e.g. 44, 55) and base directory tuples
    s/opt/alt/php[0-9][0-9]i����(tglobtappendtsort(tphp_versionstphp_dir((s6/opt/alt/alt-php-config/alt-php-panel-configuration.pytfind_alt_php_versions)s

cCs�tjddgdtjdtj�}|j�\}}x[|jd�D]J}d||f|j�jd�dkrItjd	||f�t	SqIWtjd
||f�t
S(sx

    :param php_ver: alt-php version (e.g. 44, 55, 70)
    :return: If handler exist returns True, otherwise False
    s/usr/local/psa/bin/php_handlers--listtstdouttstderrs
salt-php%s-%st isHandler for alt-php%s-%s exist.s#Handler for alt-php%s-%s not exist.(t
subprocesstPopentPIPEtSTDOUTtcommunicatetsplittstripRtinfotTruetFalse(tcgi_typetphp_vertproctoutt_tline((s6/opt/alt/alt-php-config/alt-php-panel-configuration.pytplesk_check_php_handler7s)cCsLt||�r*tjd||f�tStjd||f�tjd||fIJd}|ddd||fdtjj|d�d	tjj|d
�d|dd||fg}|d
krN|j	dd|dtjj|d�dtjj|d�g�tjj
d|�spttjj|d�tjj|d��qpn"|j	dtjj|d�g�tj
|dtjdtj�}|j�\}}|jdkr�tddj|�|f��ntj
|dgdtjdtj�}|j�\}}|jdkr7td|d|��ntjd |�tS(!NsHandler for alt-php%s-%s exist.s'Plesk: Installing alt-php%s-%s handler.s/usr/local/psa/bin/php_handlers--adds-displaynamesalt-php%s-%ss-clipathsusr/bin/phps-phpinisetc/php.inis-types-idtfpms-services
alt-php%s-fpms-pathsusr/sbin/php-fpms-poolds
etc/php-fpm.ds/opt/alt/php%s/etc/php-fpm.confsetc/php-fpm.conf.plesksetc/php-fpm.confsusr/bin/php-cgiRRiucannot execute "%s": %sRs--rereaducannot execute "s --reread": %ss-Handler for alt-php%s was successfully added.(R-RR$R&tsysRtostpathtjointextendtexistsRRRRR R!t
returncodet	ExceptionR%(R'R(tphp_pathtcommandtadd_commandR)R*R+((s6/opt/alt/alt-php-config/alt-php-panel-configuration.pytplesk_add_php_handlerHsB
1"cCs�t||�r�tjd||f�tjd||fIJdddd||fg}tj|dtjdtj�}|j	�\}}|j
dkr�td	d
j|�|f��ntjd||f�t
Stjd||f�tSdS(
Ns%Plesk: Removing alt-php%s-%s handler.s/usr/local/psa/bin/php_handlers--removes-idsalt-php%s-%sRRiucannot execute "%s": %sRs2Handler for alt-php%s-%s was successfully removed.s#Handler for alt-php%s-%s not exist.(R-RR$R/RRRRR R!R5R6R2R%R&(R'R(R8R)R*R+((s6/opt/alt/alt-php-config/alt-php-panel-configuration.pytplesk_remove_php_handlerps!"cCsfy>tj�}|dkr=tjjd�s<td��n|dkr�td||�td||�tjjd|�s�tjjd|�r:td	||�q:q=|d
krtd|�td|�tjjd|�s�tjjd|�r:td	|�q:q=td|�o9td|�o9td	|�SnWn!tk
ra}t	j
|�tSXdS(sL
    :rtype: bool
    :return: If success returns True, otherwise False
    tPlesks/usr/local/psa/bin/php_handlers)/usr/local/psa/bin/php_handler not exist.Rtfastcgitcgis/etc/init.d/alt-php%s-fpms-/usr/lib/systemd/system/alt-php%s-fpm.serviceR.RN(tcpapit	getCPNameR0R1R4R6R:R;R-RR$R&(tmodeR(R7tcp_namete((s6/opt/alt/alt-php-config/alt-php-panel-configuration.pytconfigure_alt_php�s&,

,2
c
Cs�y(tj|ddddg�\}}Wn.tjk
rX}tjdt|�IJdSXt}d}g}x�|D]�\}}|dkr�|tkr�d}q�|}n|dkr�tjj	d|�s�tjGd
|GHdS|j
|d|f�n|dkrrt}qrqrWt|�}	|s`t
�}|	jddjg|D]}
d|
^qB��nx$|D]\}}t|||�qgWdS(Nsm:p:vsmode=sphp=R
u'cannot parse command line arguments: %siRs-ms--modes-ps--phps/opt/alt/php%suunknown PHP version %ss-vs	--verboseu!installed alt-php versions are
%ss
s	 alt-php%s: %s(s-ms--mode(s-ps--php(s-vs	--verbose(tgetopttGetoptErrorR/RtunicodeR&tMODESR0R1tisdirRR%RRR$R2RD(
tsys_argstoptstargsRCR
RARtopttargtlogtitverR1((s6/opt/alt/alt-php-config/alt-php-panel-configuration.pytmain�s:(			
		+t__main__i(schecksinstalls	uninstall(R/RER0RRRtshutilRtdb.clcommon.cpapitclcommonR?tImportErrortdetectcpRHRRR-R:R;RDRRt__name__texittargv(((s6/opt/alt/alt-php-config/alt-php-panel-configuration.pyt<module>s(
				(			#

Zerion Mini Shell 1.0