ci: 添加 Epic UI 构建和部署工作流
- 新增 CI/CD 工作流文件,实现前端项目的自动构建和部署 - 支持 main、master 和 develop 分支的自动构建- 包含代码检出、环境安装、依赖管理、项目构建等步骤 - 实现构建产物的自动部署和 Docker 容器重启
This commit is contained in:
@@ -100,12 +100,18 @@ jobs:
|
|||||||
echo "📦 配置pnpm缓存..."
|
echo "📦 配置pnpm缓存..."
|
||||||
export PATH=$PATH:/usr/local/bin
|
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缓存目录
|
||||||
PNPM_CACHE_DIR="/opt/hostedtoolcache/pnpm-store"
|
PNPM_STORE_DIR="/opt/hostedtoolcache/pnpm-store"
|
||||||
mkdir -p "$PNPM_CACHE_DIR"
|
mkdir -p "$PNPM_STORE_DIR"
|
||||||
|
|
||||||
# 设置pnpm使用缓存目录
|
# 设置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"
|
pnpm config set cache-dir "/opt/hostedtoolcache/pnpm-cache"
|
||||||
|
|
||||||
echo "✅ pnpm缓存配置完成"
|
echo "✅ pnpm缓存配置完成"
|
||||||
@@ -116,6 +122,12 @@ jobs:
|
|||||||
echo "📦 检查并恢复依赖缓存..."
|
echo "📦 检查并恢复依赖缓存..."
|
||||||
export PATH=$PATH:/usr/local/bin
|
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)
|
CACHE_KEY=$(md5sum pnpm-lock.yaml | cut -d' ' -f1)
|
||||||
echo "缓存键: $CACHE_KEY"
|
echo "缓存键: $CACHE_KEY"
|
||||||
@@ -147,6 +159,12 @@ jobs:
|
|||||||
echo "📦 安装项目依赖..."
|
echo "📦 安装项目依赖..."
|
||||||
export PATH=$PATH:/usr/local/bin
|
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
|
# 检查是否已有node_modules
|
||||||
if [ -d "node_modules" ] && [ -f "node_modules/.pnpm-debug.log" ]; then
|
if [ -d "node_modules" ] && [ -f "node_modules/.pnpm-debug.log" ]; then
|
||||||
echo "✅ 检测到已存在的依赖,跳过安装"
|
echo "✅ 检测到已存在的依赖,跳过安装"
|
||||||
@@ -162,6 +180,12 @@ jobs:
|
|||||||
echo "💾 保存依赖缓存..."
|
echo "💾 保存依赖缓存..."
|
||||||
export PATH=$PATH:/usr/local/bin
|
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)
|
CACHE_KEY=$(md5sum pnpm-lock.yaml | cut -d' ' -f1)
|
||||||
echo "缓存键: $CACHE_KEY"
|
echo "缓存键: $CACHE_KEY"
|
||||||
@@ -190,6 +214,12 @@ jobs:
|
|||||||
echo "💾 保存pnpm缓存..."
|
echo "💾 保存pnpm缓存..."
|
||||||
export PATH=$PATH:/usr/local/bin
|
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二进制文件
|
||||||
PNPM_BIN_DIR="/opt/hostedtoolcache/pnpm-bin"
|
PNPM_BIN_DIR="/opt/hostedtoolcache/pnpm-bin"
|
||||||
if [ -f "$PNPM_BIN_DIR/pnpm" ]; then
|
if [ -f "$PNPM_BIN_DIR/pnpm" ]; then
|
||||||
@@ -213,6 +243,12 @@ jobs:
|
|||||||
echo "🔨 构建 Epic UI 前端项目..."
|
echo "🔨 构建 Epic UI 前端项目..."
|
||||||
export PATH=$PATH:/usr/local/bin
|
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
|
pnpm build
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user