fuck this im compiling android apks locally its easier
All checks were successful
Build Tauri App (Linux + Windows exe) / build (push) Successful in 11m27s
All checks were successful
Build Tauri App (Linux + Windows exe) / build (push) Successful in 11m27s
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
name: Build Tauri App (Linux + Windows + Android)
|
||||
name: Build Tauri App (Linux + Windows exe)
|
||||
|
||||
on:
|
||||
push:
|
||||
@@ -10,11 +10,9 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
# 1️⃣ Checkout repository
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
# 2️⃣ Install Rust
|
||||
- name: Install Rust
|
||||
uses: actions-rs/toolchain@v1
|
||||
with:
|
||||
@@ -22,7 +20,6 @@ jobs:
|
||||
profile: minimal
|
||||
override: true
|
||||
|
||||
# 3️⃣ Install Linux dependencies
|
||||
- name: Install Linux dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
@@ -37,87 +34,28 @@ jobs:
|
||||
curl \
|
||||
pkg-config \
|
||||
xdg-utils \
|
||||
gnupg2 \
|
||||
unzip \
|
||||
wget
|
||||
gnupg2
|
||||
|
||||
# 4️⃣ Set up Java
|
||||
- name: Set up Java
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: temurin
|
||||
java-version: 17
|
||||
|
||||
# 5️⃣ Install Android SDK & NDK
|
||||
- name: Install Android SDK & NDK
|
||||
run: |
|
||||
ANDROID_SDK="$HOME/Android/Sdk"
|
||||
mkdir -p "$ANDROID_SDK/cmdline-tools"
|
||||
cd "$ANDROID_SDK/cmdline-tools"
|
||||
|
||||
wget https://dl.google.com/android/repository/commandlinetools-linux-9477386_latest.zip -O cmdline-tools.zip
|
||||
unzip -q cmdline-tools.zip
|
||||
mv cmdline-tools latest || mv tools latest
|
||||
|
||||
export ANDROID_SDK_ROOT="$ANDROID_SDK"
|
||||
export ANDROID_HOME="$ANDROID_SDK"
|
||||
export PATH="$ANDROID_SDK/cmdline-tools/latest/bin:$ANDROID_SDK/platform-tools:$PATH"
|
||||
|
||||
yes | sdkmanager --licenses || true
|
||||
sdkmanager "platform-tools" "platforms;android-33" "build-tools;33.0.2" "ndk;25.2.9519653"
|
||||
|
||||
# 6️⃣ Persist Android environment variables for subsequent steps
|
||||
- name: Set Android environment variables
|
||||
run: |
|
||||
echo "ANDROID_HOME=$HOME/Android/Sdk" >> $GITHUB_ENV
|
||||
echo "ANDROID_SDK_ROOT=$HOME/Android/Sdk" >> $GITHUB_ENV
|
||||
echo "NDK_HOME=$HOME/Android/Sdk/ndk/29.0.13856066" >> $GITHUB_ENV
|
||||
echo "$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/cmdline-tools/latest/bin:$PATH" >> $GITHUB_PATH
|
||||
|
||||
|
||||
# 7️⃣ Add Windows Rust target
|
||||
- name: Add Windows Rust target
|
||||
run: rustup target add x86_64-pc-windows-gnu
|
||||
|
||||
# 8️⃣ Install Tauri CLI
|
||||
- name: Install Tauri CLI
|
||||
run: cargo install tauri-cli
|
||||
|
||||
# 9️⃣ Initialize Android project
|
||||
- name: Initialize Tauri Android project
|
||||
run: |
|
||||
cd src-tauri
|
||||
cargo tauri android init
|
||||
|
||||
# 🔟 Build Android APK (Debug)
|
||||
- name: Build Android Debug APK
|
||||
run: |
|
||||
cd src-tauri/gen/android
|
||||
./gradlew assembleDebug
|
||||
|
||||
# 1️⃣1️⃣ Build Android Release APK
|
||||
- name: Build Android Release APK
|
||||
run: |
|
||||
cd src-tauri/gen/android
|
||||
./gradlew assembleRelease
|
||||
|
||||
# 1️⃣2️⃣ Build Linux packages
|
||||
- name: Build Linux packages (deb + rpm)
|
||||
run: |
|
||||
cd src-tauri
|
||||
cargo tauri build
|
||||
|
||||
# 1️⃣3️⃣ Build Windows exe
|
||||
- name: Build Windows exe
|
||||
run: |
|
||||
cd src-tauri
|
||||
cargo build --release --target x86_64-pc-windows-gnu
|
||||
|
||||
# 1️⃣4️⃣ Make Linux ELF executable
|
||||
- name: Make Linux ELF executable
|
||||
run: chmod +x src-tauri/target/release/bytechat-desktop
|
||||
|
||||
# 1️⃣5️⃣ Import GPG key for signing
|
||||
# 🔑 Import your private GPG key
|
||||
- name: Import GPG key
|
||||
run: |
|
||||
echo "$GPG_PRIVATE_KEY" | gpg --batch --import
|
||||
@@ -126,7 +64,7 @@ jobs:
|
||||
GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }}
|
||||
GPG_KEY_ID: ${{ secrets.GPG_KEY_ID }}
|
||||
|
||||
# 1️⃣6️⃣ Sign Linux artifacts
|
||||
# 🐧 Sign Linux binaries (.deb, .rpm, ELF)
|
||||
- name: Sign Linux artifacts
|
||||
run: |
|
||||
for f in src-tauri/target/release/bytechat-desktop \
|
||||
@@ -138,7 +76,7 @@ jobs:
|
||||
env:
|
||||
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
|
||||
|
||||
# 1️⃣7️⃣ Sign Windows exe
|
||||
# 🪟 Sign Windows exe with GPG
|
||||
- name: Sign Windows exe
|
||||
run: |
|
||||
exe=src-tauri/target/x86_64-pc-windows-gnu/release/bytechat-desktop.exe
|
||||
@@ -147,16 +85,7 @@ jobs:
|
||||
env:
|
||||
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
|
||||
|
||||
# 1️⃣8️⃣ Upload Android APKs
|
||||
- name: Upload Android APK
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: tauri-android-apk
|
||||
path: |
|
||||
src-tauri/gen/android/app/build/outputs/apk/debug/app-debug.apk
|
||||
src-tauri/gen/android/app/build/outputs/apk/release/app-release.apk
|
||||
|
||||
# 1️⃣9️⃣ Upload Linux packages
|
||||
# 📦 Upload Linux artifacts + signatures + public key
|
||||
- name: Upload Linux packages
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
@@ -170,7 +99,7 @@ jobs:
|
||||
src-tauri/target/release/bundle/rpm/*.asc
|
||||
key/bytechat-public.gpg
|
||||
|
||||
# 2️⃣0️⃣ Upload Windows exe + signature
|
||||
# 📦 Upload Windows exe + signature
|
||||
- name: Upload Windows exe
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
@@ -178,4 +107,3 @@ jobs:
|
||||
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.asc
|
||||
|
||||
|
||||
Reference in New Issue
Block a user