o
    .&ßag'  ã                   @   sä  G d d„ de ƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd	„ d	eƒZG d
d„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZ	G dd„ deƒZ
G dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG d d!„ d!eƒZG d"d#„ d#eƒZG d$d%„ d%eƒZG d&d'„ d'eƒZG d(d)„ d)eƒZG d*d+„ d+eƒZG d,d-„ d-eƒZG d.d/„ d/eƒZG d0d1„ d1eƒZG d2d3„ d3eƒZG d4d5„ d5eƒZG d6d7„ d7eƒZG d8d9„ d9eƒZG d:d;„ d;eƒZd<S )=c                   @   s   e Zd ZdZdZdd„ ZdS )ÚEmrErrorzy
    The base exception class for Emr exceptions.

    :ivar msg: The descriptive message associated with the error.
    zAn unspecified error occurredc                 K   s(   | j jdi |¤Ž}t | |¡ || _d S )N© )ÚfmtÚformatÚ	ExceptionÚ__init__Úkwargs©Úselfr   Úmsgr   r   úF/usr/lib/python3/dist-packages/awscli/customizations/emr/exceptions.pyr      s   
zEmrError.__init__N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r   r      s    r   c                   @   ó   e Zd ZdZdZdS )ÚMissingParametersErrora}  
    One or more required parameters were not supplied.

    :ivar object_name: The object that has missing parameters.
        This can be an operation or a parameter (in the
        case of inner params).  The str() of this object
        will be used so it doesn't need to implement anything
        other than str().
    :ivar missing: The names of the missing parameters.
    zWaws: error: The following required parameters are missing for {object_name}: {missing}.N©r   r   r   r   r   r   r   r   r   r      s    
r   c                   @   r   )ÚEmptyListErrorzS
    The provided list is empty.

    :ivar param: The provided list parameter
    z9aws: error: The prameter {param} cannot be an empty list.Nr   r   r   r   r   r   .   ó    r   c                   @   r   )Ú"MissingRequiredInstanceGroupsErrorzz
    In create-cluster command, none of --instance-group,
    --instance-count nor --instance-type were not supplied.
    z‚aws: error: Must specify either --instance-groups or --instance-type with --instance-count(optional) to configure instance groups.Nr   r   r   r   r   r   8   ó    r   c                   @   r   )ÚInstanceGroupsValidationErrorz�
    --instance-type and --instance-count are shortcut option
    for --instance-groups and they cannot be specified
    together with --instance-groups
    z´aws: error: You may not specify --instance-type or --instance-count with --instance-groups, because --instance-type and --instance-count are shortcut options for --instance-groups.Nr   r   r   r   r   r   C   r   r   c                   @   r   )ÚInvalidAmiVersionErrorz_
    The supplied ami-version is invalid.
    :ivar ami_version: The provided ami_version.
    zûaws: error: The supplied AMI version "{ami_version}" is invalid. Please see AMI Versions Supported in Amazon EMR in Amazon Elastic MapReduce Developer Guide: http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/ami-versions-supported.htmlNr   r   r   r   r   r   P   r   r   c                   @   r   )ÚMissingBooleanOptionsErrorzb
    Required boolean options are not supplied.

    :ivar true_option
    :ivar false_option
    z\aws: error: Must specify one of the following boolean options: {true_option}|{false_option}.Nr   r   r   r   r   r   ]   ó    r   c                   @   r   )ÚUnknownStepTypeErrorz`
    The provided step type is not supported.

    :ivar step_type: the step_type provided.
    z7aws: error: The step type {step_type} is not supported.Nr   r   r   r   r   r   i   r   r   c                   @   r   )ÚUnknownIamEndpointErrorzj
    The IAM endpoint is not known for the specified region.

    :ivar region: The region specified.
    zfIAM endpoint not known for region: {region}. Specify the iam-endpoint using the --iam-endpoint option.Nr   r   r   r   r   r   s   r   r   c                   @   r   )ÚResolveServicePrincipalErrorzZ
    The service principal could not be resolved from the region or the
    endpoint.
    zHCould not resolve the service principal from the region or the endpoint.Nr   r   r   r   r   r   ~   r   r   c                   @   r   )ÚLogUriErrorzO
    The LogUri is not specified and debugging is enabled for the cluster.
    zlaws: error: LogUri not specified. You must specify a logUri if you enable debugging when creating a cluster.Nr   r   r   r   r   r   ˆ   ó    r   c                   @   r   )ÚMasterDNSNotAvailableErrorz7
    Cannot get dns of master node on the cluster.
    zPCannot get DNS of master node on the cluster.  Please try again after some time.Nr   r   r   r   r   r    ‘   r   r    c                   @   r   )ÚWrongPuttyKeyErrorz>
    A wrong key has been used with a compatible program.
    z´Key file file format is incorrect. Putty expects a ppk file. Please refer to documentation at http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/EMR_SetUp_SSH.html. Nr   r   r   r   r   r!   š   r   r!   c                   @   r   )ÚSSHNotFoundErrorz%
    SSH or Putty not available.
    z–SSH or Putty not available. Please refer to the documentation at http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/EMR_SetUp_SSH.html.Nr   r   r   r   r   r"   ¤   r   r"   c                   @   r   )ÚSCPNotFoundErrorz$
    SCP or Pscp not available.
    z–SCP or Pscp not available. Please refer to the documentation at http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/EMR_SetUp_SSH.html. Nr   r   r   r   r   r#   ®   r   r#   c                   @   r   )ÚSubnetAndAzValidationErrorzQ
    SubnetId and AvailabilityZone are mutual exclusive in --ec2-attributes.
    z|aws: error: You may not specify both a SubnetId and an AvailabilityZone (placement) because ec2SubnetId implies a placement.Nr   r   r   r   r   r$   ¸   r   r$   c                   @   r   )ÚRequiredOptionsErrorz3
    Either of option1 or option2 is required.
    z6aws: error: Either {option1} or {option2} is required.Nr   r   r   r   r   r%   Á   r   r%   c                   @   ó   e Zd ZdZdd„ ZdS )ÚMutualExclusiveOptionErrorz„
    The provided option1 and option2 are mutually exclusive.

    :ivar option1
    :ivar option2
    :ivar message (optional)
    c                 K   s@   d|  dd¡ d |  dd¡ d |  dd¡ }t | |¡ d S )Nz$aws: error: You cannot specify both Úoption1Ú z and Úoption2z options together.Úmessage)Úgetr   r   r   r   r   r   r   Ô   s   
ÿÿ
þþ
ýz#MutualExclusiveOptionError.__init__N©r   r   r   r   r   r   r   r   r   r'   Ê   s    r'   c                   @   r&   )ÚMissingApplicationsErrorzs
    The application required for a step is not installed when creating a
    cluster.

    :ivar applications
    c                 K   s&   dd  |d ¡ d }t | |¡ d S )NzRaws: error: Some of the steps require the following applications to be installed: z, Úapplicationsz7. Please install the applications using --applications.)Újoinr   r   r   r   r   r   r   å   s   þþz!MissingApplicationsError.__init__Nr-   r   r   r   r   r.   Ü   s    r.   c                   @   r   )ÚClusterTerminatedErrorz?
    The cluster is terminating or has already terminated.
    z6aws: error: Cluster terminating or already terminated.Nr   r   r   r   r   r1   í   r   r1   c                   @   r   )Ú"ClusterStatesFilterValidationErrorz£
    In the list-clusters command, customers can specify only one
    of the following states filters:
    --cluster-states, --active, --terminated, --failed

    zvaws: error: You can specify only one of the cluster state filters: --cluster-states, --active, --terminated, --failed.Nr   r   r   r   r   r2   õ   r   r2   c                   @   r   )ÚMissingClusterAttributesErrorzõ
    In the modify-cluster-attributes command, customers need to provide
    at least one of the following cluster attributes: --visible-to-all-users,
    --no-visible-to-all-users, --termination-protected
    and --no-termination-protected
    z¤aws: error: Must specify one of the following boolean options: --visible-to-all-users|--no-visible-to-all-users, --termination-protected|--no-termination-protected.Nr   r   r   r   r   r3     r   r3   c                   @   r   )ÚInvalidEmrFsArgumentsErrorzÔ
    The provided EMRFS parameters are invalid as parent feature e.g.,
    Consistent View, CSE, SSE is not configured

    :ivar invalid: Invalid parameters
    :ivar parent_object_name: Parent feature name
    zeaws: error: {parent_object_name} is not specified. Thus,  following parameters are invalid: {invalid}Nr   r   r   r   r   r4     s    r4   c                   @   ó   e Zd ZdZdS )Ú DuplicateEmrFsConfigurationErrorz[aws: error: EMRFS should be configured either using --configuration or --emrfs but not bothN©r   r   r   r   r   r   r   r   r6     ó    r6   c                   @   r   )ÚUnknownCseProviderTypeErrorz‰
    The provided EMRFS client-side encryption provider type is not supported.

    :ivar provider_type: the provider_type provided.
    zuaws: error: The client side encryption type "{provider_type}" is not supported. You must specify either KMS or CustomNr   r   r   r   r   r9   "  r   r9   c                   @   r   )ÚUnknownEncryptionTypeErrorzn
    The provided encryption type is not supported.

    :ivar provider_type: the provider_type provided.
    zkaws: error: The encryption type "{encryption}" is invalid. You must specify either ServerSide or ClientSideNr   r   r   r   r   r:   -  r   r:   c                   @   r   )Ú#BothSseAndEncryptionConfiguredErrorzƒ
    Only one of SSE or Encryption can be configured.

    :ivar sse: Value for SSE
    :ivar encryption: Value for encryption
    zxaws: error: Both SSE={sse} and Encryption={encryption} are configured for --emrfs. You must specify only one of the two.Nr   r   r   r   r   r;   8  s    r;   c                   @   r5   )ÚInvalidBooleanConfigErrorzÚaws: error: {config_value} for {config_key} in the config file is invalid. The value should be either 'True' or 'False'. Use 'aws configure set {profile_var_name}.emr.{config_key} <value>' command to set a valid value.Nr7   r   r   r   r   r<   E  r8   r<   c                   @   r5   )Ú"UnsupportedCommandWithReleaseErrorzFaws: error: {command} is not supported with '{release_label}' release.Nr7   r   r   r   r   r=   M  r8   r=   c                   @   r5   )ÚMissingAutoScalingRoleErrorzjaws: error: Must specify --auto-scaling-role when configuring an AutoScaling policy for an instance group.Nr7   r   r   r   r   r>   R  r8   r>   N)r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r'   r.   r1   r2   r3   r4   r6   r9   r:   r;   r<   r=   r>   r   r   r   r   Ú<module>   s<   


		


		