o .&aM@s4ddlmZddlmZddZddZddZd S) ) constants) exceptionscCsg}|D]u}i}|}d|vr|d|d<n|d|d<|d|d<|d|d<|d|d<d|vrG|ddkrA|d|d<tj|d<ntj|d<d |vrV|d |d <d |vr`|d |d <d |vrj|d |d <d |vrt|d |d <||q|S) z Helper method that converts --instance-groups option value in create-cluster and add-instance-groups to Amazon Elastic MapReduce InstanceGroupConfig data type. NameInstanceGroupType InstanceType InstanceCount InstanceRoleBidPrice OnDemandPriceMarketEbsConfigurationAutoScalingPolicyConfigurations CustomAmiId)keysupperrSPOT ON_DEMANDappend)parsed_instance_groupsinstance_groupsinstance_group ig_configrrO/usr/lib/python3/dist-packages/awscli/customizations/emr/instancegroupsutils.pybuild_instance_groupss2            rcCs:i}||d<||d<||d<|d|d<tj|d<|S)Nrrrrr )rrr) instance_typeinstance_countinstance_group_typerrrr_build_instance_group;s   rcCs|dur |dur tj|dur|dus|durtj|dur"t|Sg}t|ddd}|||durJt|dkrJt|t|ddd}|||S)NMASTER)rrrCORE)r"MissingRequiredInstanceGroupsErrorInstanceGroupsValidationErrorrrrint)rrr master_igcore_igrrr"validate_and_build_instance_groupsFs.   r(N)awscli.customizations.emrrrrrr(rrrrs )