From c0b3f7a84a127f21f9157eaee3bbe6f82bdeaf4c Mon Sep 17 00:00:00 2001 From: hu xiaotong <416314413@163.com> Date: Tue, 8 Jul 2025 12:28:34 +0800 Subject: [PATCH] =?UTF-8?q?ci:=20=E6=B7=BB=E5=8A=A0=20Epic=20UI=20?= =?UTF-8?q?=E6=9E=84=E5=BB=BA=E5=92=8C=E9=83=A8=E7=BD=B2=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增 CI/CD 工作流文件,实现前端项目的自动构建和部署 - 支持 main、master 和 develop 分支的自动构建- 包含代码检出、环境安装、依赖管理、项目构建等步骤 - 实现构建产物的自动部署和 Docker 容器重启 --- .gitea/workflows/ci.yaml | 35 +++++++++++------------------------ 1 file changed, 11 insertions(+), 24 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 614b291..38e61f9 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -73,7 +73,7 @@ jobs: # 检查缓存的pnpm PNPM_CACHE_DIR="/opt/hostedtoolcache/pnpm-bin" - if [ -f "$PNPM_CACHE_DIR/pnpm" ]; then + if [ -d "$PNPM_CACHE_DIR" ] && [ -f "$PNPM_CACHE_DIR/pnpm" ]; then echo "✅ 找到缓存的pnpm: $PNPM_CACHE_DIR/pnpm" # 将缓存的pnpm添加到PATH export PATH="$PNPM_CACHE_DIR:$PATH" @@ -82,16 +82,7 @@ jobs: echo "📥 未找到缓存的pnpm,将重新安装..." # 直接安装pnpm到全局 npm install -g pnpm - # 复制pnpm到缓存目录 - mkdir -p "$PNPM_CACHE_DIR" - PNPM_PATH=$(which pnpm) - if [ -n "$PNPM_PATH" ] && [ -f "$PNPM_PATH" ]; then - cp "$PNPM_PATH" "$PNPM_CACHE_DIR/" - echo "✅ pnpm安装完成并已缓存: $(pnpm --version)" - else - echo "❌ pnpm安装失败" - exit 1 - fi + echo "✅ pnpm安装完成: $(pnpm --version)" fi - name: 配置pnpm缓存 @@ -214,24 +205,20 @@ jobs: echo "💾 保存pnpm缓存..." export PATH=$PATH:/usr/local/bin - # 设置pnpm路径 + # 保存pnpm完整安装目录 PNPM_CACHE_DIR="/opt/hostedtoolcache/pnpm-bin" - if [ -f "$PNPM_CACHE_DIR/pnpm" ]; then - export PATH="$PNPM_CACHE_DIR:$PATH" - fi - - # 保存pnpm二进制文件 - PNPM_BIN_DIR="/opt/hostedtoolcache/pnpm-bin" - if [ -f "$PNPM_BIN_DIR/pnpm" ]; then - echo "✅ pnpm二进制文件已缓存" + if [ -d "$PNPM_CACHE_DIR" ]; then + echo "✅ pnpm已缓存" else echo "📥 复制pnpm到缓存目录..." - mkdir -p "$PNPM_BIN_DIR" - # 找到pnpm的位置并复制 + # 找到pnpm的安装目录 PNPM_PATH=$(which pnpm 2>/dev/null || echo "") if [ -n "$PNPM_PATH" ] && [ -f "$PNPM_PATH" ]; then - cp "$PNPM_PATH" "$PNPM_BIN_DIR/" - echo "✅ pnpm已保存到缓存: $PNPM_BIN_DIR/pnpm" + # 获取pnpm的安装目录 + PNPM_DIR=$(dirname "$PNPM_PATH") + # 复制整个目录 + cp -r "$PNPM_DIR" "$PNPM_CACHE_DIR" + echo "✅ pnpm已保存到缓存: $PNPM_CACHE_DIR" else echo "⚠️ 无法找到pnpm,跳过保存" fi