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: //proc/self/root/opt/saltstack/salt/lib/python3.10/site-packages/salt/matchers/range_match.py
"""
This is the default range matcher.
"""

import logging

HAS_RANGE = False
try:
    import seco.range

    HAS_RANGE = True
except ImportError:
    pass

log = logging.getLogger(__name__)


def match(tgt, opts=None, minion_id=None):
    """
    Matches based on range cluster
    """
    if not opts:
        opts = __opts__
    if HAS_RANGE:
        range_ = seco.range.Range(opts["range_server"])
        try:
            return opts["grains"]["fqdn"] in range_.expand(tgt)
        except seco.range.RangeException as exc:
            log.debug("Range exception in compound match: %s", exc)
            return False
    return False