File manager - Edit - /opt/saltstack/salt/lib/python3.10/site-packages/salt/modules/__pycache__/haproxyconn.cpython-310.pyc
Back
o ;j�( � @ s0 d Z ddlZddlZddlZddlZzddlZddlZdZW n e y) dZY nw e� e�ZdZ dZg d�ZdZd d � Zefdd�Zedfd d�Zddefdd�Zefdd�Zefdd�Zefdd�Zefdd�Zdefdd�Zefdd�Zefdd �Zefd!d"�Zefd#d$�Zdefd%d&�Zefd'd(�ZdS ))z1 Support for haproxy .. versionadded:: 2014.7.0 � NTF�haproxyz/var/run/haproxy.sock)�weight�binZbout�namec C s t rtS dS )z9 Only load the module if haproxyctl is installed )FzRThe haproxyconn execution module cannot be loaded: haproxyctl module not available)�HAS_HAPROXY�__virtualname__� r r �L/opt/saltstack/salt/lib/python3.10/site-packages/salt/modules/haproxyconn.py�__virtual__! s r c C sN t j�| �s J | � d���t �| �j}t�|�sJ | � d���tj�| �}|S )z+ Get connection to haproxy socket. z does not exist.z is not a socket.) �os�path�exists�stat�st_mode�S_ISSOCKr �connZHaPConn)�socketZissock�ha_connr r r � _get_conn. s r c C s$ t |�}tjj| d�}|j||d�S )z� List servers in haproxy backend. backend haproxy backend socket haproxy stats socket, default ``/var/run/haproxy.sock`` CLI Example: .. code-block:: bash salt '*' haproxy.list_servers mysql )�backend)� objectify)r r �cmdsZlistServers�sendCmd)r r r r �ha_cmdr r r �list_servers9 s r Zupi, c C sL t � � | }t � � |k r$t| |d�| d �� |�� krdS t � � |k sdS )a� Wait for a specific server state backend haproxy backend server targeted server value state value timeout timeout before giving up state value, default 5 min socket haproxy stats socket, default ``/var/run/haproxy.sock`` CLI Example: .. code-block:: bash salt '*' haproxy.wait_state mysql server01 up 60 �r r �statusTF)�time�get_backend�lower)r �server�value�timeoutr �tr r r � wait_stateN s ��r$ c C s� t | |d��dd��d�}i }dd� }|D ]:}d|v r$|�dd��� }q|�� tkr1|}i ||<