Simplify deploy_evalscope.sh: remove old evalstone/ migration
- No need to keep compatibility with the old evalstone/ subdirectory layout. - Now simply removes everything except datasets/ and docker/, then clones the code directly into root.
This commit is contained in:
parent
279a83051d
commit
0a3b880da3
@ -185,73 +185,42 @@ fi
|
|||||||
# --------------------------------------------------
|
# --------------------------------------------------
|
||||||
# 8. 克隆代码仓库到根目录
|
# 8. 克隆代码仓库到根目录
|
||||||
# --------------------------------------------------
|
# --------------------------------------------------
|
||||||
echo "==> 克隆/更新 evalscope 代码..."
|
echo "==> 克隆 evalscope 代码..."
|
||||||
|
|
||||||
clone_or_update_code() {
|
|
||||||
local repo_url="https://git.meta-stone.net/sora/evalstone.git"
|
|
||||||
|
|
||||||
# 1) 如果根目录已经有代码,直接跳过(可手动 git pull 更新)
|
|
||||||
if [ -f "$EVALSCOPE_DIR/bash/run.py" ]; then
|
if [ -f "$EVALSCOPE_DIR/bash/run.py" ]; then
|
||||||
echo "代码已存在于 $EVALSCOPE_DIR,跳过克隆"
|
echo "代码已存在于 $EVALSCOPE_DIR,跳过克隆"
|
||||||
return 0
|
else
|
||||||
fi
|
|
||||||
|
|
||||||
# 2) 兼容旧版:如果发现 evalstone/ 子目录,把里面的代码内容提到根目录
|
|
||||||
if [ -d "$EVALSCOPE_DIR/evalstone" ] && [ -f "$EVALSCOPE_DIR/evalstone/bash/run.py" ]; then
|
|
||||||
echo "发现旧版 evalstone/ 子目录,迁移代码到根目录..."
|
|
||||||
local tmp_dir="$EVALSCOPE_DIR/.evalstone_tmp_$(date +%s)"
|
|
||||||
mv "$EVALSCOPE_DIR/evalstone" "$tmp_dir"
|
|
||||||
for item in "$tmp_dir"/* "$tmp_dir"/.[!.]* "$tmp_dir"/..?*; do
|
|
||||||
[ -e "$item" ] || continue
|
|
||||||
local basename_item
|
|
||||||
basename_item=$(basename "$item")
|
|
||||||
# datasets/ 和 docker/ 可能已经存在,跳过同名覆盖
|
|
||||||
if [ "$basename_item" = "datasets" ] || [ "$basename_item" = "docker" ]; then
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
mv "$item" "$EVALSCOPE_DIR/$basename_item"
|
|
||||||
done
|
|
||||||
rm -rf "$tmp_dir"
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
# 3) 全新部署:目录可能非空(已有 datasets/ docker/),先临时移出再克隆
|
|
||||||
echo "正在克隆代码到 $EVALSCOPE_DIR ..."
|
echo "正在克隆代码到 $EVALSCOPE_DIR ..."
|
||||||
local tmp_backup="$BASE_DIR/.evalscope_deploy_backup_$(date +%s)"
|
tmp_backup="$BASE_DIR/.evalscope_deploy_backup_$(date +%s)"
|
||||||
mkdir -p "$tmp_backup"
|
mkdir -p "$tmp_backup"
|
||||||
|
|
||||||
|
# 保留已有的 datasets/ 和 docker/,其余清空后克隆
|
||||||
for item in "$EVALSCOPE_DIR"/* "$EVALSCOPE_DIR"/.[!.]* "$EVALSCOPE_DIR"/..?*; do
|
for item in "$EVALSCOPE_DIR"/* "$EVALSCOPE_DIR"/.[!.]* "$EVALSCOPE_DIR"/..?*; do
|
||||||
[ -e "$item" ] || continue
|
[ -e "$item" ] || continue
|
||||||
local basename_item
|
|
||||||
basename_item=$(basename "$item")
|
basename_item=$(basename "$item")
|
||||||
case "$basename_item" in
|
case "$basename_item" in
|
||||||
.|..|.git) continue ;;
|
.|..|.git) continue ;;
|
||||||
datasets|docker)
|
datasets|docker)
|
||||||
mv "$item" "$tmp_backup/$basename_item" ;;
|
mv "$item" "$tmp_backup/$basename_item" ;;
|
||||||
*)
|
*)
|
||||||
# 其他内容一并移走,避免 git clone 因非空目录失败
|
rm -rf "$item" ;;
|
||||||
mv "$item" "$tmp_backup/$basename_item" ;;
|
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
git clone "$repo_url" "$EVALSCOPE_DIR"
|
git clone "https://git.meta-stone.net/sora/evalstone.git" "$EVALSCOPE_DIR"
|
||||||
|
|
||||||
# 把 datasets/ docker/ 等移回来
|
# 恢复 datasets/ docker/
|
||||||
for item in "$tmp_backup"/* "$tmp_backup"/.[!.]* "$tmp_backup"/..?*; do
|
for item in "$tmp_backup"/* "$tmp_backup"/.[!.]* "$tmp_backup"/..?*; do
|
||||||
[ -e "$item" ] || continue
|
[ -e "$item" ] || continue
|
||||||
local basename_item
|
|
||||||
basename_item=$(basename "$item")
|
basename_item=$(basename "$item")
|
||||||
[ "$basename_item" = "." ] || [ "$basename_item" = ".." ] && continue
|
[ "$basename_item" = "." ] || [ "$basename_item" = ".." ] && continue
|
||||||
# 如果目标已存在(比如代码仓库里也有 docker/),保留已有内容
|
|
||||||
if [ -e "$EVALSCOPE_DIR/$basename_item" ]; then
|
if [ -e "$EVALSCOPE_DIR/$basename_item" ]; then
|
||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
mv "$item" "$EVALSCOPE_DIR/$basename_item"
|
mv "$item" "$EVALSCOPE_DIR/$basename_item"
|
||||||
done
|
done
|
||||||
rm -rf "$tmp_backup" 2>/dev/null || true
|
rm -rf "$tmp_backup" 2>/dev/null || true
|
||||||
}
|
fi
|
||||||
|
|
||||||
clone_or_update_code
|
|
||||||
|
|
||||||
# --------------------------------------------------
|
# --------------------------------------------------
|
||||||
# 9. 准备 sandbox 镜像
|
# 9. 准备 sandbox 镜像
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user