Files
codex-register/.github/workflows/build.yml
cnlimiter 235c60df25 build(workflow): 更新构建配置和文件整理逻辑
- 为所有平台的发布资产名称添加版本标识符 v2
- 修改文件整理脚本以适配 download-artifact@v4 的目录结构变化
- 更新发布说明中的项目标题为"OpenAI 账号管理系统 v2"
- 在 Docker 构建中添加 linux/amd64,linux/arm64 多平台支持
- 从地区限制列表中移除台湾地区(TW)
2026-03-26 00:30:37 +08:00

132 lines
3.7 KiB
YAML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
name: 多平台打包发布
on:
push:
tags:
- 'v*'
workflow_dispatch:
inputs:
version:
description: '版本号 (如 v1.0.0)'
required: false
default: 'dev'
jobs:
build:
name: 打包 ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- os: windows-latest
artifact_name: codex-register.exe
asset_name: codex-register-v2-windows-x64.exe
- os: ubuntu-latest
artifact_name: codex-register
asset_name: codex-register-v2-linux-x64
- os: macos-latest
artifact_name: codex-register
asset_name: codex-register-v2-macos-arm64
steps:
- name: 检出代码
uses: actions/checkout@v4
- name: 设置 Python 3.11
uses: actions/setup-python@v5
with:
python-version: '3.11'
cache: 'pip'
- name: 安装依赖
run: |
pip install -r requirements.txt pyinstaller
- name: 打包
run: |
pyinstaller codex_register.spec --clean --noconfirm
- name: 上传构建产物
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.asset_name }}
path: dist/${{ matrix.artifact_name }}
if-no-files-found: error
release:
name: 创建发布
needs: build
runs-on: ubuntu-latest
if: startsWith(github.ref, 'refs/tags/')
permissions:
contents: write
steps:
- name: 检出代码(获取附加文件)
uses: actions/checkout@v4
- name: 下载所有构建产物
uses: actions/download-artifact@v4
with:
path: dist/
- name: 整理文件并打包 zip
run: |
mkdir -p release
# download-artifact@v4 将每个 artifact 放在 dist/<asset_name>/ 子目录下
# 遍历子目录,用目录名作为平台标识(即 matrix.asset_name
for artifact_dir in dist/*/; do
platform=$(basename "$artifact_dir")
# 找到该目录下的二进制文件(只有一个)
binary=$(find "$artifact_dir" -maxdepth 1 -type f | head -n1)
if [ -z "$binary" ]; then
echo "警告:$artifact_dir 下没有找到文件,跳过"
continue
fi
tmpdir="tmp_${platform}"
mkdir -p "$tmpdir"
cp "$binary" "$tmpdir/"
cp README.md "$tmpdir/README.md"
cp .env.example "$tmpdir/.env.example"
[ -f LICENSE ] && cp LICENSE "$tmpdir/LICENSE" || true
cd "$tmpdir"
zip -r "../release/${platform}.zip" .
cd ..
rm -rf "$tmpdir"
done
ls -lh release/
- name: 创建 GitHub Release
uses: softprops/action-gh-release@v2
with:
files: release/*
generate_release_notes: true
body: |
## OpenAI 账号管理系统 v2
### 下载说明
| 平台 | 文件 |
|------|------|
| Windows x64 | `codex-register-v2-windows-x64.exe` |
| Linux x64 | `codex-register-v2-linux-x64` |
| macOS ARM64 | `codex-register-v2-macos-arm64` |
### 使用方法
```bash
# Linux/macOS 需要先赋予执行权限
chmod +x codex-register-*
# 启动 Web UI
./codex-register
# 指定端口
./codex-register --port 8080
# 调试模式(热重载)
./codex-register --debug
# 设置 Web UI 访问密钥
./codex-register --access-password mypassword
```