From 42b5dd4178059e5c5717e9db2bac3f866ccc120f Mon Sep 17 00:00:00 2001 From: jxxghp Date: Thu, 24 Oct 2024 12:39:08 +0800 Subject: [PATCH] fix #2924 --- update | 48 +++++++++++++++++------------------------------- 1 file changed, 17 insertions(+), 31 deletions(-) diff --git a/update b/update index 2a3f7f3f..c6c087ab 100644 --- a/update +++ b/update @@ -50,6 +50,7 @@ function download_and_unzip() { function install_backend_and_download_resources() { # 清理临时目录,上次安装失败可能有残留 rm -rf /tmp/* + # 更新后端程序 if ! download_and_unzip "${GITHUB_PROXY}https://github.com/jxxghp/MoviePilot/archive/refs/${1}" "App"; then WARN "后端程序下载失败,继续使用旧的程序来启动..." return 1 @@ -71,66 +72,50 @@ function install_backend_and_download_resources() { WARN "前端最新版本号获取失败,继续启动..." return 1 fi + # 更新前端程序 if ! download_and_unzip "${GITHUB_PROXY}https://github.com/jxxghp/MoviePilot-Frontend/releases/download/${frontend_version}/dist.zip" "dist"; then WARN "前端程序下载失败,继续使用旧的程序来启动..." return 1 fi INFO "前端程序下载成功" - # 提前备份插件目录 + # 备份插件目录 INFO "备份插件目录中..." rm -rf /plugins mkdir -p /plugins cp -a /app/app/plugins/* /plugins/ - # 不备份__init__.py rm -f /plugins/__init__.py - # 提前备份旧 resources 资源 - INFO "备份 resources 资源中..." + # 备份站点资源 + INFO "备份站点资源目录中..." rm -rf /resources_bakcup mkdir /resources_bakcup - cp -a /app/app/helper/* /resources_bakcup - # 清空目录 + cp -a /app/app/helper/user.sites.bin /resources_bakcup + cp -a /app/app/helper/sites.cp* /resources_bakcup + # 清空程序目录 rm -rf /app mkdir -p /app - # 后端程序 + # 复制新后端程序 cp -a /tmp/App/* /app/ - # 前端程序 + # 复制新前端程序 rm -rf /public mkdir -p /public cp -a /tmp/dist/* /public/ - # 清理临时目录 - rm -rf /tmp/* INFO "程序部分更新成功,前端版本:${frontend_version},后端版本:${1}" - INFO "开始更新插件..." - if ! download_and_unzip "${GITHUB_PROXY}https://github.com/jxxghp/MoviePilot-Plugins/archive/refs/heads/main.zip" "Plugins"; then - cp -a /plugins.v2/* /app/app/plugins/ - rm -rf /plugins - WARN "插件下载失败,继续使用旧的插件来启动..." - return 1 - fi - INFO "插件下载成功" # 恢复插件目录 cp -a /plugins/* /app/app/plugins/ - # 插件仓库 - rsync -av --remove-source-files /tmp/Plugins/plugins/* /app/app/plugins/ > /dev/null - rsync -av --remove-source-files /tmp/Plugins/plugins.v2/* /app/app/plugins/ > /dev/null - # 提前安装插件依赖 - find /app/app/plugins -name requirements.txt -exec pip install --root-user-action=ignore ${PIP_OPTIONS} -r {} \; > /dev/null - # 清理临时目录 - rm -rf /tmp/* - INFO "插件更新成功" - INFO "开始更新资源包..." + # 更新站点资源 + INFO "开始更新站点资源..." if ! download_and_unzip "${GITHUB_PROXY}https://github.com/jxxghp/MoviePilot-Resources/archive/refs/heads/main.zip" "Resources"; then cp -a /resources_bakcup/* /app/app/helper/ rm -rf /resources_bakcup - WARN "资源包下载失败,继续使用旧的资源包来启动..." + WARN "站点资源下载失败,继续使用旧的资源来启动..." return 1 fi - INFO "资源包下载成功" - # 资源包 + INFO "站点资源下载成功" + # 复制新站点资源 cp -a /tmp/Resources/resources/* /app/app/helper/ + INFO "站点资源更新成功" # 清理临时目录 rm -rf /tmp/* - INFO "资源包更新成功" return 0 } @@ -165,6 +150,7 @@ function test_connectivity_pip() { esac } +# 测试Github连通性 function test_connectivity_github() { case "$1" in 0)