Android Build/Upload to Play Store Console #191
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: Android Build/Upload to Play Store Console | |
on: | |
push: | |
tags: | |
- mobile-** | |
jobs: | |
build: | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Delete some stuff to free up disk space | |
run: | | |
sudo rm -rf /usr/share/dotnet | |
sudo rm -rf /opt/ghc | |
sudo rm -rf /usr/local/share/boost | |
- name: Clear unused NDKs | |
run: | | |
ls -1 "$ANDROID_SDK_ROOT/ndk" | | |
awk '{ | |
if (system("git grep " $0 " > /dev/null")) { | |
system("rm -rf '"$ANDROID_SDK_ROOT/ndk/"'" $0); | |
} | |
}' | |
- name: rustup target add aarch64-linux-android arm-linux-androideabi x86_64-linux-android | |
run: rustup target add aarch64-linux-android arm-linux-androideabi x86_64-linux-android | |
- name: Install Protobuf compiler | |
working-directory: ./scripts | |
run: sudo ./install_protobuf.sh | |
- name: Fix node-gyp | |
run: python3 -m pip install packaging setuptools | |
- name: yarn ci-cleaninstall | |
run: yarn ci-cleaninstall | |
- name: Save ALCHEMY_API_KEY to file | |
working-directory: ./native | |
env: | |
ALCHEMY_API_KEY: ${{secrets.ALCHEMY_API_KEY}} | |
run: mkdir -p facts && echo '{"key":"'"$ALCHEMY_API_KEY"'"}' > facts/alchemy.json | |
- name: Save ANDROID_KEY_STORE_B64 to file | |
env: | |
ANDROID_KEY_STORE_B64: ${{secrets.ANDROID_KEY_STORE_B64}} | |
run: echo "$ANDROID_KEY_STORE_B64" > ANDROID_KEY_STORE_B64.b64 | |
- name: Save ANDROID_KEY_STORE to file | |
run: base64 -d ANDROID_KEY_STORE_B64.b64 > android_key_store.keystore | |
- name: Configure gradle.properties | |
run: | | |
mkdir ~/.gradle | |
touch ~/.gradle/gradle.properties | |
echo "COMM_UPLOAD_STORE_FILE=$(pwd)/android_key_store.keystore" >> ~/.gradle/gradle.properties | |
echo "COMM_UPLOAD_KEY_ALIAS=AndroidSigningKey" >> ~/.gradle/gradle.properties | |
- name: Build with Gradle | |
working-directory: ./native/android | |
env: | |
ANDROID_SIGNING_PASSWORD: ${{secrets.ANDROID_SIGNING_PASSWORD}} | |
run: ./gradlew bundleRelease "-Dorg.gradle.jvmargs=-Xmx6g -XX:MaxMetaspaceSize=6g" | |
- name: Save PLAY_STORE_PUBLISHING_KEY to file | |
working-directory: ./native/android | |
env: | |
PLAY_STORE_PUBLISHING_KEY: ${{secrets.PLAY_STORE_PUBLISHING_KEY}} | |
run: echo "$PLAY_STORE_PUBLISHING_KEY" > PLAY_STORE_PUBLISHING_KEY.json | |
- name: Upload to Google Play | |
working-directory: ./native/android | |
run: node upload-aab.js | |
- name: Disk Usage | |
run: df -h |