Exemplo n.º 1
0
def init(cfgfn=_cfgfn):
    config = cfg.new(cfgfn)

    log.init(config.get('sadm', 'log', fallback='error'))
    log.debug(version.string('sadm-devops'))
    log.debug("read config %s" % cfgfn)

    log.debug("bottle config %s" % _wappcfg)
    wapp.config.load_config(_wappcfg)

    tpldir = libdir.fpath('devops', 'wapp', 'tpl')
    log.debug("templates dir %s" % tpldir)
    bottle.TEMPLATE_PATH = [tpldir]

    rmplugins = [
        p.strip() for p in wapp.config.get('plugins.uninstall', '').split(' ')
    ]
    for p in rmplugins:
        if p != '':
            log.debug("plugin uninstall %s" % p)
            wapp.uninstall(p)

    log.debug('install auth plugins')
    wapp.install(AuthPlugin(config))

    errors.init(wapp)
    handlers.init(wapp)

    session.init(config)

    log.debug("loaded handlers %s" % [r.name for r in wapp.routes])
    return wapp
Exemplo n.º 2
0
def main(args):
    if len(args) != 1:
        print('ERROR: sadm-listen exec invalid args', file=sys.stderr)
        return 1
    taskfn = args[0]
    obj = None
    try:
        with open(taskfn, 'r') as fh:
            obj = json.load(fh)
    except Exception as err:
        log.error("%s" % err)
        return 2
    finally:
        path.unlink(taskfn)
    log.init(obj.get('sadm.log', 'warn'))
    log.debug(version.string('sadm-listen'))
    log.debug("task file %s" % taskfn)
    task = obj.get('task', None)
    if task is None:
        log.error('listen.exec task not set')
        return 3
    taskAction = obj.get('task.action', None)
    if taskAction is None:
        log.error("listen.exec task %s: no action" % task)
        return 4
    taskArgs = obj.get('task.args', None)
    if taskArgs is None:
        log.error("listen.exec task %s: no args" % task)
        return 5
    cliURL = obj.get('sadm.listen.url', 'http://127.0.0.1:3666')
    cli = ListenClient(cliURL)
    return cli.exec(task, taskAction, taskArgs)
Exemplo n.º 3
0
def new(prog, desc = ''):
	p = argparse.ArgumentParser(prog = prog, description = desc)
	p.add_argument('-V', '--version', help = 'show version and exit',
		action = 'version', version = version.string())
	p.add_argument('--debug', help = 'enable debug settings',
		action = 'store_true', default = False)
	p.add_argument('--log', help = "set log level (%s)" % log.defaultLevel(),
		default = log.defaultLevel(), choices = log.levels())
	p.add_argument('--env', help = 'env name (default)',
		metavar = 'name', default = 'default')
	p.add_argument('--profile', help = 'profile name (default)',
		metavar = 'name', default = 'default')
	return p
Exemplo n.º 4
0
def init(cfgfn = _cfgfn):
	global config

	wapp.config.load_config(_wappcfg)
	bottle.TEMPLATE_PATH = []

	config = _newConfig(cfgfn)
	log.init(config.get('sadm', 'log', fallback = 'error'))
	log.debug(version.string('sadm-listen'))
	log.debug("read config %s" % cfgfn)

	rmplugins = [p.strip() for p in wapp.config.get('plugins.uninstall', '').split(' ')]
	for p in rmplugins:
		if p != '':
			log.debug("plugin uninstall %s" % p)
			wapp.uninstall(p)

	errors.init(wapp)
	handlers.init(wapp, config)

	log.debug("loaded handlers %s" % [r.name for r in wapp.routes])
	return wapp
Exemplo n.º 5
0
def test_string():
    s = "version %s (build %s)" % (_version, _version_build)
    assert version.string() == '%(prog)s ' + s
Exemplo n.º 6
0
 def __init__(self, name, data):
     self.name = name
     self.data = data
     self.data.update({'sadm': {
         'version': version.string('sadm'),
     }})