def printer(meta): tmpl_path = Path('~/kea2/executor/simple/').expanduser() jenv = Environment(loader=FileSystemLoader(tmpl_path)) util.register_jinja2_filters(jenv) src = meta['_src'] meta['command'] = src cmd = jenv.get_template('command.template').render(meta) print(cmd)
import uuid import yaml from path import Path from jinja2 import Environment from kea2 import render from kea2.log import get_logger from kea2.util import run_hook, register_hook, get_recursive_dict from kea2 import util lg = get_logger('k2', 'warning') JENV = Environment() util.register_jinja2_filters(JENV) RE_PARFIND = re.compile('(?<!\{)\{\s*\*\s*([A-Za-z_]\w*)?\s*\}(?!\})') def _get_base_argsparse(add_template=True): parser = argparse.ArgumentParser() parser.add_argument('-x', '--executor', default='simple') parser.add_argument('-v', '--verbose', action='count', default=0) parser.add_argument('-q', '--quiet', action='count', default=0) parser.add_argument('-X', '--execute', action='store_const', help='run immediately', const='run', dest='execute') parser.add_argument('-N', '--do-not-execute', action='store_const', help='do not run', const='notrun', dest='execute') #register shortcuts to executors