user_id = await get_user() if not user_id: return {"widgettype":"Error","options":{"title":"操作失败","message":'未登录',"cwidth":16,"cheight":9,"timeout":3}} data = { 'id': getID(), 'project_id': params_kw.get('project_id', ''), 'env_type': params_kw.get('env_type', ''), 'host': params_kw.get('host', ''), 'port': params_kw.get('port', ''), 'user': params_kw.get('user', ''), 'ssh_key_path': params_kw.get('ssh_key_path', ''), 'sudo_enabled': params_kw.get('sudo_enabled', ''), 'deploy_path': params_kw.get('deploy_path', ''), 'python_path': params_kw.get('python_path', ''), 'db_host': params_kw.get('db_host', ''), 'db_port': params_kw.get('db_port', ''), 'db_name': params_kw.get('db_name', ''), 'db_user': params_kw.get('db_user', ''), 'db_password': params_kw.get('db_password', ''), 'created_at': curDateString(), } try: async with get_sor_context(request._run_ns, 'pipeline') as sor: await sor.C('sd_deploy_envs', data) return {"widgettype":"Message","options":{"title":"创建成功","message":"ok","cwidth":16,"cheight":9,"timeout":3,"user_data": data} except Exception as e: return {"widgettype":"Error","options":{"title":"操作失败","message":str(e),"cwidth":16,"cheight":9,"timeout":3}}