HEX
Server: Apache
System: Linux server2.voipitup.com.au 4.18.0-553.109.1.lve.el8.x86_64 #1 SMP Thu Mar 5 20:23:46 UTC 2026 x86_64
User: posscale (1027)
PHP: 8.2.30
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //opt/saltstack/salt/lib/python3.10/site-packages/salt/roster/__pycache__/range.cpython-310.pyc
o

�N�g	�@s~dZddlZddlZddlZe�e�ZdZzddlZ	dZWne
y+e�d�Ynwdd�Zdd	d
�Z
dd�Zd
d�ZdS)a$
This roster resolves targets from a range server.

:depends: seco.range, https://github.com/ytoolshed/range

When you want to use a range query for target matching, use ``--roster range``. For example:

.. code-block:: bash

    salt-ssh --roster range '%%%example.range.cluster' test.ping

�NFTzUnable to load range librarycCstS)N)�	HAS_RANGE�rr�E/opt/saltstack/salt/lib/python3.10/site-packages/salt/roster/range.py�__virtual__sr�rangec
Ks�tj�td�}t�dtd�g}z
t�d|�|�|�}Wntjjy;}zt�d|�iWYd}~Sd}~wwt�d|�t	t	d�}t�d|�z	||||�}Wn	t
y_t�wt�d	|�|S)
z/
    Return the targets from a range query
    Zrange_serverz$Range connection to '%s' establishedzQuerying range for '%s'zRange server exception: %sNzRange responded with: '%s')r�globzFiltering using tgt_type: '%s'z!Targeting data for salt-ssh: '%s')�secorZRange�__opts__�log�debug�expandZRangeException�error�target_range�KeyError�NotImplementedError)�tgtZtgt_type�kwargs�r�hosts�errZtgt_funcZtargeted_hostsrrr�targets#s.����rcCsZi}|D]&}t�t�di��||<||�d|i�t�d�r*||�dtdi�q|S�NZroster_defaults�hostZssh_user�user)�copy�deepcopyr	�get�update�rr�retrrrrrEs
�rcCsfi}|D],}t�||�r0t�t�di��||<||�d|i�t�d�r0||�dtdi�q|Sr)�fnmatchrrr	rrrrrr�target_globOs
�r!)r)�__doc__rr �logging�	getLogger�__name__r
rZ
seco.ranger�ImportError�warningrrrr!rrrr�<module>s 

�
"