47 lines
1.2 KiB
YAML
47 lines
1.2 KiB
YAML
name: Build and Release
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- 'v*.*.*' # 仅在推送符合语义化版本的标签时触发
|
|
|
|
jobs:
|
|
build:
|
|
name: Build All Targets
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
# 检出代码
|
|
- name: Checkout code
|
|
uses: actions/checkout@v3
|
|
|
|
# 设置 JDK 环境
|
|
- name: Set up JDK
|
|
uses: actions/setup-java@v3
|
|
with:
|
|
distribution: 'zulu'
|
|
java-version: '17'
|
|
|
|
# 构建 Android APK
|
|
- name: Build Android APK
|
|
run: ./gradlew :androidApp:assembleRelease
|
|
|
|
# 构建 iOS Framework
|
|
- name: Build iOS Framework
|
|
run: ./gradlew :iosApp:build
|
|
|
|
# 构建 Desktop 可执行文件
|
|
- name: Build Desktop Executable
|
|
run: ./gradlew :desktopApp:packageRelease
|
|
|
|
# 上传构建产物到 GitHub Releases
|
|
- name: Upload Release Assets
|
|
uses: actions/upload-release-asset@v2
|
|
with:
|
|
name: ${{github.ref_name}}-build
|
|
path: |
|
|
androidApp/build/outputs/apk/release/*.apk
|
|
iosApp/build/bin/ios/*.framework
|
|
desktopApp/build/outputs/*.exe
|
|
label: "Build for ${{ github.ref_name }}"
|