mirror of
https://github.com/streamyfin/streamyfin.git
synced 2026-06-01 19:48:28 +01:00
39 lines
1.4 KiB
YAML
39 lines
1.4 KiB
YAML
# Custom EAS Build config for Android (production AAB).
|
|
#
|
|
# Why this exists: EAS's managed build can't detect Bun's text lockfile
|
|
# (bun.lock) and falls back to yarn, which breaks our install. The managed
|
|
# steps `eas/install_node_modules` and `eas/prebuild` both use "the package
|
|
# manager detected based on your project", so we replace them with explicit
|
|
# `bun` commands. Everything else uses EAS's built-in functions so we still
|
|
# get remote versioning, credentials, and artifact upload.
|
|
#
|
|
# Referenced from eas.json: build.production.android.config = android-production.yml
|
|
build:
|
|
name: Android production (bun)
|
|
steps:
|
|
- eas/checkout
|
|
|
|
- run:
|
|
name: Install dependencies (bun, frozen)
|
|
command: bun install --frozen-lockfile
|
|
|
|
# android/ is gitignored, so generate native code fresh. --no-install
|
|
# because deps are already installed above; bunx keeps it on bun.
|
|
- run:
|
|
name: Prebuild (Android, bun)
|
|
command: bunx expo prebuild --platform android --no-install
|
|
|
|
# Applies the EAS-resolved remote versionCode/versionName (autoIncrement
|
|
# in eas.json) into the freshly prebuilt android/ project.
|
|
- eas/configure_android_version
|
|
|
|
# Injects the remote Android keystore / signing config.
|
|
- eas/inject_android_credentials
|
|
|
|
# Build the Play Store app bundle (.aab).
|
|
- eas/run_gradle:
|
|
inputs:
|
|
command: :app:bundleRelease
|
|
|
|
- eas/find_and_upload_build_artifacts
|