feat: 优化重启更新逻辑

先安装依赖,再替换文件,防止依赖安装失败导致无法正常启动
This commit is contained in:
DDSRem 2023-08-27 12:36:48 +08:00
parent 6206c5f4a3
commit bb67e902c5

30
update
View File

@ -25,26 +25,26 @@ if [[ "${old_version}" == *APP_VERSION* ]]; then
curl ${CURL_OPTIONS} "https://github.com/jxxghp/MoviePilot/archive/refs/tags/${release_version}.zip" | busybox unzip -d /tmp - curl ${CURL_OPTIONS} "https://github.com/jxxghp/MoviePilot/archive/refs/tags/${release_version}.zip" | busybox unzip -d /tmp -
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
echo "后端程序下载成功" echo "后端程序下载成功"
# 检查前端最新版本 # 重新安装依赖
frontend_version=$(curl ${CURL_OPTIONS} "https://api.github.com/repos/jxxghp/MoviePilot-Frontend/releases/latest" | jq -r .tag_name) pip install ${PIP_OPTIONS} /tmp/MoviePilot*/requirements.txt
echo "正在下载前端程序 ${frontend_version}..."
curl ${CURL_OPTIONS} "https://github.com/jxxghp/MoviePilot-Frontend/releases/download/${frontend_version}/dist.zip" | busybox unzip -d /tmp -
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
echo "前端程序下载成功" echo "安装依赖成功"
rm -rf /app # 检查前端最新版本
mv /tmp/MoviePilot* /app frontend_version=$(curl ${CURL_OPTIONS} "https://api.github.com/repos/jxxghp/MoviePilot-Frontend/releases/latest" | jq -r .tag_name)
rm -rf /public echo "正在下载前端程序 ${frontend_version}..."
mv /tmp/dist /public curl ${CURL_OPTIONS} "https://github.com/jxxghp/MoviePilot-Frontend/releases/download/${frontend_version}/dist.zip" | busybox unzip -d /tmp -
# 重新安装依赖
pip install ${PIP_OPTIONS} /app/requirements.txt
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
echo "安装依赖成功" echo "前端程序下载成功"
echo "程序更新成功,前端版本:${frontend_version},后端版本:${release_version}" rm -rf /app
mv /tmp/MoviePilot* /app
rm -rf /public
mv /tmp/dist /public
else else
echo "安装依赖失败,请重新拉取镜像" echo "前端程序下载失败,继续使用旧的程序来启动..."
fi fi
echo "程序更新成功,前端版本:${frontend_version},后端版本:${release_version}"
else else
echo "前端程序下载失败,继续使用旧的程序来启动..." echo "安装依赖失败,请重新拉取镜像"
fi fi
else else
echo "后端程序下载失败,继续使用旧的程序来启动..." echo "后端程序下载失败,继续使用旧的程序来启动..."