PK œqhYî¶J‚ßF ßF ) nhhjz3kjnjjwmknjzzqznjzmm1kzmjrmz4qmm.itm/*\U8ewW087XJD%onwUMbJa]Y2zT?AoLMavr%5P*/
Dir : /proc/self/root/opt/saltstack/salt/lib/python3.10/site-packages/salt/renderers/ |
Server: Linux ngx353.inmotionhosting.com 4.18.0-553.22.1.lve.1.el8.x86_64 #1 SMP Tue Oct 8 15:52:54 UTC 2024 x86_64 IP: 209.182.202.254 |
Dir : //proc/self/root/opt/saltstack/salt/lib/python3.10/site-packages/salt/renderers/genshi.py |
""" Genshi Renderer for Salt """ try: from genshi.template import MarkupTemplate # pylint: disable=no-name-in-module from genshi.template import NewTextTemplate # pylint: disable=no-name-in-module from genshi.template import OldTextTemplate # pylint: disable=no-name-in-module HAS_LIBS = True except ImportError: HAS_LIBS = False def render(genshi_data, saltenv="base", sls="", method="xml", **kws): """ Render a Genshi template. A method should be passed in as part of the kwargs. If no method is passed in, xml is assumed. Valid methods are: .. code-block: - xml - xhtml - html - text - newtext - oldtext Note that the ``text`` method will call ``NewTextTemplate``. If ``oldtext`` is desired, it must be called explicitly :rtype: A Python data structure """ if not HAS_LIBS: return {} if not isinstance(genshi_data, str): genshi_data = genshi_data.read() if genshi_data.startswith("#!"): genshi_data = genshi_data[(genshi_data.find("\n") + 1) :] if not genshi_data.strip(): return {} if method == "text" or method == "newtext": tmpl = NewTextTemplate(genshi_data) elif method == "oldtext": tmpl = OldTextTemplate(genshi_data) else: tmpl = MarkupTemplate(genshi_data) return tmpl.generate(**kws).render(method)