Merge branch 'master' of git.kaiyuancloud.cn:yumoqing/ahserver
This commit is contained in:
commit
2d154db0f0
@ -76,7 +76,7 @@ class BaseProcessor:
|
|||||||
kw = await self.run_ns['request2ns']()
|
kw = await self.run_ns['request2ns']()
|
||||||
kw.update(params)
|
kw.update(params)
|
||||||
self.run_ns['params_kw'] = kw
|
self.run_ns['params_kw'] = kw
|
||||||
self.run_ns.update(kw)
|
# self.run_ns.update(kw)
|
||||||
self.run_ns['ref_real_path'] = self.real_path
|
self.run_ns['ref_real_path'] = self.real_path
|
||||||
self.run_ns['processor'] = self
|
self.run_ns['processor'] = self
|
||||||
self.env_set = True
|
self.env_set = True
|
||||||
|
@ -38,7 +38,12 @@ class XtermProcessor(PythonScriptProcessor):
|
|||||||
# it must return a DictObject with sshnode information
|
# it must return a DictObject with sshnode information
|
||||||
# parameters: nodeid
|
# parameters: nodeid
|
||||||
#
|
#
|
||||||
login_info = super().path_call(request, params=params)
|
await self.set_run_env(request, params=params)
|
||||||
|
login_info = await super().path_call(request, params=params)
|
||||||
|
if login_info is None:
|
||||||
|
raise f'data error'
|
||||||
|
|
||||||
|
debug(f'{login_info=}')
|
||||||
ws = web.WebSocketResponse()
|
ws = web.WebSocketResponse()
|
||||||
await ws.prepare(request)
|
await ws.prepare(request)
|
||||||
await self.create_process(login_info)
|
await self.create_process(login_info)
|
||||||
@ -49,21 +54,17 @@ class XtermProcessor(PythonScriptProcessor):
|
|||||||
self.retResponse = ws
|
self.retResponse = ws
|
||||||
return ws
|
return ws
|
||||||
|
|
||||||
async def get_login_info(self):
|
async def create_process(self, login_info):
|
||||||
async with aiofiles.open(self.real_path, 'r', encoding='utf-8') as f:
|
|
||||||
txt = await f.read()
|
|
||||||
self.login_info = json.loads(txt)
|
|
||||||
# print(f'{self.login_info=}')
|
|
||||||
|
|
||||||
async def create_process(self, lgoin_info):
|
|
||||||
# id = lenv['params_kw'].get('termid')
|
# id = lenv['params_kw'].get('termid')
|
||||||
host = login_info['host']
|
host = login_info['host']
|
||||||
port = login_info.get('port', 22)
|
port = login_info.get('port', 22)
|
||||||
username = login_info.get('username', 'root')
|
username = login_info.get('username', 'root')
|
||||||
password = login_info.get('password',None)
|
password = login_info.get('password',None)
|
||||||
|
jumpers = login_info.get('jumpers', [])
|
||||||
self.sshnode = SSHNode(host, username=username,
|
self.sshnode = SSHNode(host, username=username,
|
||||||
password=password,
|
password=password,
|
||||||
port=port)
|
port=port,
|
||||||
|
jumpers=jumpers)
|
||||||
await self.sshnode.connect()
|
await self.sshnode.connect()
|
||||||
self.p_obj = await self.sshnode._process('bash',
|
self.p_obj = await self.sshnode._process('bash',
|
||||||
term_type='vt100',
|
term_type='vt100',
|
||||||
|
Loading…
Reference in New Issue
Block a user