fix
Some checks failed
Build Tauri App (Linux + Windows + Android) / build (push) Failing after 10m48s

This commit is contained in:
2025-09-01 02:49:29 +02:00
parent bfe3c6f4a9
commit fb57f49d45

View File

@@ -1,4 +1,4 @@
name: Build Tauri App (Linux + Windows exe) name: Build Tauri App (Linux + Windows + Android)
on: on:
push: push:
@@ -10,9 +10,11 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
# 1⃣ Checkout repository
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v3 uses: actions/checkout@v3
# 2⃣ Install Rust
- name: Install Rust - name: Install Rust
uses: actions-rs/toolchain@v1 uses: actions-rs/toolchain@v1
with: with:
@@ -20,6 +22,7 @@ jobs:
profile: minimal profile: minimal
override: true override: true
# 3⃣ Install Linux dependencies
- name: Install Linux dependencies - name: Install Linux dependencies
run: | run: |
sudo apt-get update sudo apt-get update
@@ -34,20 +37,25 @@ jobs:
curl \ curl \
pkg-config \ pkg-config \
xdg-utils \ xdg-utils \
gnupg2 gnupg2 \
unzip \
wget
# 4⃣ Setup Java
- name: Set up Java - name: Set up Java
uses: actions/setup-java@v3 uses: actions/setup-java@v3
with: with:
distribution: temurin distribution: temurin
java-version: 17 java-version: 17
# 5⃣ Install Android SDK & NDK
- name: Install Android SDK & NDK - name: Install Android SDK & NDK
run: | run: |
ANDROID_SDK="$HOME/Android/Sdk" ANDROID_SDK="$HOME/Android/Sdk"
mkdir -p "$ANDROID_SDK/cmdline-tools" mkdir -p "$ANDROID_SDK/cmdline-tools"
cd "$ANDROID_SDK/cmdline-tools" cd "$ANDROID_SDK/cmdline-tools"
# Download and unzip command-line tools # Download command-line tools
wget https://dl.google.com/android/repository/commandlinetools-linux-9477386_latest.zip -O cmdline-tools.zip wget https://dl.google.com/android/repository/commandlinetools-linux-9477386_latest.zip -O cmdline-tools.zip
unzip -q cmdline-tools.zip unzip -q cmdline-tools.zip
mv cmdline-tools latest || mv tools latest mv cmdline-tools latest || mv tools latest
@@ -55,47 +63,55 @@ jobs:
export ANDROID_SDK_ROOT="$ANDROID_SDK" export ANDROID_SDK_ROOT="$ANDROID_SDK"
export PATH="$ANDROID_SDK/cmdline-tools/latest/bin:$ANDROID_SDK/platform-tools:$PATH" export PATH="$ANDROID_SDK/cmdline-tools/latest/bin:$ANDROID_SDK/platform-tools:$PATH"
# Accept licenses non-interactively
yes | sdkmanager --licenses || true yes | sdkmanager --licenses || true
# Install SDK, build-tools, NDK, and platforms
sdkmanager "platform-tools" "platforms;android-33" "build-tools;33.0.2" "ndk;25.2.9519653" sdkmanager "platform-tools" "platforms;android-33" "build-tools;33.0.2" "ndk;25.2.9519653"
env: env:
ANDROID_HOME: ${{ github.home }}/Android/Sdk ANDROID_HOME: ${{ github.home }}/Android/Sdk
ANDROID_SDK_ROOT: ${{ github.home }}/Android/Sdk ANDROID_SDK_ROOT: ${{ github.home }}/Android/Sdk
# 6⃣ Add Windows Rust target
- name: Add Windows Rust target - name: Add Windows Rust target
run: rustup target add x86_64-pc-windows-gnu run: rustup target add x86_64-pc-windows-gnu
# 7⃣ Install Tauri CLI
- name: Install Tauri CLI - name: Install Tauri CLI
run: cargo install tauri-cli run: cargo install tauri-cli
- name: Build Android APK # 8⃣ Initialize Android project
- name: Initialize Tauri Android project
run: |
cd src-tauri
cargo tauri android init
# 9⃣ Build Android APK (Debug)
- name: Build Android Debug APK
run: | run: |
cd src-tauri/gen/android cd src-tauri/gen/android
./gradlew assembleDebug ./gradlew assembleDebug
# 🔟 Build Android Release APK
- name: Build Android Release APK - name: Build Android Release APK
run: | run: |
cd src-tauri/gen/android cd src-tauri/gen/android
./gradlew assembleRelease ./gradlew assembleRelease
# 1⃣1⃣ Build Linux packages
- name: Build Linux packages (deb + rpm) - name: Build Linux packages (deb + rpm)
run: | run: |
cd src-tauri cd src-tauri
cargo tauri build cargo tauri build
# 1⃣2⃣ Build Windows exe
- name: Build Windows exe - name: Build Windows exe
run: | run: |
cd src-tauri cd src-tauri
cargo build --release --target x86_64-pc-windows-gnu cargo build --release --target x86_64-pc-windows-gnu
# 1⃣3⃣ Make Linux ELF executable
- name: Make Linux ELF executable - name: Make Linux ELF executable
run: chmod +x src-tauri/target/release/bytechat-desktop run: chmod +x src-tauri/target/release/bytechat-desktop
# 🔑 Import your private GPG key # 1⃣4 Import GPG key
- name: Import GPG key - name: Import GPG key
run: | run: |
echo "$GPG_PRIVATE_KEY" | gpg --batch --import echo "$GPG_PRIVATE_KEY" | gpg --batch --import
@@ -104,7 +120,7 @@ jobs:
GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }} GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }}
GPG_KEY_ID: ${{ secrets.GPG_KEY_ID }} GPG_KEY_ID: ${{ secrets.GPG_KEY_ID }}
# 🐧 Sign Linux binaries (.deb, .rpm, ELF) # 1⃣5 Sign Linux artifacts
- name: Sign Linux artifacts - name: Sign Linux artifacts
run: | run: |
for f in src-tauri/target/release/bytechat-desktop \ for f in src-tauri/target/release/bytechat-desktop \
@@ -116,7 +132,7 @@ jobs:
env: env:
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
# 🪟 Sign Windows exe with GPG # 1⃣6 Sign Windows exe
- name: Sign Windows exe - name: Sign Windows exe
run: | run: |
exe=src-tauri/target/x86_64-pc-windows-gnu/release/bytechat-desktop.exe exe=src-tauri/target/x86_64-pc-windows-gnu/release/bytechat-desktop.exe
@@ -125,16 +141,16 @@ jobs:
env: env:
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
# 1⃣7⃣ Upload Android APKs
- name: Upload Android APK - name: Upload Android APK
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: tauri-android-apk name: tauri-android-apk
path: | path: |
src-tauri/gen/android/app/build/outputs/apk/debug/app-debug.apk src-tauri/gen/android/app/build/outputs/apk/debug/app-debug.apk
# or release:
src-tauri/gen/android/app/build/outputs/apk/release/app-release.apk src-tauri/gen/android/app/build/outputs/apk/release/app-release.apk
# 📦 Upload Linux artifacts + signatures + public key # 1⃣8 Upload Linux packages
- name: Upload Linux packages - name: Upload Linux packages
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
@@ -148,7 +164,7 @@ jobs:
src-tauri/target/release/bundle/rpm/*.asc src-tauri/target/release/bundle/rpm/*.asc
key/bytechat-public.gpg key/bytechat-public.gpg
# 📦 Upload Windows exe + signature # 1⃣9 Upload Windows exe + signature
- name: Upload Windows exe - name: Upload Windows exe
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
@@ -156,3 +172,4 @@ jobs:
path: | path: |
src-tauri/target/x86_64-pc-windows-gnu/release/bytechat-desktop.exe src-tauri/target/x86_64-pc-windows-gnu/release/bytechat-desktop.exe
src-tauri/target/x86_64-pc-windows-gnu/release/bytechat-desktop.exe.asc src-tauri/target/x86_64-pc-windows-gnu/release/bytechat-desktop.exe.asc