This commit is contained in:
@@ -1,70 +1,22 @@
|
||||
name: Uniapp 自动化打包 CI/CD
|
||||
|
||||
# 触发条件:可根据需求调整(如 push 到 main 分支、打 tag 时触发)
|
||||
run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀
|
||||
on:
|
||||
push:
|
||||
branches: [ prod ] # 分支触发
|
||||
# tag:
|
||||
# - 'v*' # 版本 tag 触发(可选)
|
||||
|
||||
# 运行环境
|
||||
branches:
|
||||
- prod
|
||||
jobs:
|
||||
build:
|
||||
name: 打包 Uniapp 项目
|
||||
runs-on: x64 # 云 Runner 环境(自建 Runner 可替换为自定义名称)
|
||||
Explore-Gitea-Actions:
|
||||
runs-on: ubuntu
|
||||
steps:
|
||||
- name: 验证 Node.js 环境
|
||||
run: |
|
||||
echo "Node 版本: $(node -v)"
|
||||
echo "npm 版本: $(npm -v)"
|
||||
echo "当前 PATH: $PATH" # 检查 Node 路径是否在 PATH 中
|
||||
- name: 拉取代码仓库
|
||||
uses: http://git.missmoc.top/mocheng/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0 # 只拉取最新的1个提交(浅克隆)
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: http://git.missmoc.top/mocheng/setup-node@v3
|
||||
with:
|
||||
node-version: 20.x
|
||||
|
||||
########################################################################
|
||||
# 步骤 2:安装 Node.js 环境(Uniapp 依赖 Node 处理项目依赖)
|
||||
########################################################################
|
||||
# - name: 2. 安装 Node.js
|
||||
# uses: actions/setup-node@v4
|
||||
# with:
|
||||
# node-version: '18.x' # 推荐 16.x+,适配 Uniapp 依赖
|
||||
# cache: 'npm' # 缓存 npm 依赖,加速后续构建
|
||||
|
||||
########################################################################
|
||||
# 步骤 3:安装 Uniapp 项目依赖
|
||||
########################################################################
|
||||
# - name: 3. 安装项目依赖
|
||||
# run: |
|
||||
# echo "开始安装项目依赖..."
|
||||
# npm install --registry=https://registry.npmmirror.com # 国内源加速(可选)
|
||||
# echo "项目依赖安装完成"
|
||||
|
||||
########################################################################
|
||||
# 步骤 4:下载并部署 HBuilderX CLI(若 Runner 未预装)
|
||||
########################################################################
|
||||
# - name: 4. 部署 HBuilderX CLI 到 /hbuildcli/HBuilderX
|
||||
# run: |
|
||||
# # 创建 CLI 目标目录
|
||||
# # sudo mkdir -p /hbuildcli/HBuilderX
|
||||
# # 下载 HBuilderX Linux 完整版(版本 ≥3.1.5,可替换为最新版)
|
||||
# # wget -O hbuilderx.zip https://download1.dcloud.net.cn/download/HBuilderX.4.0.14.20240528.full.zip
|
||||
# # 解压到目标目录
|
||||
# # unzip -q hbuilderx.zip -d /hbuildcli/HBuilderX
|
||||
# # 赋予 CLI 执行权限
|
||||
# sudo chmod +x /hbuildcli/HBuilderX/cli
|
||||
# # 验证 CLI 版本(确保部署成功)
|
||||
# /hbuildcli/HBuilderX/cli -v
|
||||
# echo "HBuilderX CLI 部署完成,路径:/hbuildcli/HBuilderX/cli"
|
||||
|
||||
########################################################################
|
||||
# 步骤 5:HBuilderX 密钥登录(安全读取账户信息)
|
||||
########################################################################
|
||||
- name: 5. HBuilderX 账户登录
|
||||
id: hbx_login
|
||||
run: |
|
||||
@@ -79,10 +31,6 @@ jobs:
|
||||
exit 1 # 登录失败则终止 CI/CD 流程
|
||||
fi
|
||||
echo "HBuilderX 登录成功!"
|
||||
|
||||
########################################################################
|
||||
# 步骤 6:实时显示打包进度 + 执行 Uniapp 打包
|
||||
########################################################################
|
||||
- name: 6. 打包 Uniapp(实时显示排队/进度)
|
||||
id: uniapp_build
|
||||
run: |
|
||||
@@ -112,9 +60,6 @@ jobs:
|
||||
echo "========================================"
|
||||
echo "Uniapp 打包完成!产物路径:./unpackage/dist/build/android"
|
||||
|
||||
########################################################################
|
||||
# 步骤 7:归档打包产物(便于下载和后续部署)
|
||||
########################################################################
|
||||
- name: 7. 归档打包产物
|
||||
uses: https://gitea.com/actions/upload-artifact@v1 # Gitea 产物归档插件
|
||||
with:
|
||||
@@ -122,9 +67,6 @@ jobs:
|
||||
path: ./unpackage/dist/build/android # 产物目录(与步骤 6 的 --output 对应)
|
||||
retention-days: 7 # 产物保留时间(7 天,可调整)
|
||||
|
||||
########################################################################
|
||||
# 后置步骤:无论打包成功/失败,均执行 HBuilderX 登出(安全规范)
|
||||
########################################################################
|
||||
post:
|
||||
- name: 8. HBuilderX 账户登出
|
||||
run: |
|
Reference in New Issue
Block a user