优化部署脚本,添加严格模式和临时目录处理,确保目标目录清空后再移动文件
This commit is contained in:
@@ -1,20 +1,33 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 开启严格模式
|
||||
set -e
|
||||
|
||||
# 定义变量
|
||||
REPO_URL="https://git.sugarscat.cn/me/note"
|
||||
TARGET_DIR="/var/www/note"
|
||||
DIST_DIR=".vitepress/dist"
|
||||
TEMP_DIR=$(mktemp -d) # 生成临时目录
|
||||
|
||||
# 下载最新构建产物
|
||||
curl -L -o artifact.zip "$REPO_URL/-/jobs/artifacts/main/download?job=build"
|
||||
# 清理临时目录的函数(在脚本退出时执行)
|
||||
cleanup() {
|
||||
rm -rf "$TEMP_DIR"
|
||||
}
|
||||
trap cleanup EXIT
|
||||
|
||||
# 解压产物
|
||||
unzip artifact.zip -d artifact
|
||||
echo "开始下载最新构建产物..."
|
||||
curl -L -o "$TEMP_DIR/artifact.zip" "$REPO_URL/-/jobs/artifacts/main/download?job=build"
|
||||
|
||||
# 移动文件到目标目录
|
||||
sudo mv artifact/$DIST_DIR/* $TARGET_DIR
|
||||
echo "解压文件..."
|
||||
unzip -q "$TEMP_DIR/artifact.zip" -d "$TEMP_DIR"
|
||||
|
||||
# 清理文件
|
||||
rm -rf artifact.zip artifact
|
||||
# 确保目标目录存在
|
||||
sudo mkdir -p "$TARGET_DIR"
|
||||
|
||||
echo "操作完成!"
|
||||
echo "清空目标目录..."
|
||||
sudo rm -rf "$TARGET_DIR"/*
|
||||
|
||||
echo "移动文件到目标目录..."
|
||||
sudo mv "$TEMP_DIR/$DIST_DIR"/* "$TARGET_DIR"
|
||||
|
||||
echo "部署完成!"
|
||||
|
||||
Reference in New Issue
Block a user