HEX
Server: LiteSpeed
System: Linux s787.bom1.mysecurecloudhost.com 4.18.0-477.13.1.lve.el8.x86_64 #1 SMP Thu Jun 1 16:40:47 EDT 2023 x86_64
User: mobilech (5348)
PHP: 8.1.34
Disabled: NONE
Upload Files
File: //proc/self/root/opt/saltstack/salt/lib/python3.10/site-packages/salt/renderers/msgpack.py
import salt.utils.msgpack


def render(msgpack_data, saltenv="base", sls="", **kws):
    """
    Accepts a message pack string or a file object, renders said data back to
    a python dict.

    .. note:
        This renderer is NOT intended for use in creating sls files by hand,
        but exists to allow for data backends to serialize the highdata
        structure in an easily transportable way. This is to allow for more
        fluid fileserver backends that rely on pure data sources.

    :rtype: A Python data structure
    """
    if not isinstance(msgpack_data, str):
        msgpack_data = msgpack_data.read()

    if msgpack_data.startswith("#!"):
        msgpack_data = msgpack_data[(msgpack_data.find("\n") + 1) :]
    if not msgpack_data.strip():
        return {}
    return salt.utils.msgpack.loads(msgpack_data)