fix: error command status #5
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
name: Alpha Build | |
on: | |
workflow_dispatch: | |
push: | |
branches: [main] | |
tags-ignore: [updater, alpha] | |
permissions: write-all | |
env: | |
CARGO_INCREMENTAL: 0 | |
RUST_BACKTRACE: short | |
concurrency: | |
# only allow per workflow per commit (and not pr) to run at a time | |
group: "${{ github.workflow }} - ${{ github.head_ref || github.ref }}" | |
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} | |
jobs: | |
alpha: | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os: windows-latest | |
target: x86_64-pc-windows-msvc | |
- os: windows-latest | |
target: i686-pc-windows-msvc | |
- os: windows-latest | |
target: aarch64-pc-windows-msvc | |
- os: macos-latest | |
target: aarch64-apple-darwin | |
- os: macos-latest | |
target: x86_64-apple-darwin | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Install Rust Stable | |
uses: dtolnay/[email protected] | |
- name: Add Rust Target | |
run: rustup target add ${{ matrix.target }} | |
- name: Rust Cache | |
uses: Swatinem/rust-cache@v2 | |
with: | |
workspaces: src-tauri | |
cache-all-crates: true | |
cache-on-failure: true | |
- name: Install Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: "20" | |
- uses: pnpm/action-setup@v4 | |
name: Install pnpm | |
with: | |
run_install: false | |
- name: Pnpm install and check | |
run: | | |
pnpm i | |
pnpm check ${{ matrix.target }} | |
- name: Tauri build | |
uses: tauri-apps/tauri-action@v0 | |
env: | |
NODE_OPTIONS: "--max_old_space_size=4096" | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }} | |
TAURI_KEY_PASSWORD: ${{ secrets.TAURI_KEY_PASSWORD }} | |
APPLE_CERTIFICATE: ${{ secrets.APPLE_CERTIFICATE }} | |
APPLE_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_CERTIFICATE_PASSWORD }} | |
APPLE_SIGNING_IDENTITY: ${{ secrets.APPLE_SIGNING_IDENTITY }} | |
APPLE_ID: ${{ secrets.APPLE_ID }} | |
APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }} | |
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }} | |
with: | |
tagName: alpha | |
releaseName: "Clash Verge Rev Alpha" | |
releaseBody: "More new features are now supported." | |
releaseDraft: false | |
prerelease: true | |
tauriScript: pnpm | |
args: --target ${{ matrix.target }} | |
- name: Portable Bundle | |
if: matrix.os == 'windows-latest' | |
run: pnpm portable ${{ matrix.target }} --alpha | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
alpha-for-linux: | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os: ubuntu-latest | |
target: x86_64-unknown-linux-gnu | |
- os: ubuntu-latest | |
target: i686-unknown-linux-gnu | |
- os: ubuntu-latest | |
target: aarch64-unknown-linux-gnu | |
- os: ubuntu-latest | |
target: armv7-unknown-linux-gnueabihf | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Build for Linux | |
uses: ./.github/build-for-linux | |
env: | |
NODE_OPTIONS: "--max_old_space_size=4096" | |
TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }} | |
TAURI_KEY_PASSWORD: ${{ secrets.TAURI_KEY_PASSWORD }} | |
with: | |
target: ${{ matrix.target }} | |
- name: Get Version | |
run: | | |
sudo apt-get update | |
sudo apt-get install jq | |
echo "VERSION=$(cat package.json | jq '.version' | tr -d '"')" >> $GITHUB_ENV | |
echo "BUILDTIME=$(TZ=Asia/Shanghai date)" >> $GITHUB_ENV | |
- name: Upload Release | |
uses: softprops/action-gh-release@v2 | |
with: | |
tag_name: alpha | |
name: "Clash Verge Rev Alpha" | |
body: "More new features are now supported." | |
prerelease: true | |
token: ${{ secrets.GITHUB_TOKEN }} | |
files: | | |
src-tauri/target/${{ matrix.target }}/release/bundle/deb/*.deb | |
src-tauri/target/${{ matrix.target }}/release/bundle/rpm/*.rpm | |
alpha-for-fixed-webview2: | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os: windows-latest | |
target: x86_64-pc-windows-msvc | |
arch: x64 | |
- os: windows-latest | |
target: i686-pc-windows-msvc | |
arch: x86 | |
- os: windows-latest | |
target: aarch64-pc-windows-msvc | |
arch: arm64 | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Add Rust Target | |
run: rustup target add ${{ matrix.target }} | |
- name: Rust Cache | |
uses: Swatinem/rust-cache@v2 | |
with: | |
workspaces: src-tauri | |
cache-all-crates: true | |
cache-on-failure: true | |
- name: Install Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: "20" | |
- uses: pnpm/action-setup@v4 | |
name: Install pnpm | |
with: | |
run_install: false | |
- name: Pnpm install and check | |
run: | | |
pnpm i | |
pnpm check ${{ matrix.target }} | |
- name: Download WebView2 Runtime | |
run: | | |
invoke-webrequest -uri https://github.com/westinyang/WebView2RuntimeArchive/releases/download/109.0.1518.78/Microsoft.WebView2.FixedVersionRuntime.109.0.1518.78.${{ matrix.arch }}.cab -outfile Microsoft.WebView2.FixedVersionRuntime.109.0.1518.78.${{ matrix.arch }}.cab | |
Expand .\Microsoft.WebView2.FixedVersionRuntime.109.0.1518.78.${{ matrix.arch }}.cab -F:* ./src-tauri | |
Remove-Item .\src-tauri\tauri.windows.conf.json | |
Rename-Item .\src-tauri\webview2.${{ matrix.arch }}.json tauri.windows.conf.json | |
- name: Tauri build | |
id: build | |
uses: tauri-apps/tauri-action@v0 | |
env: | |
NODE_OPTIONS: "--max_old_space_size=4096" | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }} | |
TAURI_KEY_PASSWORD: ${{ secrets.TAURI_KEY_PASSWORD }} | |
with: | |
tauriScript: pnpm | |
args: --target ${{ matrix.target }} | |
- name: Rename | |
run: | | |
Rename-Item '.\src-tauri\target\${{ matrix.target }}\release\bundle\nsis\Clash Verge_${{steps.build.outputs.appVersion}}_${{ matrix.arch }}-setup.exe' 'Clash Verge_${{steps.build.outputs.appVersion}}_${{ matrix.arch }}_fixed_webview2-setup.exe' | |
Rename-Item '.\src-tauri\target\${{ matrix.target }}\release\bundle\nsis\Clash Verge_${{steps.build.outputs.appVersion}}_${{ matrix.arch }}-setup.nsis.zip' 'Clash Verge_${{steps.build.outputs.appVersion}}_${{ matrix.arch }}_fixed_webview2-setup.nsis.zip' | |
Rename-Item '.\src-tauri\target\${{ matrix.target }}\release\bundle\nsis\Clash Verge_${{steps.build.outputs.appVersion}}_${{ matrix.arch }}-setup.nsis.zip.sig' 'Clash Verge_${{steps.build.outputs.appVersion}}_${{ matrix.arch }}_fixed_webview2-setup.nsis.zip.sig' | |
- name: Upload Release | |
uses: softprops/action-gh-release@v2 | |
with: | |
tag_name: alpha | |
name: "Clash Verge Rev Alpha" | |
body: "More new features are now supported." | |
prerelease: true | |
token: ${{ secrets.GITHUB_TOKEN }} | |
files: src-tauri/target/${{ matrix.target }}/release/bundle/nsis/*setup* | |
- name: Portable Bundle | |
run: pnpm portable-fixed-webview2 ${{ matrix.target }} --alpha | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
update_tag: | |
name: Update tag | |
runs-on: ubuntu-latest | |
needs: [alpha, alpha-for-linux, alpha-for-fixed-webview2] | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Set Env | |
run: | | |
echo "BUILDTIME=$(TZ=Asia/Shanghai date)" >> $GITHUB_ENV | |
shell: bash | |
- name: Update Tag | |
uses: richardsimko/update-tag@v1 | |
with: | |
tag_name: alpha | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- run: | | |
cat > release.txt << 'EOF' | |
## 我应该下载哪个版本? | |
### MacOS (提示文件损坏或开发者无法验证请查看下面FAQ) | |
- MacOS intel芯片: x64.dmg | |
- MacOS apple M芯片: aarch64.dmg | |
### Linux | |
- Linux 64位: amd64.deb/amd64.rpm | |
- Linux 32位: i386.deb/i386.rpm | |
- Linux arm64架构: arm64.deb/aarch64.rpm | |
- Linux armv7架构: armhf.deb/armhfp.rpm | |
### Windows (Win7 用户请查看下面FAQ中的解决方案) | |
#### 正常版本(推荐) | |
- 64位: x64-setup.exe | |
- 32位: x86-setup.exe | |
- arm64架构: arm64-setup.exe | |
#### 便携版(不推荐使用,无法自动更新) | |
- 64位: x64_portable.zip | |
- 32位: x86_portable.zip | |
- arm64架构: arm64_portable.zip | |
#### 内置Webview2版(体积较大,仅在企业版系统或Win7无法安装webview2时使用) | |
- 64位: x64_fixed_webview2-setup.exe | |
- 32位: x86_fixed_webview2-setup.exe | |
- arm64架构: arm64_fixed_webview2-setup.exe | |
### FAQ | |
- [FAQ](https://clash-verge-rev.github.io/faq/windows.html) | |
Created at ${{ env.BUILDTIME }}. | |
EOF | |
- name: Upload Release | |
uses: softprops/action-gh-release@v2 | |
with: | |
tag_name: alpha | |
name: "Clash Verge Rev Alpha" | |
body_path: release.txt | |
prerelease: true | |
token: ${{ secrets.GITHUB_TOKEN }} | |
generate_release_notes: true |