Your IP : 216.73.216.52


Current Path : /usr/lib/python3/dist-packages/uaclient/entitlements/__pycache__/
Upload File :
Current File : //usr/lib/python3/dist-packages/uaclient/entitlements/__pycache__/realtime.cpython-38.pyc

U

8�-d��@szddlmZmZddlmZmZmZmZmZddl	m
Z
ddlmZddl
mZmZmZe��ZdZGdd�de
j�Zd	S)
�)�Optional�Tuple)�apt�event_logger�messages�system�util)�repo)�IncompatibleService)�MessagingOperations�MessagingOperationsDict�StaticAffordancez"https://ubuntu.com/realtime-kernelc@s�eZdZdZdZdZeZdZdZ	dZ
ed�dd�Ze
eed	fd�d
d��Ze
eed	fd�dd
��Ze
ed�dd��Zdd�dd�ZdS)�RealtimeKernelEntitlementzrealtime-kernelzReal-time kernelz0Ubuntu kernel with PREEMPT_RT patches integratedz$ubuntu-advantage-realtime-kernel.gpgT)�returncCs(tjt|j�tdg�d�}t�|�|S)z%Check if system needs to be rebooted.zlinux-.*-realtime)Zinstalled_pkgsZinstalled_pkgs_regex)rZ
should_reboot�set�packages�eventZneeds_reboot)�selfZreboot_required�r�@/usr/lib/python3/dist-packages/uaclient/entitlements/realtime.py�_check_for_reboots�
z+RealtimeKernelEntitlement._check_for_reboot.cCs>ddlm}m}ddlm}t|tj�t|tj�t|tj	�fS)Nr)�FIPSEntitlement�FIPSUpdatesEntitlement)�LivepatchEntitlement)
Zuaclient.entitlements.fipsrrZuaclient.entitlements.livepatchrr
rZREALTIME_FIPS_INCOMPATIBLEZ"REALTIME_FIPS_UPDATES_INCOMPATIBLEZREALTIME_LIVEPATCH_INCOMPATIBLE)rrrrrrr�incompatible_services#s����z/RealtimeKernelEntitlement.incompatible_servicescCstjdd�dffS)NcSst��S)N)rZis_containerrrrr�<lambda>=�z>RealtimeKernelEntitlement.static_affordances.<locals>.<lambda>F)rZ#REALTIME_ERROR_INSTALL_ON_CONTAINER)rrrr�static_affordances8s
��z,RealtimeKernelEntitlement.static_affordancescCs>d}|js"tjtj|jdd�fg}|tjtj|jd�fgd�S)NT)�msg�
assume_yes�default)rr)�
pre_enableZpre_disable)Zaccess_onlyrZprompt_for_confirmationrZREALTIME_PROMPTrZREALTIME_PRE_DISABLE_PROMPT)rr!rrr�	messagingBs"�������z#RealtimeKernelEntitlement.messagingNcCs<t|j��tt����}|r8t�t|�tjj	|j
d��dS)N)�title)rr�intersectionrZget_installed_packages_names�remove_packages�listrZDISABLE_FAILED_TMPL�formatr#)rrrrrr%_s

��z)RealtimeKernelEntitlement.remove_packages)�__name__�
__module__�__qualname__�namer#Zdescription�REALTIME_KERNEL_DOCS_URLZhelp_doc_urlZ
repo_key_fileZapt_noninteractiveZsupports_access_only�boolr�propertyrr
rr
rrr"r%rrrrrs 		�rN)�typingrrZuaclientrrrrrZuaclient.entitlementsr	Zuaclient.entitlements.baser
Zuaclient.typesrrr
Zget_event_loggerrr,ZRepoEntitlementrrrrr�<module>s