fix(ci): add tauri package.json to Dockerfiles and fix Android NDK/build issues
Build and Deploy: workspace has 4 members (api/web/shared/tauri) but Dockerfiles only copied 3 package.json files. Missing tauri workspace member caused bun install --production to fail with frozen lockfile error. Build Android APK: - Remove explicit NDK 28 install (runner has NDK 29 pre-installed, dual NDK presence broke ANDROID_NDK_HOME resolution) - Auto-pin NDK version from runner's SDK - rm -rf gen/android before tauri android init (stale cache recovery) - Remove gen/android/.gradle from Gradle cache (causes stale state) - Use --apk flag for faster APK-only build Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -64,7 +64,9 @@ jobs:
|
|||||||
- name: Setup Android SDK
|
- name: Setup Android SDK
|
||||||
uses: android-actions/setup-android@v3
|
uses: android-actions/setup-android@v3
|
||||||
with:
|
with:
|
||||||
packages: 'platforms;android-36 build-tools;36.0.0 ndk;28.0.13004108'
|
packages: 'platforms;android-36 build-tools;36.0.0'
|
||||||
|
- name: Pin NDK version
|
||||||
|
run: echo "ANDROID_NDK_HOME=${ANDROID_SDK_ROOT}/ndk/$(ls ${ANDROID_SDK_ROOT}/ndk | sort -V | head -1)" >> $GITHUB_ENV
|
||||||
|
|
||||||
- name: Setup Rust with Android targets
|
- name: Setup Rust with Android targets
|
||||||
uses: dtolnay/rust-toolchain@stable
|
uses: dtolnay/rust-toolchain@stable
|
||||||
@@ -92,7 +94,6 @@ jobs:
|
|||||||
path: |
|
path: |
|
||||||
~/.gradle/caches
|
~/.gradle/caches
|
||||||
~/.gradle/wrapper
|
~/.gradle/wrapper
|
||||||
apps/tauri/gen/android/.gradle
|
|
||||||
key: ${{ runner.os }}-gradle-android-${{ hashFiles('apps/tauri/Cargo.lock') }}
|
key: ${{ runner.os }}-gradle-android-${{ hashFiles('apps/tauri/Cargo.lock') }}
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
${{ runner.os }}-gradle-android-
|
${{ runner.os }}-gradle-android-
|
||||||
@@ -131,7 +132,9 @@ jobs:
|
|||||||
JAVA_HOME: ${{ env.JAVA_HOME_21_X64 }}
|
JAVA_HOME: ${{ env.JAVA_HOME_21_X64 }}
|
||||||
ANDROID_HOME: ${{ env.ANDROID_SDK_ROOT }}
|
ANDROID_HOME: ${{ env.ANDROID_SDK_ROOT }}
|
||||||
NDK_HOME: ${{ env.ANDROID_NDK_HOME }}
|
NDK_HOME: ${{ env.ANDROID_NDK_HOME }}
|
||||||
run: bun tauri android init
|
run: |
|
||||||
|
rm -rf gen/android
|
||||||
|
bun tauri android init
|
||||||
|
|
||||||
- name: Build Tauri Android APK
|
- name: Build Tauri Android APK
|
||||||
working-directory: apps/tauri
|
working-directory: apps/tauri
|
||||||
@@ -139,7 +142,7 @@ jobs:
|
|||||||
JAVA_HOME: ${{ env.JAVA_HOME_21_X64 }}
|
JAVA_HOME: ${{ env.JAVA_HOME_21_X64 }}
|
||||||
ANDROID_HOME: ${{ env.ANDROID_SDK_ROOT }}
|
ANDROID_HOME: ${{ env.ANDROID_SDK_ROOT }}
|
||||||
NDK_HOME: ${{ env.ANDROID_NDK_HOME }}
|
NDK_HOME: ${{ env.ANDROID_NDK_HOME }}
|
||||||
run: bun tauri android build
|
run: bun tauri android build --apk
|
||||||
|
|
||||||
- name: Decode keystore
|
- name: Decode keystore
|
||||||
if: github.event_name != 'pull_request'
|
if: github.event_name != 'pull_request'
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ WORKDIR /app
|
|||||||
COPY package.json bun.lock bunfig.toml tsconfig.base.json ./
|
COPY package.json bun.lock bunfig.toml tsconfig.base.json ./
|
||||||
COPY apps/api/package.json apps/api/package.json
|
COPY apps/api/package.json apps/api/package.json
|
||||||
COPY apps/web/package.json apps/web/package.json
|
COPY apps/web/package.json apps/web/package.json
|
||||||
|
COPY apps/tauri/package.json apps/tauri/package.json
|
||||||
COPY packages/shared/package.json packages/shared/package.json
|
COPY packages/shared/package.json packages/shared/package.json
|
||||||
RUN bun install --production
|
RUN bun install --production
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ COPY package.json bun.lock bunfig.toml tsconfig.base.json ./
|
|||||||
COPY packages/shared/package.json packages/shared/package.json
|
COPY packages/shared/package.json packages/shared/package.json
|
||||||
COPY apps/web/package.json apps/web/package.json
|
COPY apps/web/package.json apps/web/package.json
|
||||||
COPY apps/api/package.json apps/api/package.json
|
COPY apps/api/package.json apps/api/package.json
|
||||||
|
COPY apps/tauri/package.json apps/tauri/package.json
|
||||||
RUN bun install
|
RUN bun install
|
||||||
|
|
||||||
COPY packages/shared packages/shared
|
COPY packages/shared packages/shared
|
||||||
|
|||||||
Reference in New Issue
Block a user