HEX
Server: Apache
System: Linux scp1.abinfocom.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: confeduphaar (1010)
PHP: 8.1.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //lib/python3/dist-packages/cloudinit/distros/package_management/__pycache__/snap.cpython-38.pyc
U

Ӈg�@sVddlZddlmZmZddlmZmZddlmZm	Z	e�
e�ZGdd�de�Z
dS)�N)�Iterable�List)�subp�util)�PackageManager�UninstalledPackagesc@sHeZdZdZed�dd�Zdd�dd�Zeed	�d
d�Z	e
dd
��ZdS)�Snap�snap)�returncCstt�d��S)Nr	)�boolrZwhich)�self�r
�K/usr/lib/python3/dist-packages/cloudinit/distros/package_management/snap.py�	availableszSnap.availableF)�forcecCsdS)Nr
)rrr
r
r�update_package_sourcesszSnap.update_package_sources)�pkglistr
c	Csnt�dt|��}g}|D]P}zt�ddg|�dd��Wqtjk
rf|�|�t�d|�YqXq|S)Nz%s=%sr	�install�=�zFailed to 'snap install %s'!)	rZexpand_package_list�listr�split�ProcessExecutionError�append�LOG�info)rrZfailed�pkgr
r
r�install_packagess
zSnap.install_packagesc
Cs�ddddg}d}z(t�|�}t�|j��di��d�}Wn2tjk
rj}zt�d||�W5d}~XYnX|dkr�t�d	|�nt�ddg�dS)
Nr	�get�systemz-dZrefreshZholdz9Continuing to snap refresh. Unable to run command: %s: %sZforeverz9Skipping snap refresh because refresh.hold is set to '%s')rrZ	load_json�stdoutrrrr)ZcommandZ	snap_hold�result�er
r
r�upgrade_packages$s$
���zSnap.upgrade_packagesN)�__name__�
__module__�__qualname__�namerrrrrr�staticmethodr#r
r
r
rrs
r)Zlogging�typingrrZ	cloudinitrrZ4cloudinit.distros.package_management.package_managerrrZ	getLoggerr$rrr
r
r
r�<module>s