From fc10d15a781bf746db926ca832c75c8c14a6d6ae Mon Sep 17 00:00:00 2001 From: hu xiaotong <416314413@163.com> Date: Tue, 8 Jul 2025 12:27:09 +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 | 42 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 39 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 8fdd616..614b291 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -100,12 +100,18 @@ jobs: echo "📦 配置pnpm缓存..." export PATH=$PATH:/usr/local/bin + # 设置pnpm路径 + PNPM_CACHE_DIR="/opt/hostedtoolcache/pnpm-bin" + if [ -f "$PNPM_CACHE_DIR/pnpm" ]; then + export PATH="$PNPM_CACHE_DIR:$PATH" + fi + # 配置pnpm缓存目录 - PNPM_CACHE_DIR="/opt/hostedtoolcache/pnpm-store" - mkdir -p "$PNPM_CACHE_DIR" + PNPM_STORE_DIR="/opt/hostedtoolcache/pnpm-store" + mkdir -p "$PNPM_STORE_DIR" # 设置pnpm使用缓存目录 - pnpm config set store-dir "$PNPM_CACHE_DIR" + pnpm config set store-dir "$PNPM_STORE_DIR" pnpm config set cache-dir "/opt/hostedtoolcache/pnpm-cache" echo "✅ pnpm缓存配置完成" @@ -116,6 +122,12 @@ jobs: echo "📦 检查并恢复依赖缓存..." export PATH=$PATH:/usr/local/bin + # 设置pnpm路径 + PNPM_CACHE_DIR="/opt/hostedtoolcache/pnpm-bin" + if [ -f "$PNPM_CACHE_DIR/pnpm" ]; then + export PATH="$PNPM_CACHE_DIR:$PATH" + fi + # 生成缓存键 CACHE_KEY=$(md5sum pnpm-lock.yaml | cut -d' ' -f1) echo "缓存键: $CACHE_KEY" @@ -147,6 +159,12 @@ jobs: echo "📦 安装项目依赖..." export PATH=$PATH:/usr/local/bin + # 设置pnpm路径 + PNPM_CACHE_DIR="/opt/hostedtoolcache/pnpm-bin" + if [ -f "$PNPM_CACHE_DIR/pnpm" ]; then + export PATH="$PNPM_CACHE_DIR:$PATH" + fi + # 检查是否已有node_modules if [ -d "node_modules" ] && [ -f "node_modules/.pnpm-debug.log" ]; then echo "✅ 检测到已存在的依赖,跳过安装" @@ -162,6 +180,12 @@ jobs: echo "💾 保存依赖缓存..." export PATH=$PATH:/usr/local/bin + # 设置pnpm路径 + PNPM_CACHE_DIR="/opt/hostedtoolcache/pnpm-bin" + if [ -f "$PNPM_CACHE_DIR/pnpm" ]; then + export PATH="$PNPM_CACHE_DIR:$PATH" + fi + # 生成缓存键 CACHE_KEY=$(md5sum pnpm-lock.yaml | cut -d' ' -f1) echo "缓存键: $CACHE_KEY" @@ -190,6 +214,12 @@ jobs: echo "💾 保存pnpm缓存..." export PATH=$PATH:/usr/local/bin + # 设置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 @@ -213,6 +243,12 @@ jobs: echo "🔨 构建 Epic UI 前端项目..." export PATH=$PATH:/usr/local/bin + # 设置pnpm路径 + PNPM_CACHE_DIR="/opt/hostedtoolcache/pnpm-bin" + if [ -f "$PNPM_CACHE_DIR/pnpm" ]; then + export PATH="$PNPM_CACHE_DIR:$PATH" + fi + # 执行构建 pnpm build