chore: release v2.0.0. #12
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 可选,将显示在 GitHub 存储库的“操作”选项卡中的工作流名称 | |
name: Release CI | |
# 指定此工作流的触发器 | |
on: | |
push: | |
branches: | |
- release | |
# 需要运行的作业组合 | |
jobs: | |
# 任务:创建 release 版本 | |
create-release: | |
runs-on: ubuntu-latest | |
outputs: | |
RELEASE_UPLOAD_ID: ${{ steps.create_release.outputs.id }} | |
steps: | |
- uses: actions/checkout@v2 | |
# 创建 release | |
- name: Create Release | |
id: create_release | |
uses: actions/create-release@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
tag_name: 'v2.0.0' | |
release_name: 'Nemassler v2.0.0' | |
body: 'Released by GitHub Actions.' | |
# 编译 Tauri | |
build-tauri: | |
needs: create-release | |
strategy: | |
fail-fast: false | |
matrix: | |
platform: [macos-latest, ubuntu-latest, windows-latest] | |
runs-on: ${{ matrix.platform }} | |
steps: | |
- uses: actions/checkout@v2 | |
# 安装 Node.js | |
- name: Setup node | |
uses: actions/setup-node@v2 | |
with: | |
node-version: 19 | |
# 安装 Rust | |
- name: Install Rust stable | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
# 使用 Rust 缓存,加快安装速度 | |
- uses: Swatinem/rust-cache@v1 | |
- name: install dependencies (ubuntu only) | |
if: matrix.platform == 'ubuntu-latest' | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf | |
# 安装pnpm | |
- name: Install pnpm | |
run: npm install -g pnpm # 安装全局的pnpm | |
# 使用pnpm安装项目依赖 | |
- name: Install pnpm dependencies | |
run: pnpm install | |
# 安装依赖执行构建,以及推送 github release | |
- name: Install app dependencies and build it | |
# package.json里面配置的编译命令 | |
run: | | |
if [[ '${{ matrix.platform }}' == 'macos-latest' ]]; then | |
# macOS x86_64的未来不再支持, GitHub Actions流水线已默认使用aarch64环境 | |
# 如有需要手动打包, universal通用app打包有问题 | |
pnpm tauri build --target aarch64-apple-darwin | |
else | |
# 在其他平台上执行构建命令 | |
pnpm tauri build | |
fi | |
- uses: tauri-apps/[email protected] | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
releaseId: ${{ needs.create-release.outputs.RELEASE_UPLOAD_ID }} |