o
    !dS                     @   sd   d dl Z d dlZd dlmZ dZdZdZdd Zdd	 Zd
d Z	dd Z
dd Zdd Zdd ZdS )    N)
exceptions.   zAppECS-zDgpECS-c                 C   s:   |d u rt j| |dt||}|d u rt j| |d|S )N)resourceZ	prop_name)r   ZMissingPropertyError_get_case_insensitive_key)resource_nameobjkeyresult r
   Iusr/lib/python3.10/site-packages/awscli/customizations/ecs/filehelpers.pyfind_required_key   s   
r   c                 C   s2   |  }|  }|D ]}|  |kr|  S q
d S N)lowerkeys)
target_objZ
target_keyZkey_to_matchkey_listr   r
   r
   r   r   '   s   r   c                 C      |d ur|S t | |}t| S r   )_get_ecs_suffix
APP_PREFIX)serviceclusterZ	app_valuesuffixr
   r
   r   get_app_name0      
r   c                 C   s   |  dd S )N/   )split)Zarnr
   r
   r   get_cluster_name_from_arn8   s   r   c                 C   r   r   )r   
DGP_PREFIX)r   r   Zdg_valuer   r
   r
   r   get_deploy_group_name<   r   r   c                 C   s.   |d u rd}n|d t  }|d | d t   S )Ndefault-)MAX_CHAR_LENGTH)r   r   Zcluster_namer
   r
   r   r   D   s   r   c                 C   s*   zt | W S  ty   t|  Y S w r   )jsonloads
ValueErroryamlZ	safe_load)Zappspec_strr
   r
   r   parse_appspecM   s
   r'   )r#   r&   Zawscli.customizations.ecsr   r"   r   r   r   r   r   r   r   r   r'   r
   r
   r
   r   <module>   s   		