Server : nginx/1.24.0 System : Linux ip-172-31-33-48 6.14.0-1011-aws #11~24.04.1-Ubuntu SMP Fri Aug 1 02:07:25 UTC 2025 x86_64 User : www-data ( 33) PHP Version : 8.3.6 Disable Function : NONE Directory : /lib/python3/dist-packages/uaclient/entitlements/ |
Upload File : |
from typing import Tuple, Type from uaclient import messages from uaclient.entitlements import repo from uaclient.entitlements.base import EntitlementWithMessage, UAEntitlement class ROSCommonEntitlement(repo.RepoEntitlement): help_doc_url = messages.urls.ROS_HOME_PAGE repo_key_file = "ubuntu-pro-ros.gpg" class ROSEntitlement(ROSCommonEntitlement): name = "ros" title = messages.ROS_TITLE description = messages.ROS_DESCRIPTION help_text = messages.ROS_HELP_TEXT origin = "UbuntuROS" @property def required_services(self) -> Tuple[EntitlementWithMessage, ...]: from uaclient.entitlements.esm import ( ESMAppsEntitlement, ESMInfraEntitlement, ) return ( EntitlementWithMessage( ESMInfraEntitlement, messages.ROS_REQUIRES_ESM, ), EntitlementWithMessage( ESMAppsEntitlement, messages.ROS_REQUIRES_ESM, ), ) @property def dependent_services(self) -> Tuple[Type[UAEntitlement], ...]: return (ROSUpdatesEntitlement,) class ROSUpdatesEntitlement(ROSCommonEntitlement): name = "ros-updates" title = messages.ROS_UPDATES_TITLE description = messages.ROS_UPDATES_DESCRIPTION help_text = messages.ROS_UPDATES_HELP_TEXT origin = "UbuntuROSUpdates" @property def required_services(self) -> Tuple[EntitlementWithMessage, ...]: from uaclient.entitlements.esm import ( ESMAppsEntitlement, ESMInfraEntitlement, ) return ( EntitlementWithMessage( ESMInfraEntitlement, messages.ROS_REQUIRES_ESM, ), EntitlementWithMessage( ESMAppsEntitlement, messages.ROS_REQUIRES_ESM, ), EntitlementWithMessage( ROSEntitlement, messages.ROS_UPDATES_REQUIRES_ROS, ), )