Files
openclaw-manager/.github/workflows/release.yml
T

134 lines
4.4 KiB
YAML

name: Release
on:
push:
tags:
- 'v*'
workflow_dispatch:
permissions:
contents: write
jobs:
create-release:
runs-on: ubuntu-latest
outputs:
release_id: ${{ steps.create-release.outputs.id }}
release_upload_url: ${{ steps.create-release.outputs.upload_url }}
steps:
- uses: actions/checkout@v4
- name: Get version from tag
id: get_version
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
- name: Create Release
id: create-release
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ github.ref_name }}
name: OpenClaw Manager ${{ github.ref_name }}
body: |
## 🦞 OpenClaw Manager ${{ github.ref_name }}
### Downloads
| Platform | File |
|----------|------|
| **Windows** (installer) | `.msi` or `.exe` |
| **macOS** (Apple Silicon & Intel) | `.dmg` |
| **Linux** | `.deb` or `.AppImage` |
### What's New
- **Startup Speed Optimization:** Frontend elements now load concurrently. Replaced rigid blocking queries with lazy background loading, heavily reducing time-to-render.
- **React Lazy Chunking:** Split the frontend JS bundles. Heavy components (Settings, API tools) load entirely on demand, severely lightening the payload.
- **Concurrent Shell Environment Check:** Rust environment assertions (`node`, `git`, OpenClaw CLI) now evaluate in parallel async via `tokio`, cutting startup delay significantly.
- **Next-Gen 2026 AI Models:** Formally bumped and integrated the newest developer API endpoints matching the absolute latest models out right now: Anthropic (Claude Opus/Sonnet 4.6), OpenAI (GPT-5.4, o3-mini), Google (Gemini 3.1 Pro/Flash-Lite), DeepSeek, Qwen (3.5 Plus/Max), MiniMax (M2.5), and Venice AI (Llama 3.3 Default).
See the [full changelog](https://github.com/${{ github.repository }}/commits/${{ github.ref_name }}) for details.
draft: true
prerelease: false
build:
needs: create-release
strategy:
fail-fast: false
matrix:
include:
- platform: windows-latest
target: x86_64-pc-windows-msvc
label: Windows
- platform: macos-latest
target: aarch64-apple-darwin
label: macOS (Apple Silicon)
- platform: macos-latest
target: x86_64-apple-darwin
label: macOS (Intel)
- platform: ubuntu-22.04
target: x86_64-unknown-linux-gnu
label: Linux
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v4
- name: Install Linux dependencies
if: matrix.platform == 'ubuntu-22.04'
run: |
sudo apt-get update
sudo apt-get install -y \
libwebkit2gtk-4.1-dev \
build-essential \
curl \
wget \
file \
libxdo-dev \
libssl-dev \
libayatana-appindicator3-dev \
librsvg2-dev
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 22
cache: npm
- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable
with:
targets: ${{ matrix.target }}
- name: Rust cache
uses: swatinem/rust-cache@v2
with:
workspaces: src-tauri
- name: Install frontend dependencies
run: npm ci
- name: Build Tauri app
uses: tauri-apps/tauri-action@v0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
with:
releaseId: ${{ needs.create-release.outputs.release_id }}
updaterJsonPreferNsis: true
args: --target ${{ matrix.target }}
publish-release:
needs: [create-release, build]
runs-on: ubuntu-latest
steps:
- name: Publish release
uses: actions/github-script@v7
with:
script: |
await github.rest.repos.updateRelease({
owner: context.repo.owner,
repo: context.repo.repo,
release_id: ${{ needs.create-release.outputs.release_id }},
draft: false,
});