add a quick and dirty android build workflow #4
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build-for-android-production | |
on: | |
push: | |
branches: [main, dev] | |
pull_request: | |
# types: [opened, reopened] | |
# types: [opened, synchronize, edited, ready_for_review] | |
env: | |
EXPO_NO_TELEMETRY: 1 | |
SENTRY_DISABLE_AUTO_UPLOAD: true | |
jobs: | |
build: | |
name: build-for-android-base- | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/checkout@v4 | |
- name: Restore cached Cache | |
id: cache-restore | |
uses: actions/cache/restore@v4 | |
with: | |
path: | | |
~/**/*android* | |
~/*android* | |
~/**/*gradle* | |
~/*gradle* | |
**/node_modules | |
./node_modules | |
**/android | |
./android | |
key: ${{ runner.os }}-android-build | |
restore-keys: | | |
${{ runner.os }}-android-build | |
ci-${{ runner.os }}-android-build | |
- uses: actions/setup-node@v4 | |
with: | |
cache: npm | |
cache-dependency-path: | | |
${{ env.GITHUB_WORKSPACE }}/package-lock.json | |
- uses: actions/setup-java@v4 | |
with: | |
distribution: temurin | |
java-version: '17' # The JDK version to make available on the path. | |
# ${{ env.GITHUB_WORKSPACE }}/**/*gradle* | |
# ${{ env.GITHUB_WORKSPACE }}/*gradle* | |
- uses: expo/expo-github-action@v8 | |
- name: Setup Android SDK | |
uses: android-actions/setup-android@v3 | |
with: | |
packages: platform-tools platforms;android-34 build-tools;33.0.1 build-tools;34.0.0 ndk;25.1.8937393 cmake;3.22.1 | |
- name: Install deps | |
run: npm ci | |
- name: PreBuild Android | |
run: npx expo prebuild -p android --clean | |
- name: make gradlew executable | |
run: chmod +x ./android/gradlew | |
- name: Build android APK | |
run: | | |
cd ./android && ./gradlew assembleRelease --no-daemon --stacktrace | |
find . -type f -name '*.apk' 2>/dev/null | |
cd ${{ env.GITHUB_WORKSPACE }} | |
shell: bash | |
- name: Save Cache | |
id: cache-save | |
uses: actions/cache/save@v4 | |
with: | |
path: | | |
~/**/*android* | |
~/*android* | |
~/**/*gradle* | |
~/*gradle* | |
**/node_modules | |
./node_modules | |
**/android | |
./android | |
key: ${{ runner.os }}-android-build |