debug(f'{params_kw=},') async def gethostinfo(sor, ns): sql="""select a.* from hostdev a where a.id= ${id}$ and a.ownerid = ${ownerid}$ """ recs = await sor.sqlExe(sql,ns.copy()) if len(recs) > 0: r = recs[0] r.username = r.user if r.password: r.password = password_decode(r.password) if r.passphrase: r.passphrase = password_decode(r.passphrase) if r.jumperid: r.jumperservers = await gethostinfo(sor, {'id':r.jumperid}) return DictObject(**r) db = DBPools() userid = await get_user() dbname = get_module_dbname('msp') async with db.sqlorContext(dbname) as sor: ns = { "ownerid":userid, "id":params_kw.hostid } return await gethostinfo(sor, ns) return None