File: //usr/lib/python3/dist-packages/compose/cli/__pycache__/errors.cpython-310.pyc
o
S�`B � @ sD d dl Z d dlZd dlZd dlmZ d dlmZ d dlmZ d dl m
Z d dl mZ d dl m
Z
d dlmZ d d
lmZ ddlmZ dd
lmZ ddlmZ ddlmZ ddlmZ e�e�ZG dd� de�ZG dd� de�Z
e jdd� �Zdd� Zdd� Z dd� Z!dd� Z"dd � Z#d!d"� Z$d#d$� Z%d%Z&d&Z'd'Z(d(Z)d)Z*d*Z+d+Z,dS ),� N)�find_executable)�dedent)�APIError)�ConnectionError)�ReadTimeout)�SSLError)�ReadTimeoutError� )�API_VERSION_TO_ENGINE_VERSION� )�binarystr_to_unicode)�is_docker_for_mac_installed)�is_mac)� is_ubuntu)�
is_windowsc @ s e Zd Zdd� Zdd� ZdS )� UserErrorc C s t |��� | _d S �N)r �strip�msg)�selfr � r �4/usr/lib/python3/dist-packages/compose/cli/errors.py�__init__ s zUserError.__init__c C s | j S r �r )r r r r �__str__ s zUserError.__str__N)�__name__�
__module__�__qualname__r r r r r r r s r c @ s e Zd ZdS )r N)r r r r r r r r ! s r c
c s � zd V W d S t y } z
t�d| � t� �d }~w tyI } z!|jr7t|jd t�r7t| j � t� �t
t| j�� W Y d }~d S d }~w t
y] } z t|| j� t� �d }~w ttj fyn t| j � t� � ty� } zt� r�dd l}t||j�r�t|� t� �� d }~ww )Nz
SSL error: %sr )r �log�errorr �RequestsConnectionError�args�
isinstancer �log_timeout_error�timeout�exit_with_error�get_conn_error_message�base_urlr �
log_api_error�api_versionr �socket� Exceptionr �
pywintypes�log_windows_pipe_error)�client�er, r r r �handle_connection_errors% s: ��
��
��r0 c C sN | j dkrt�d� d S | j dkrt�d� d S t�d�t| j�| j �� d S )Nr zNCouldn't connect to Docker daemon. You might need to start Docker for Windows.�� z�The current Compose file version is not compatible with your engine version. Please upgrade your Compose file to a more recent version, or set a COMPOSE_API_VERSION in your environment.z'Windows named pipe error: {} (code: {}))�winerrorr r �formatr �strerror)�excr r r r- @ s
���r- c C s t �d| � d S )Nz�An HTTP request took too long to complete. Retry with --verbose to obtain debug information.
If you encounter this issue regularly because of slow network conditions, consider setting COMPOSE_HTTP_TIMEOUT to a higher value (current value: %s).)r r )r$ r r r r# Q s
��r# c C sR t | j�}d|vrt�|� d S t�|�}|st�|� d S t�dj|d�� d S )Nzclient is newer than serverz�The Docker Engine version is less than the minimum required by Compose. Your current project requires a Docker Engine of version {version} or greater.)�version)r �explanationr r r
�getr3 )r/ �client_versionr7 r6 r r r r( Z s
��r( c C s t �t| ��� � t� �r )r r r r r r r r r r% n s r% c C sX zt d�d u rtd�W S t� rtW S t d�d urtW S W n ty% Y nw tj| d�S )N�dockerz"Couldn't connect to Docker daemon.zdocker-machine��url)r �docker_not_found_msgr
�conn_error_docker_for_mac�conn_error_docker_machine�UnicodeDecodeError�conn_error_genericr3 r; r r r r&