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/uaclient/__pycache__/exceptions.cpython-38.pyc
U

��Jh�H�@s~ddlmZmZmZddlmZGdd�de�ZGdd�de�ZGdd�de�Z	Gd	d
�d
e�Z
Gdd�de�ZGd
d�de�Z
e
ZGdd�de
�ZGdd�de
�ZGdd�de
�ZGdd�de
�ZGdd�de
�ZGdd�de
�ZGdd�de
�ZGdd�de
�ZGdd �d e
�ZGd!d"�d"e
�ZGd#d$�d$e
�ZGd%d&�d&e
�ZGd'd(�d(e
�ZGd)d*�d*e
�ZGd+d,�d,e
�ZGd-d.�d.e
�ZGd/d0�d0e
�ZGd1d2�d2e
�Z Gd3d4�d4e
�Z!Gd5d6�d6e
�Z"Gd7d8�d8e
�Z#Gd9d:�d:e
�Z$Gd;d<�d<e
�Z%Gd=d>�d>e
�Z&Gd?d@�d@e&�Z'GdAdB�dBe&�Z(GdCdD�dDe
�Z)GdEdF�dFe
e�Z*e*Z+GdGdH�dHe
�Z,GdIdJ�dJe
�Z-GdKdL�dLe
�Z.GdMdN�dNe
�Z/GdOdP�dPe
�Z0GdQdR�dRe
�Z1GdSdT�dTe
�Z2GdUdV�dVe
�Z3GdWdX�dXe
�Z4GdYdZ�dZe
�Z5Gd[d\�d\e
�Z6Gd]d^�d^e
�Z7Gd_d`�d`e
�Z8Gdadb�dbe
�Z9Gdcdd�dde
�Z:Gdedf�dfe
�Z;Gdgdh�dhe
�Z<Gdidj�dje
�Z=Gdkdl�dle
�Z>Gdmdn�dne
�Z?Gdodp�dpe
�Z@Gdqdr�dre
�ZAGdsdt�dte
�ZBGdudv�dve@�ZCGdwdx�dxe@�ZDGdydz�dze
�ZEGd{d|�d|e
�ZFGd}d~�d~e
�ZGGdd��d�e
�ZHGd�d��d�e
�ZIGd�d��d�e
�ZJGd�d��d�e
�ZKGd�d��d�e
�ZLGd�d��d�e
�ZMGd�d��d�e
�ZNGd�d��d�e
�ZOGd�d��d�e
�ZPGd�d��d�e
�ZQGd�d��d�eQ�ZRGd�d��d�e
�ZSGd�d��d�e
�ZTGd�d��d�eT�ZUGd�d��d�eT�ZVGd�d��d�eT�ZWGd�d��d�e
�ZXGd�d��d�e
�ZYGd�d��d�e
�ZZGd�d��d�e
�Z[Gd�d��d�e
�Z\Gd�d��d�e
�Z]Gd�d��d�e
�Z^Gd�d��d�e
�Z_Gd�d��d�e
�Z`Gd�d��d�e
�ZaGd�d��d�e
�ZbGd�d��d�e
�ZcGd�d��d�e
�ZdGd�d��d�e
�ZeGd�d��d�e
�ZfGd�d��d�e
�ZgGd�d��d�e
�ZhGd�d„d�e
�ZiGd�dĄd�e
�ZjGd�dƄd�e
�ZkGd�dȄd�e
�ZlGd�dʄd�e
�ZmGd�d̄d�e
�ZnGd�d΄d�e
�ZoGd�dЄd�e
�ZpGd�d҄d�e
�ZqGd�dԄd�e
�ZrGd�dքd�e
�ZsGd�d؄d�e
�ZtGd�dڄd�e
�ZuGd�d܄d�e
�ZvGd�dބd�e
�ZwGd�d�d�e
�ZxGd�d�d�e
�ZyGd�d�d�e
�ZzGd�d�d�e
�Z{Gd�d�d�e
�Z|Gd�d�d�e
�Z}Gd�d�d�e
�Z~d�S)��)�List�Optional�Tuple)�messagesc@seZdZdS)�InPlaceUpgradeNotSupportedErrorN��__name__�
__module__�__qualname__�rr�5/usr/lib/python3/dist-packages/uaclient/exceptions.pyrsrc@seZdZdS)�IsProLicensePresentErrorNrrrrrr

sr
c@seZdZdS)�CancelProLicensePollingNrrrrrrsrc@seZdZdS)�DelayProLicensePollingNrrrrrrsrcs0eZdZdeeeeedd��fdd�
Z�ZS)�ProcessExecutionErrorN�)�cmd�	exit_code�stdout�stderr�returncsH||_||_||_|s&tjj|d�}ntjj|||d�}t��|�dS)N)r)rrr)	rrrrZSUBP_INVALID_COMMAND�formatZSUBP_COMMAND_FAILED�super�__init__)�selfrrrr�message��	__class__rrrs�zProcessExecutionError.__init__)Nrr)rr	r
�strr�intr�
__classcell__rrrrrs��rc@sJeZdZdZdZdZdZdd�dd�Zedd��Z	ed	d
��Z
dd�ZdS)
�UbuntuProErrorzu
    Base class for all of our custom errors.
    All possible exceptions from our API should extend this class.
    N��rcKsL|jdk	r|jjf|�|_n|j|_||_|��D]\}}t|||�q2dS�N)�_formatted_msgr�	named_msg�_msg�additional_info�items�setattr)r�kwargs�key�valuerrrr5s
�zUbuntuProError.__init__cCs|jjSr$�r&�msg�rrrrr/BszUbuntuProError.msgcCs|jjSr$)r&�namer0rrr�msg_codeFszUbuntuProError.msg_codecCs|jjSr$r.r0rrr�__str__JszUbuntuProError.__str__)rr	r
�__doc__r'r%rr�propertyr/r2r3rrrrr!*s


r!cs(eZdZdZejd��fdd�Z�ZS)�AnonymousUbuntuProErrorz�
    For cases where we have a NamedMessage of an Error already but it isn't in
    exception form, and we need to raise it as an exception. This generally
    should only be used in cli-only code.
    )r&cst�jf|�||_dSr$)rrr&)rr&r+rrrr[sz AnonymousUbuntuProError.__init__)rr	r
r4r�NamedMessagerr rrrrr6Tsr6c@seZdZejZdS)�APTProcessConflictErrorN)rr	r
rZE_APT_PROCESS_CONFLICTr'rrrrr8esr8c@seZdZejZdS)�APTInvalidRepoErrorN)rr	r
rZE_APT_UPDATE_INVALID_URL_CONFIGr%rrrrr9isr9c@seZdZejZdS)�APTUpdateProcessConflictErrorN)rr	r
rZE_APT_UPDATE_PROCESS_CONFLICTr'rrrrr:msr:c@seZdZejZdS)�APTUpdateInvalidRepoErrorN)rr	r
rZE_APT_UPDATE_INVALID_REPOr%rrrrr;qsr;c@seZdZejZdS)�APTUpdateFailedN)rr	r
rZE_APT_UPDATE_FAILEDr%rrrrr<usr<c@seZdZejZdS)�APTInstallProcessConflictErrorN)rr	r
rZE_APT_INSTALL_PROCESS_CONFLICTr'rrrrr=ysr=c@seZdZejZdS)�APTInstallInvalidRepoErrorN)rr	r
rZE_APT_INSTALL_INVALID_REPOr%rrrrr>}sr>c@seZdZejZdS)�APTInvalidCredentialsN)rr	r
rZE_APT_INVALID_CREDENTIALSr%rrrrr?�sr?c@seZdZejZdS)�
APTTimeoutN)rr	r
rZ
E_APT_TIMEOUTr%rrrrr@�sr@c@seZdZejZdS)�APTUnexpectedErrorN)rr	r
rZE_APT_UNEXPECTED_ERRORr%rrrrrA�srAc@seZdZejZdS)�APTCommandTimeoutN)rr	r
rZE_APT_COMMAND_TIMEOUTr%rrrrrB�srBc@seZdZejZdS)�SnapNotInstalledErrorN)rr	r
rZE_SNAP_NOT_INSTALLED_ERRORr%rrrrrC�srCc@seZdZejZdS)�UnexpectedSnapdAPIErrorN)rr	r
rZE_UNEXPECTED_SNAPD_API_ERRORr%rrrrrD�srDc@seZdZejZdS)�SnapdAPIConnectionRefusedN)rr	r
rZE_SNAPD_CONNECTION_REFUSEDr'rrrrrE�srEc@seZdZejZdS)�CannotInstallSnapdErrorN)rr	r
rZE_CANNOT_INSTALL_SNAPDr'rrrrrF�srFc@seZdZejZdS)�ErrorInstallingLivepatchN)rr	r
rZE_ERROR_INSTALLING_LIVEPATCHr%rrrrrG�srGc@seZdZejZdS)�
InvalidUrlN)rr	r
rZ
E_INVALID_URLr%rrrrrH�srHc@seZdZejZdS)�ProxyNotWorkingErrorN)rr	r
rZE_NOT_SETTING_PROXY_NOT_WORKINGr%rrrrrI�srIc@seZdZejZdS)�ProxyInvalidUrlN)rr	r
rZE_NOT_SETTING_PROXY_INVALID_URLr%rrrrrJ�srJc@seZdZejZdS)�PycurlRequiredErrorN)rr	r
rZE_PYCURL_REQUIREDr'rrrrrK�srKc@seZdZejZdS)�PycurlErrorN)rr	r
rZE_PYCURL_ERRORr%rrrrrL�srLc@seZdZejZdS)�ProxyAuthenticationFailedN)rr	r
rZE_PROXY_AUTH_FAILr'rrrrrM�srMc@s&eZdZejZdZdZdZdd�Z	dS)�ExternalAPIErrorNcCsd�|j|j|j�S)Nz{}: [{}], {})r�code�url�bodyr0rrrr3�szExternalAPIError.__str__)
rr	r
rZE_EXTERNAL_API_ERRORr%rOrPrQr3rrrrrN�s
rNc@seZdZdS)�ContractAPIErrorNrrrrrrR�srRc@seZdZdS)�SecurityAPIErrorNrrrrrrS�srScs(eZdZejZdd��fdd�Z�ZS)�PycurlCACertificatesErrorNr#cst�jf|�||_dSr$)rrrP)rrPr+rrrr�sz"PycurlCACertificatesError.__init__)rr	r
rZE_PYCURL_CA_CERTIFICATESr'rr rrrrrT�srTc@s"eZdZejZeed�dd�ZdS)�ConnectivityError)�causerPcCsPt|dd�rtt|d��}nt|�}t�||�tj|||d�||_||_dS)N�reason)�cause_errorrP)�getattrr�IOErrorrr!rXrP)rrVrPrXrrrr�szConnectivityError.__init__N)	rr	r
rZE_CONNECTIVITY_ERRORr%�	ExceptionrrrrrrrU�s�rUc@seZdZejZdS)�ContractExpiredErrorN)rr	r
rZE_CONTRACT_EXPIREDr'rrrrr\�sr\c@seZdZejZdS)�InvalidServiceOpErrorN�rr	r
rZE_INVALID_SERVICE_OP_FAILUREr%rrrrr]sr]c@seZdZdZdZejZdS)�AlreadyAttachedErrorzDAn exception to be raised when a command needs an unattached system.�N)rr	r
r4rrZE_ALREADY_ATTACHEDr%rrrrr_sr_c@seZdZdZdZejZdS)�AttachErrorz@An exception to be raised when we detect a generic attach error.r"N)rr	r
r4rrZE_ATTACH_FAILUREr'rrrrrasrac@seZdZejZdS)�AttachInvalidConfigFileErrorN)rr	r
rZE_ATTACH_CONFIG_READ_ERRORr%rrrrrbsrbc@seZdZejZdS)�AttachInvalidTokenErrorN)rr	r
rZE_ATTACH_INVALID_TOKENr'rrrrrcsrcc@seZdZejZdS)�AttachForbiddenExpiredN)rr	r
rZE_ATTACH_FORBIDDEN_EXPIREDr%rrrrrdsrdc@seZdZejZdS)�AttachForbiddenNotYetN)rr	r
rZE_ATTACH_FORBIDDEN_NOT_YETr%rrrrre!srec@seZdZejZdS)�AttachForbiddenNeverN)rr	r
rZE_ATTACH_FORBIDDEN_NEVERr%rrrrrf%srfc@seZdZejZdS)�AttachExpiredTokenN)rr	r
rZE_ATTACH_EXPIRED_TOKENr'rrrrrg)srgc@seZdZejZdS)� MagicAttachTokenAlreadyActivatedN)rr	r
rZ&E_MAGIC_ATTACH_TOKEN_ALREADY_ACTIVATEDr'rrrrrh-srhc@seZdZejZdS)�MagicAttachTokenErrorN)rr	r
rZE_MAGIC_ATTACH_TOKEN_ERRORr'rrrrri1sric@seZdZejZdS)�MagicAttachUnavailableN)rr	r
rZE_MAGIC_ATTACH_UNAVAILABLEr'rrrrrj5srjc@seZdZejZdS)�MagicAttachInvalidParamN)rr	r
rZE_MAGIC_ATTACH_INVALID_PARAMr%rrrrrk9srkc@seZdZdZejZdS)�MissingAptURLDirectivez@An exception for when the contract server doesn't include aptURLN)rr	r
r4rZE_MISSING_APT_URL_DIRECTIVEr%rrrrrl=srlc@seZdZdZejZdS)�UnattachedErrorz>An exception to be raised when a machine needs to be attached.N)rr	r
r4rZE_UNATTACHEDr'rrrrrmCsrmc@seZdZejZdS)�UnattachedValidServicesErrorN)rr	r
rZ"E_VALID_SERVICE_FAILURE_UNATTACHEDr%rrrrrnIsrnc@seZdZejZdS)�UnattachedMixedServicesErrorN)rr	r
rZ#E_MIXED_SERVICES_FAILURE_UNATTACHEDr%rrrrroMsroc@seZdZejZdS)�UnattachedInvalidServicesErrorNr^rrrrrpQsrpc@seZdZejZdS)�EntitlementNotFoundErrorN)rr	r
rZE_ENTITLEMENT_NOT_FOUNDr%rrrrrqUsrqcs:eZdZdZejZeee	ej
fd��fdd�Z�ZS)�EntitlementsNotEnabledError�)�failed_servicescs$dd�|D�}t�jd|id�dS)NcSs(g|] }|d|dj|djd��qS)rr")r1rO�title)r1r/)�.0�frrr�
<listcomp>`s�z8EntitlementsNotEnabledError.__init__.<locals>.<listcomp>�services)r()rr)rrtZ
info_dictsrrrr]s��z$EntitlementsNotEnabledError.__init__)
rr	r
rrZ E_ENTITLEMENTS_NOT_ENABLED_ERRORr'rrrr7rr rrrrrrYs�rrcs,eZdZejZeejd��fdd�Z�Z	S)�EntitlementNotEnabledError��servicerWcs&t�j|d|j|j|jd�id�dS�NrW)rOrur()r|r(�rrr1r/r(�rr|rWrrrrls���z#EntitlementNotEnabledError.__init__)
rr	r
rZE_ENTITLEMENT_NOT_ENABLED_ERRORr%rr7rr rrrrrzisrzcs,eZdZejZeejd��fdd�Z�Z	S)�EntitlementNotDisabledErrorr{cs&t�j|d|j|j|jd�id�dSr}r~rrrrr|s���z$EntitlementNotDisabledError.__init__)
rr	r
rZ E_ENTITLEMENT_NOT_DISABLED_ERRORr%rr7rr rrrrr�ysr�c@seZdZejZdS)�AttachFailureDefaultServicesN)rr	r
rZ!E_ATTACH_FAILURE_DEFAULT_SERVICESr'rrrrr��sr�c@seZdZejZdS)�AttachFailureUnknownErrorN)rr	r
rZE_ATTACH_FAILURE_UNEXPECTEDr'rrrrr��sr�c@seZdZejZdS)�AttachFailureRestrictedReleaseN)rr	r
rZ!ATTACH_FAILURE_RESTRICTED_RELEASEr%rrrrr��sr�c@seZdZejZdS)�RepoNoAptKeyN)rr	r
rZE_REPO_NO_APT_KEYr%rrrrr��sr�c@seZdZejZdS)�RepoNoSuitesN)rr	r
rZE_REPO_NO_SUITESr%rrrrr��sr�c@seZdZejZdS)�RepoPinFailNoOriginN)rr	r
rZE_REPO_PIN_FAIL_NO_ORIGINr%rrrrr��sr�c@seZdZejZdS)� InvalidContractDeltasServiceTypeN)rr	r
rZ&E_INVALID_CONTRACT_DELTAS_SERVICE_TYPEr%rrrrr��sr�c@seZdZejZdS)�%EntitlementsAPTDirectivesAreNotUniqueN)rr	r
rZ,E_ENTITLEMENTS_APT_DIRECTIVES_ARE_NOT_UNIQUEr%rrrrr��sr�c@seZdZejZdS)�RequiredServiceStopsEnableN)rr	r
rZE_REQUIRED_SERVICE_STOPS_ENABLEr%rrrrr��sr�c@seZdZejZdS)�IncompatibleServiceStopsEnableN)rr	r
rZ#E_INCOMPATIBLE_SERVICE_STOPS_ENABLEr%rrrrr��sr�c@seZdZejZdS)�DependentServiceStopsDisableN)rr	r
rZ!E_DEPENDENT_SERVICE_STOPS_DISABLEr%rrrrr��sr�c@seZdZejZdS)�LandscapeConfigFailedN)rr	r
rZE_LANDSCAPE_CONFIG_FAILEDr'rrrrr��sr�c@seZdZejZdS)�#NonInteractiveKernelPurgeDisallowedN)rr	r
rZ)E_NON_INTERACTIVE_KERNEL_PURGE_DISALLOWEDr'rrrrr��sr�c@seZdZejZdZdS)�InvalidProImageN)rr	r
rZE_INVALID_PRO_IMAGEr%Z	error_msgrrrrr��sr�c@seZdZejZdS)�CloudMetadataErrorN)rr	r
rZE_CLOUD_METADATA_ERRORr%rrrrr��sr�c@seZdZdZejZdS)�GCPServiceAccountErrorz;An exception raised when GCP service account is not enabledN)rr	r
r4rZ$E_GCP_SERVICE_ACCT_NOT_ENABLED_ERRORr%rrrrr��sr�c@seZdZejZdS)�AWSNoValidIMDSN)rr	r
rZE_AWS_NO_VALID_IMDSr%rrrrr��sr�c@seZdZdS)�CloudFactoryErrorNrrrrrr��sr�c@seZdZejZdS)�CloudFactoryNoCloudErrorN)rr	r
rZ E_UNABLE_TO_DETERMINE_CLOUD_TYPEr'rrrrr��sr�c@seZdZejZdS)�CloudFactoryNonViableCloudErrorN)rr	r
rZE_UNSUPPORTED_AUTO_ATTACHr'rrrrr��sr�c@seZdZdZdZejZdS)�NonAutoAttachImageErrorz>Raised when machine isn't running an auto-attach enabled imagerN)rr	r
r4rrZ$E_UNSUPPORTED_AUTO_ATTACH_CLOUD_TYPEr%rrrrr��sr�c@seZdZejZdS)�LXDAutoAttachNotAvailableN)rr	r
rZE_LXD_AUTO_ATTACH_NOT_AVAILABLEr'rrrrr��sr�c@seZdZejZdS)�LXDAutoAttachNotAllowedN)rr	r
rZE_LXD_AUTO_ATTACH_NOT_ALLOWEDr'rrrrr��sr�c@seZdZejZdS)�InvalidFileFormatErrorN)rr	r
rZE_INVALID_FILE_FORMATr%rrrrr��sr�c@seZdZejZdS)�InvalidFileEncodingErrorN)rr	r
rZE_INVALID_FILE_ENCODINGr%rrrrr��sr�c@seZdZejZdS)�ParsingErrorOnOSReleaseFileN)rr	r
rZ"E_ERROR_PARSING_VERSION_OS_RELEASEr%rrrrr��sr�c@seZdZejZdS)�MissingSeriesOnOSReleaseFileN)rr	r
rZE_MISSING_SERIES_ON_OS_RELEASEr%rrrrr�sr�c@seZdZejZdS)�InvalidLockFileN)rr	r
rZE_INVALID_LOCK_FILEr%rrrrr�sr�c@seZdZejZdS)�InvalidJsonN)rr	r
rZE_JSON_PARSER_ERRORr%rrrrr�	sr�c@seZdZejZdS)�InvalidBooleanConfigValueN)rr	r
rZE_INVALID_BOOLEAN_CONFIG_VALUEr%rrrrr�
sr�c@seZdZejZdS)�InvalidPosIntConfigValueN)rr	r
rZ"E_CLI_CONFIG_VALUE_MUST_BE_POS_INTr%rrrrr�sr�c@seZdZejZdS)�InvalidURLConfigValueN)rr	r
rZE_CONFIG_INVALID_URLr%rrrrr�sr�c@seZdZejZdS)�InvalidFeatureYamlConfigValueN)rr	r
rZE_CONFIG_NO_YAML_FILEr%rrrrr�sr�c@seZdZejZdS)�InvalidProxyCombinationConfigN)rr	r
rZE_INVALID_PROXY_COMBINATIONr'rrrrr�sr�c@seZdZejZdS)�MissingDistroInfoFileN)rr	r
rZE_MISSING_DISTRO_INFO_FILEr'rrrrr�!sr�c@seZdZejZdS)�MissingSeriesInDistroInfoFileN)rr	r
rZ$E_MISSING_SERIES_IN_DISTRO_INFO_FILEr%rrrrr�%sr�c@seZdZejZdS)�UnsupportedManifestFileN)rr	r
rZE_UNSUPPORTED_MANIFEST_FILEr%rrrrr�)sr�c@seZdZejZdS)�InvalidOptionCombinationN)rr	r
rZE_INVALID_OPTION_COMBINATIONr%rrrrr�2sr�c@seZdZejZdS)�DepedentOptionErrorN)rr	r
rZE_DEPENDENT_OPTIONr%rrrrr�6sr�c@seZdZejZdS)�
NoHelpContentN)rr	r
rZ
E_CLI_NO_HELPr%rrrrr�:sr�c@seZdZejZdS)�InvalidSecurityIssueIdFormatN)rr	r
rZ#E_SECURITY_FIX_CLI_ISSUE_REGEX_FAILr%rrrrr�>sr�c@seZdZejZdS)�InvalidArgChoiceN)rr	r
rZE_CLI_VALID_CHOICESr%rrrrr�Bsr�c@seZdZejZdS)�EmptyConfigValueN)rr	r
rZE_CLI_EMPTY_CONFIG_VALUEr%rrrrr�Fsr�c@seZdZejZdS)�GenericInvalidFormatN)rr	r
rZE_CLI_EXPECTED_FORMATr%rrrrr�Jsr�c@seZdZejZdS)�RefreshConfigFailureN)rr	r
rZE_REFRESH_CONFIG_FAILUREr'rrrrr�Nsr�c@seZdZejZdS)�RefreshContractFailureN)rr	r
rZE_REFRESH_CONTRACT_FAILUREr'rrrrr�Rsr�c@seZdZejZdS)�RefreshMessagesFailureN)rr	r
rZE_REFRESH_MESSAGES_FAILUREr'rrrrr�Vsr�c@seZdZejZdS)�CLIJSONFormatRequireAssumeYesN)rr	r
rZ E_JSON_FORMAT_REQUIRE_ASSUME_YESr'rrrrr�Zsr�c@seZdZejZdS)�CLIAttachTokenArgXORConfigN)rr	r
rZE_ATTACH_TOKEN_ARG_XOR_CONFIGr'rrrrr�^sr�c@seZdZejZdS)�CLIAPIOptionsXORDataN)rr	r
rZ"E_API_ERROR_ARGS_AND_DATA_TOGETHERr'rrrrr�bsr�c@seZdZejZdS)�PromptDeniedErrorN)rr	r
rZE_PROMPT_DENIEDr'rrrrr�fsr�c@seZdZejZdS)�VulnerabilityDataNotFoundN)rr	r
rZE_VULNERABILITY_DATA_NOT_FOUNDr'rrrrr�osr�c@seZdZdZejZdZdS)�
LockHeldErroraAn exception for when another pro operation is in progress

    :param lock_request: String of the command requesting the lock
    :param lock_holder: String of the command that currently holds the lock
    :param pid: Integer of the process id of the lock_holder
    N)rr	r
r4rZE_LOCK_HELD_ERRORr%�pidrrrrr�xsr�c@seZdZdZejZdS)�NonRootUserErrorz7An exception to be raised when a user needs to be root.N)rr	r
r4rZE_NONROOT_USERr'rrrrr��sr�c@seZdZdZejZdS)�SecurityAPIMetadataErrorzDAn exception raised with Security API metadata returns invalid data.N)rr	r
r4rZE_SECURITY_API_INVALID_METADATAr%rrrrr��sr�c@seZdZejZdS)�SecurityIssueNotFoundN)rr	r
rZE_SECURITY_FIX_NOT_FOUND_ISSUEr%rrrrr��sr�c@seZdZejZdS)�GPGKeyNotFoundN)rr	r
rZE_GPG_KEY_NOT_FOUNDr%rrrrr��sr�c@seZdZejZdS)�UnknownProcessorTypeN)rr	r
rZE_UNKNOWN_PROCESSOR_TYPEr%rrrrr��sr�c@seZdZejZdS)� FeatureNotSupportedOldTokenErrorN)rr	r
rZ!E_FEATURE_NOT_SUPPORTED_OLD_TOKENr%rrrrr��sr�c@seZdZejZdS)�
ETagUnchangedN)rr	r
rZE_ETAG_UNCHANGEDZ_formatted_msg_rrrrr��sr�N)�typingrrrZuaclientrr[rr
rrrZrr!ZUserFacingErrorr6r8r9r:r;r<r=r>r?r@rArBrCrDrErFrGrHrIrJrKrLrMrNrRrSrTrUZUrlErrorr\r]r_rarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrzr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrr�<module>s�'