mirror of
https://github.com/ReVax-2007/cipher_master.git
synced 2026-09-17 21:32:27 +00:00
108 lines
3.0 KiB
YAML
108 lines
3.0 KiB
YAML
name: Release App
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- 'v*'
|
|
|
|
jobs:
|
|
release:
|
|
permissions:
|
|
contents: write
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
platform: [macos-latest, windows-latest, ubuntu-latest]
|
|
|
|
runs-on: ${{ matrix.platform }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Setup Node.js
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 20
|
|
|
|
- name: Install Rust
|
|
uses: dtolnay/rust-toolchain@stable
|
|
|
|
- name: Install Linux dependencies
|
|
if: matrix.platform == 'ubuntu-latest'
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y \
|
|
libglib2.0-dev \
|
|
libgtk-3-dev \
|
|
libwebkit2gtk-4.1-dev \
|
|
libayatana-appindicator3-dev \
|
|
librsvg2-dev \
|
|
patchelf
|
|
|
|
- name: Build Tauri App
|
|
uses: tauri-apps/tauri-action@v0
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
projectPath: src-tauri
|
|
tagName: ${{ github.ref_name }}
|
|
releaseName: 'Cipher Master ${{ github.ref_name }}'
|
|
releaseBody: 'Download the compiled standalone application binaries below.'
|
|
releaseDraft: true
|
|
prerelease: false
|
|
|
|
android:
|
|
name: Android APK and AAB
|
|
runs-on: ubuntu-latest
|
|
permissions:
|
|
contents: write
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Setup Java
|
|
uses: actions/setup-java@v4
|
|
with:
|
|
distribution: temurin
|
|
java-version: '17'
|
|
|
|
- name: Setup Android SDK
|
|
uses: android-actions/setup-android@v3
|
|
with:
|
|
packages: ''
|
|
|
|
- name: Install Android SDK packages
|
|
run: sdkmanager "platform-tools" "platforms;android-35" "build-tools;35.0.0" "ndk;27.2.12479018"
|
|
|
|
- name: Install Rust
|
|
uses: dtolnay/rust-toolchain@stable
|
|
with:
|
|
targets: aarch64-linux-android, armv7-linux-androideabi, i686-linux-android, x86_64-linux-android
|
|
|
|
- name: Install Tauri CLI
|
|
run: cargo install tauri-cli --version '^2.0' --locked
|
|
|
|
- name: Initialize Android project
|
|
working-directory: src-tauri
|
|
run: cargo tauri android init
|
|
|
|
- name: Build Android packages
|
|
working-directory: src-tauri
|
|
run: cargo tauri android build --apk --aab
|
|
|
|
- name: Upload Android packages
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: cipher-master-android-${{ github.ref_name }}
|
|
path: |
|
|
src-tauri/gen/android/app/build/outputs/apk/**/*.apk
|
|
src-tauri/gen/android/app/build/outputs/bundle/**/*.aab
|
|
if-no-files-found: error
|
|
|
|
- name: Attach Android packages to GitHub release
|
|
uses: softprops/action-gh-release@v2
|
|
if: startsWith(github.ref, 'refs/tags/')
|
|
with:
|
|
files: |
|
|
src-tauri/gen/android/app/build/outputs/apk/**/*.apk
|
|
src-tauri/gen/android/app/build/outputs/bundle/**/*.aab
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |