§
Rl¾jh ã ó¸ — d dl Z d dlmZmZmZ d dlmZmZmZm Z d dl
mZ d dlm
Z
e j d¦ « Zde eeeee f fd„Zd „ ZdS )
é N)ÚCalledProcessErrorÚPopenÚPIPE)ÚDictÚAnyStrÚOptionalÚList)Ú
serialize_evr)Ú is_ubuntuz(cloudlinux-summary.get_rpm_packages_infoÚreturnc
óR — g } d}t ¦ « }|rd}nd}d}d}d} t |t t ddd¬ ¦ « 5 }| ¦ « \ }} |j }d
d
d
¦ « n# 1 swxY w Y || v rt
|¦ « | S n<# t t f$ r(}
t
d||
¦ « | cY d
}
~
S d
}
~
ww xY w|dk r$t
d||||| d
œ¬¦ « | S | ¦ « d¦ « }|D ]€} t ||¦ « \ }
}}}}n0# t $ r# t
d||d|i¬¦ « Y ŒFw xY w|dk rd
n|}| |
||||t! |||g¦ « dœ¦ « Œ�| S )z¡
Get full info about all of rpm packages:
- name
- epoch
- version
- release
- arch
- serialized_version
z"Thread died in Berkeley DB libraryz9dpkg-query -f '${Package} ${Version} ${Architecture}
' -WzYrpm -qa --queryformat '%{name} %|epoch?{%{epoch}}:{None}| %{version} %{release} %{arch}
'z1Can't get information about rpm packages, becausezYServer has broken rpmdb. We can't get statistics about rpm packages and skip its getting.r Tz /bin/bash)ÚstdoutÚstderrÚshellÚ
executableÚtextNz%s exception "%sz)%s command "%s" return non-zero code "%s")r r )Úextraú
zRThe result of call "%s" has an invalid line "%s". It should contain five elements.r ÚNone)ÚnameÚepochÚversionÚreleaseÚarchÚserialized_version)r r r ÚcommunicateÚ
returncodeÚ
app_loggerÚwarningr ÚOSErrorÚ exceptionÚerrorÚstripÚsplitÚparse_package_manager_outputÚ
ValueErrorÚappendr
)ÚresultÚrpm_db_error_patternÚis_ubuntu_osÚrpm_cmdÚ
error_messageÚrpm_db_warn_msgr Úprocr r r! ÚlinesÚliner r r r r s úX/opt/cloudlinux/venv/lib64/python3.11/site-packages/clsummary/rpm_packages_statistics.pyÚget_rpm_packages_infor2 s¼ € ð €FØ?ÐÝ‘;”;€LØð sØPˆˆàrˆØH€MðL€Oà€JðÝ
ØÝÝØØ"Øð
ñ
ô
ð )ð Ø!×-Ò-Ñ/Ô/‰NˆF�FØœˆJð )ð )ð )ñ )ô )ð )ð )ð )ð )ð )ð )øøøð )ð )ð )ð )ð 6Ð)Ð)Ý×ÒØñ
ô
ð
ð ˆMð *øõ
¥Ð(ð ð ð Ý×ÒØØØñ
ô
ð
ð
ˆ
ˆ
ˆ
ˆ
ˆ
ˆ
øøøøð
øøøð �Q‚€Ý×ÒØ7ØØØà Ø ðð ð ñ
ô
ð
ð ˆ
Ø�LŠL‰NŒN× Ò Ñ&Ô&€EØð ð ˆð Ý2NÈtÐUaÑ2bÔ2bÑ/ˆD�%˜ '¨4¨4øÝð
ð
ð
Ý×Òð3àØà˜fðð
ñ
ô
ð
ð
ˆHð
øøøð š˜��¨UˆØ�
Š
ØØØØØÝ"/ØØØð1ñ #ô #ð
ð
ñ ô ð ð ð €MsS ¡B Á A+ÁB Á+A/Á/B Á2A/Á3"B ÂCÂ(CÃCÃCÄ)E Å *E-Å,E-c ó — |rh| d¦ « \ }}}d}d|v r| d¦ « \ }}| d¦ « ^}}|rd |¦ « nd}n| d¦ « \ }}}}}|||||fS )aR
rpm -qa already returns data in needed format, e.g:
lve-utils None 6.2.3 2.el7.cloudlinux.1639593336.cloudlinux.1639595623 x86_64
but, dpkg-query output needed to be parsed a bit, cause version column cannot be split by util
to epoch:version:release
lve-utils 6.2.2.1639220776 amd64
ú Nú:ú-)r$ Újoin)r0 r* r r r r r s r1 r% r% m s§ € ð ð ?Ø"Ÿjšj¨Ñ.Ô.шˆg�tàˆØ�'ˆ>ˆ>Ø$Ÿ]š]¨3Ñ/Ô/‰NˆE�7Ø#ŸMšM¨#Ñ.Ô.Ј�'Ø'.Ð8�#—(’(˜7Ñ#Ô#Ð#°Dˆˆà.2¯jªj¸Ñ.>Ô.>Ñ+ˆˆe�W˜g tØ�˜ ¨$Ð.Ð.ó )ÚloggingÚ
subprocessr r r Útypingr r r r Úclcommon.evr_utilsr
Úclcommon.utilsr Ú getLoggerr r2 r% © r8 r1 ú