refactor(run.sh): optimize build artifact cleanup
- clean_frontend_artifacts: add .vite/.cache/.tmp/*.tsbuildinfo cleanup - clean_embed_static: rm -rf + mkdir handles dotfiles (was rm static/*) - new clean_all_artifacts: unified cleanup for all deployment modes - docker up/build/clean now call clean_all_artifacts before building - .dockerignore: exclude .vite/*.tsbuildinfo/node cache dirs - add ./run.sh clean standalone command
This commit is contained in:
1 parent
7ed4ce8d3a
commit
da01cbb119
2 files changed
+29
-1
No files matched your search
@@ -306,13 +306,18 @@ cmd_logs() {
|
||||
clean_frontend_artifacts() {
|
||||
info "清理前端旧构建产物..."
|
||||
rm -rf "$SCRIPT_DIR/$FRONTEND_DIR/dist"
|
||||
rm -rf "$SCRIPT_DIR/$FRONTEND_DIR/.vite"
|
||||
rm -rf "$SCRIPT_DIR/$FRONTEND_DIR/node_modules/.vite"
|
||||
rm -rf "$SCRIPT_DIR/$FRONTEND_DIR/node_modules/.cache"
|
||||
rm -rf "$SCRIPT_DIR/$FRONTEND_DIR/node_modules/.tmp"
|
||||
find "$SCRIPT_DIR/$FRONTEND_DIR" -maxdepth 3 -name "*.tsbuildinfo" -delete 2>/dev/null || true
|
||||
}
|
||||
|
||||
clean_embed_static() {
|
||||
info "清理 embed static 旧文件..."
|
||||
# rm -rf + mkdir 确保 dotfiles 也被清除 // Logan.Li
|
||||
rm -rf "$SCRIPT_DIR/$BACKEND_DIR/static"
|
||||
mkdir -p "$SCRIPT_DIR/$BACKEND_DIR/static"
|
||||
find "$SCRIPT_DIR/$BACKEND_DIR/static" -mindepth 1 -delete 2>/dev/null || rm -rf "$SCRIPT_DIR/$BACKEND_DIR/static"/*
|
||||
}
|
||||
|
||||
clean_go_artifacts() {
|
||||
@@ -323,6 +328,14 @@ clean_go_artifacts() {
|
||||
rm -f "$SCRIPT_DIR/$BACKEND_DIR"/aiops-*
|
||||
}
|
||||
|
||||
# 全量清理(docker/build 前调用,确保零残留)// Logan.Li
|
||||
clean_all_artifacts() {
|
||||
clean_frontend_artifacts
|
||||
clean_embed_static
|
||||
clean_go_artifacts
|
||||
success "构建产物清理完成"
|
||||
}
|
||||
|
||||
# 构建前端并同步到 backend/static(二进制 / embed 镜像共用)// Logan.Li
|
||||
build_frontend_embed() {
|
||||
clean_frontend_artifacts
|
||||
@@ -744,6 +757,7 @@ cmd_docker() {
|
||||
case "$action" in
|
||||
up|upgrade|update)
|
||||
banner "========== Docker Compose 启动/升级 ($BUILD_VERSION) =========="
|
||||
clean_all_artifacts
|
||||
if [ "$fresh_build" -eq 1 ]; then
|
||||
info "全量重建镜像 (--no-cache)..."
|
||||
$DOCKER_COMPOSE build --no-cache
|
||||
@@ -774,6 +788,7 @@ cmd_docker() {
|
||||
;;
|
||||
build)
|
||||
info "构建 Docker 镜像..."
|
||||
clean_all_artifacts
|
||||
$DOCKER_COMPOSE build
|
||||
success "镜像构建完成"
|
||||
;;
|
||||
@@ -794,6 +809,7 @@ cmd_docker() {
|
||||
info "清理前磁盘使用:"
|
||||
echo " $(df -h / | awk 'NR==2{print $3, "used /", $2, "total ("$5")"}')"
|
||||
echo ""
|
||||
clean_all_artifacts
|
||||
info "清理 dangling 镜像..."
|
||||
docker image prune -f 2>/dev/null || true
|
||||
info "清理构建缓存..."
|
||||
@@ -1481,6 +1497,11 @@ main() {
|
||||
cmd_help
|
||||
;;
|
||||
|
||||
# 清理构建产物
|
||||
clean)
|
||||
clean_all_artifacts
|
||||
;;
|
||||
|
||||
*)
|
||||
error "未知命令: $cmd"
|
||||
cmd_help
|
||||
|
||||
Reference in new issue
Block a user