intall_jsite函数改名为execute_jsite_task
This commit is contained in:
parent
de5d51d203
commit
3bf7b65982
@ -1670,42 +1670,6 @@ def get_password(pagetype, name, fieldname):
|
|||||||
|
|
||||||
return jingrow.get_pg(pagetype, name).get_password(fieldname)
|
return jingrow.get_pg(pagetype, name).get_password(fieldname)
|
||||||
|
|
||||||
@jingrow.whitelist()
|
|
||||||
def install_jsite(instance_id, site_name, git_repo, site_url, revalidate_token, jingrow_server_url, jingrow_api_key, jingrow_api_secret, region_id='cn-shanghai'):
|
|
||||||
"""在实例上安装Jsite前端"""
|
|
||||||
try:
|
|
||||||
# 验证实例ID是否存在
|
|
||||||
server = jingrow.get_pg("Jsite Server", {"instance_id": instance_id})
|
|
||||||
if not server:
|
|
||||||
return {"success": False, "message": "找不到对应的服务器记录"}
|
|
||||||
|
|
||||||
# 如果未指定region_id,从服务器记录中获取
|
|
||||||
if not region_id:
|
|
||||||
region_id = server.region
|
|
||||||
|
|
||||||
# 构建命令内容
|
|
||||||
command_content = 'curl -s -o /tmp/install_jsite.sh https://cloud.jingrow.com//files/install_jsite.sh && chmod +x /tmp/install_jsite.sh && /tmp/install_jsite.sh --site-name {{site_name}} --git-repo {{git_repo}} --site-url {{site_url}} --revalidate-token {{revalidate_token}} --server-url {{jingrow_server_url}} --api-key {{jingrow_api_key}} --api-secret {{jingrow_api_secret}}'
|
|
||||||
|
|
||||||
# 构建参数
|
|
||||||
parameters = {
|
|
||||||
'site_name': site_name,
|
|
||||||
'git_repo': git_repo,
|
|
||||||
'site_url': site_url,
|
|
||||||
'revalidate_token': revalidate_token,
|
|
||||||
'jingrow_server_url': jingrow_server_url,
|
|
||||||
'jingrow_api_key': jingrow_api_key,
|
|
||||||
'jingrow_api_secret': jingrow_api_secret
|
|
||||||
}
|
|
||||||
|
|
||||||
manager = _get_manager()
|
|
||||||
result = manager.run_command(instance_id, command_content, parameters, 'installJsite', region_id, 3600)
|
|
||||||
|
|
||||||
return result
|
|
||||||
|
|
||||||
except Exception as e:
|
|
||||||
jingrow.log_error("安装Jsite失败", f"在实例 {instance_id} 上安装Jsite时发生错误: {str(e)}")
|
|
||||||
return {"success": False, "error": str(e), "message": "安装Jsite失败"}
|
|
||||||
|
|
||||||
@jingrow.whitelist()
|
@jingrow.whitelist()
|
||||||
def get_jsite_server(instance_id=None, name=None):
|
def get_jsite_server(instance_id=None, name=None):
|
||||||
"""获取Jsite Server记录"""
|
"""获取Jsite Server记录"""
|
||||||
@ -1920,3 +1884,39 @@ def get_jingrow_firewall_rules(**data):
|
|||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
return {"success": False, "message": f"防火墙规则查询失败: {str(e)}"}
|
return {"success": False, "message": f"防火墙规则查询失败: {str(e)}"}
|
||||||
|
|
||||||
|
@jingrow.whitelist()
|
||||||
|
def execute_jsite_task(instance_id, site_name, git_repo, site_url, revalidate_token, jingrow_server_url, jingrow_api_key, jingrow_api_secret, region_id='cn-shanghai'):
|
||||||
|
"""在实例上安装Jsite前端"""
|
||||||
|
try:
|
||||||
|
# 验证实例ID是否存在
|
||||||
|
server = jingrow.get_pg("Jsite Server", {"instance_id": instance_id})
|
||||||
|
if not server:
|
||||||
|
return {"success": False, "message": "找不到对应的服务器记录"}
|
||||||
|
|
||||||
|
# 如果未指定region_id,从服务器记录中获取
|
||||||
|
if not region_id:
|
||||||
|
region_id = server.region
|
||||||
|
|
||||||
|
# 构建命令内容
|
||||||
|
command_content = 'curl -s -o /tmp/execute_jsite_task.sh https://cloud.jingrow.com//files/execute_jsite_task.sh && chmod +x /tmp/execute_jsite_task.sh && /tmp/execute_jsite_task.sh --site-name {{site_name}} --git-repo {{git_repo}} --site-url {{site_url}} --revalidate-token {{revalidate_token}} --server-url {{jingrow_server_url}} --api-key {{jingrow_api_key}} --api-secret {{jingrow_api_secret}}'
|
||||||
|
|
||||||
|
# 构建参数
|
||||||
|
parameters = {
|
||||||
|
'site_name': site_name,
|
||||||
|
'git_repo': git_repo,
|
||||||
|
'site_url': site_url,
|
||||||
|
'revalidate_token': revalidate_token,
|
||||||
|
'jingrow_server_url': jingrow_server_url,
|
||||||
|
'jingrow_api_key': jingrow_api_key,
|
||||||
|
'jingrow_api_secret': jingrow_api_secret
|
||||||
|
}
|
||||||
|
|
||||||
|
manager = _get_manager()
|
||||||
|
result = manager.run_command(instance_id, command_content, parameters, 'installJsite', region_id, 3600)
|
||||||
|
|
||||||
|
return result
|
||||||
|
|
||||||
|
except Exception as e:
|
||||||
|
jingrow.log_error("安装Jsite失败", f"在实例 {instance_id} 上安装Jsite时发生错误: {str(e)}")
|
||||||
|
return {"success": False, "error": str(e), "message": "安装Jsite失败"}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user