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/grains/marathon.py
"""
Generate marathon proxy minion grains.

.. versionadded:: 2015.8.2

"""

import salt.utils.http
import salt.utils.platform

__proxyenabled__ = ["marathon"]
__virtualname__ = "marathon"


def __virtual__():
    if (
        salt.utils.platform.is_proxy()
        and "proxy" in __opts__
        and __opts__["proxy"].get("proxytype") == "marathon"
    ):
        return __virtualname__
    return False


def kernel():
    return {"kernel": "marathon"}


def os():
    return {"os": "marathon"}


def os_family():
    return {"os_family": "marathon"}


def os_data():
    return {"os_data": "marathon"}


def marathon():
    response = salt.utils.http.query(
        "{}/v2/info".format(__opts__["proxy"].get("base_url", "http://locahost:8080")),
        decode_type="json",
        decode=True,
    )
    if not response or "dict" not in response:
        return {"marathon": None}
    return {"marathon": response["dict"]}