HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux ip-10-0-8-47 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:31:58 UTC 2024 aarch64
User: ubuntu (1000)
PHP: 8.1.2-1ubuntu2.22
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/uaclient/entitlements/__pycache__/realtime.cpython-310.pyc
o

�~c��@svddlmZmZddlmZmZmZmZddlm	Z	ddl
mZddlm
Z
mZmZe��ZdZGdd�de	j�Zd	S)
�)�Optional�Tuple)�event_logger�messages�system�util)�repo)�IncompatibleService)�MessagingOperations�MessagingOperationsDict�StaticAffordancez"https://ubuntu.com/realtime-kernelc@s|eZdZdZdZdZeZdZdZ	dZ
defdd�Ze
deed	ffd
d��Ze
deed	ffdd
��Ze
defdd��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)�installed_pkgs�installed_pkgs_regex)r�
should_reboot�set�packages�event�needs_reboot)�self�reboot_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)
�uaclient.entitlements.fipsrr�uaclient.entitlements.livepatchrr	r�REALTIME_FIPS_INCOMPATIBLE�"REALTIME_FIPS_UPDATES_INCOMPATIBLE�REALTIME_LIVEPATCH_INCOMPATIBLE)rrrrrrr�incompatible_services#s����z/RealtimeKernelEntitlement.incompatible_servicescCstjdd�dffS)NcSst��S)N)r�is_containerrrrr�<lambda>=sz>RealtimeKernelEntitlement.static_affordances.<locals>.<lambda>F)r�#REALTIME_ERROR_INSTALL_ON_CONTAINER)rrrr�static_affordances8s
��z,RealtimeKernelEntitlement.static_affordancescCs>d}|jstjtj|jdd�fg}|tjtj|jd�fgd�S)NT)�msg�
assume_yes�default)r(r))�
pre_enable�pre_disable)�access_onlyr�prompt_for_confirmationr�REALTIME_PROMPTr)�REALTIME_PRE_DISABLE_PROMPT)rr+rrr�	messagingBs"�������z#RealtimeKernelEntitlement.messagingN)�__name__�
__module__�__qualname__�name�title�description�REALTIME_KERNEL_DOCS_URL�help_doc_url�
repo_key_file�apt_noninteractive�supports_access_only�boolr�propertyrr	r#rr'rr1rrrrr
s"		�r
N)�typingrr�uaclientrrrr�uaclient.entitlementsr�uaclient.entitlements.baser	�uaclient.typesr
rr�get_event_loggerrr8�RepoEntitlementr
rrrr�<module>s