????

Your IP : 3.14.251.36


Current Path : /lib/python3.6/site-packages/up2date_client/__pycache__/
Upload File :
Current File : //lib/python3.6/site-packages/up2date_client/__pycache__/up2dateUtils.cpython-36.pyc

3

�f<�@s�dZddlZddlZddlZddlZddlZddlmZddlmZddl	m
Z
ddlmZej
ddd	�Zeed
�s|eje_ejZe
�dkr�ddlZdd
�ZnddlmZdd
�Zdd�Zdd�Zdd�Zdd�Zdd�Zejdd��ZdS)zutility functions for up2date�N)�
up2dateErrors)�config)�getPlatform)�sstrzrhn-client-toolsT)Zfallback�ugettext�debcCs6tj�}|d}d}d|kr$|d}|d}|||fS)NZIDzn/aZCODENAMEZRELEASE)�lsb_releaseZget_distro_information)Z	dist_infoZos_nameZ
os_version�
os_release�r
�"/usr/lib/python3.6/up2dateUtils.py�_getOSVersionAndReleasesr)�transactioncCs~tj�}�xn|jdd�D]~}d}t|d�}t|d�}|dd�|dD�kr�td	d�t|d|d
�D��}d||f}||}t|d�||f}|SWx�|jdd
�D]�}d}t|d�}t|d�}|dd�|dD�k�rtdd�t|d|d
�D��}d||f}||}t|d�||f}|SWxL|jdd�D]2}t|d�t|d�t|d�f}|jj�|SWtj	d��dS)NZProvidenamezoraclelinux-releasezsystem-release(releasever)�version�releasecss|]}t|�VqdS)N)r)�.0�provider
r
r�	<genexpr>,sz*_getOSVersionAndRelease.<locals>.<genexpr>Zprovidenamecss"|]\}}t|�t|�fVqdS)N)r)r�n�vr
r
rr-sZprovideversionz%s-%s�namezredhat-releasecss|]}t|�VqdS)N)r)rrr
r
rr8scss"|]\}}t|�t|�fVqdS)N)r)rrrr
r
rr9szdistribution-releasezxCould not determine what version of CloudLinux you are running.
If you get this error, try running 

		rpm --rebuilddb

)
r
ZinitReadOnlyTransactionZdbMatchr�dict�zip�tsZcloseDBrZRpmError)r�hZ	SYSRELVERrrZprovidesZosVersionReleaser
r
rr&s:"
cCs,tj�}|drt|d�St�\}}}|S)z3
    Returns the version of redhat-release rpm
    ZversionOverride)rZinitUp2dateConfig�strr)Zcfgr	rrr
r
r�
getVersionLs
rcCst�\}}}|S)z4
    Returns the name of the redhat-release rpm
    )r)r	rrr
r
r�getOSReleaseVsrcCst�\}}}|S)z7
    Returns the release of the redhat-release rpm
    )r)r	rrr
r
r�
getRelease]srcCsztjdtj�r@tdd�}|j�j�}ddi}||kr<||}|Stj�d}t�dkrv|dkrbd
}|dkrnd}|d
7}|S)Nz/etc/rpm/platform�rzia32e-redhat-linuxzx86_64-redhat-linux�r�i486�i586�i686Zi386Zx86_64�amd64z
-debian-linux)r r!r")�os�access�R_OK�open�read�strip�unamer)�fd�platform�replaceZarchr
r
r�getArchds

r.cCsdS)Nz12.11.3-1.module_el8.10.0+6845+3ddf2832.cloudlinuxr
r
r
r
rrysrccs�tj�\}}tjd�}tjd�}tj|d�tj|d�z
dVWdtj|d�tj|d�Xtj|�tj|��<}tjdj|��}x$|D]}|j	|�s�t
|tjd�q�WWdQRXdS)zP
    Context manager to suppress errors
    matching the specified patterns
    ��N�|)�file)
r$�pipe�dup�dup2�close�fdopen�re�compile�join�search�print�sys�stderr)Zerror_patternsZread_endZ	write_endZ
old_stdoutZ
old_stderr�fZcombined_pattern�liner
r
r�suppress_errors~s





rA)�__doc__�
contextlibr$r=r8�gettextZup2date_clientrrZup2date_client.pkgplatformrZrhn.i18nrZtranslation�t�hasattrr�_rrr
rrrr.r�contextmanagerrAr
r
r
r�<module>s0



&