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)
|
||||
|
||||
@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()
|
||||
def get_jsite_server(instance_id=None, name=None):
|
||||
"""获取Jsite Server记录"""
|
||||
@ -1919,4 +1883,40 @@ def get_jingrow_firewall_rules(**data):
|
||||
}
|
||||
|
||||
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