HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/compose/config/__pycache__/serialize.cpython-310.pyc
o

S�`��@s�ddlZddlmZddlmZddlmZdd�Zdd�Z	d	d
�Z
dd�Zej�
eje	�ej�
eje�ej�
eje�ej�
eje�ej�
eje	�ej�
eje	�ej�
eje	�dd
d�Zddd�Zdd�Zddd�ZdS)�N)�types)�COMPOSE_SPEC)�COMPOSEFILE_V1cCs|j}||���S�N)�
represent_str�repr��dumper�data�representer�r�:/usr/lib/python3/dist-packages/compose/config/serialize.py�serialize_config_typesrcCs|�|���Sr)�represent_dictr�r	r
rrr
�serialize_dict_type
srcCs>|j}t|t�r
|�d�}|��dvr|jd|dd�S||�S)z6 Ensure boolean-like strings are quoted in the output zutf-8)�y�n�yes�no�on�off�true�falseztag:yaml.org,2002:str�")�style)r�
isinstance�bytes�decode�lower�represent_scalarrrrr
�serialize_strings

r!cCs|�dd�}t||�S)zN Ensure boolean-like strings are quoted in the output and escape $ characters �$z$$)�replacer!rrrr
�serialize_string_escape_dollars
r$cs�dt�j�i}��fdd��jD�}dd�|D�|d<dD]2}t�|�}|s'q|��||<||��D]\}}d|vr>|d=d	|vrNd
|vrNt|d
�|d
<q3q|S)N�versioncs*g|]}t|�j�r�|dnd��qS)�nameN)�denormalize_service_dictr%��.0�service_dict��config�
image_digestsrr
�
<listcomp>0s���z&denormalize_config.<locals>.<listcomp>cSsi|]}|�d�|�qS)r&)�popr(rrr
�
<dictcomp>7s
��z&denormalize_config.<locals>.<dictcomp>�services)�networks�volumes�secrets�configs�
external_namer&�external)�str�config_versionr1�getattr�copy�items�bool)r,r-�result�denormalized_services�key�config_dictr&�confrr+r
�denormalize_config.s*�
�
��rCTcCsX|rtj�tt�tj�tt�ntj�tt�tj�tt�tjt||�ddddd�S)NF��PT)�default_flow_style�indent�width�
allow_unicode)�yaml�
SafeDumper�add_representerr8r$r!�	safe_dumprC)r,r-�
escape_dollarrrr
�serialize_configKs�rOcCsZ|df}gd�}|D]}||d}|t||d�kr'|}t|�|df}q
dj|�S)N�ns))�@�@�us)rQ�ms)rQ�s)�N@�m)rU�hr�z{}{})�int�format)�valuer>�table�stage�tmprrr
�serialize_ns_time_value[s
r_cs|��}|r
||d<d|vrt�|d�|d<�tkr#d|vr#d|d<d|vr]d|dvr9t|dd�|dd<d|dvrKt|dd�|dd<d|dvr]t|dd�|dd<d	|vrn�fd
d�|d	D�|d	<d|vr��tkr�d
d�|dD�|d<|S)N�image�restart�network_mode�bridge�healthcheck�interval�timeout�start_period�portscs&g|]}|js�tkr|��n|�qSr)�external_ip�VERSION�legacy_repr)r)�p�r%rr
r.�s��z,denormalize_service_dict.<locals>.<listcomp>r3cSs$g|]}t|tj�r|��n|�qSr)rr�	MountSpecrk)r)�vrrr
r.�s�)r;r�serialize_restart_spec�V1r_)r*r%�image_digestrrmr
r'ns>�
�
�
�

�
�r'r)NT)rJ�compose.configr�
compose.constrrjrrqrrr!r$rKrLrn�VolumeFromSpec�
VolumeSpec�SecurityOpt�
ServiceSecret�
ServiceConfig�ServicePortrCrOr_r'rrrr
�<module>s&