66 lines
2.1 KiB
YAML
66 lines
2.1 KiB
YAML
name: Android Build & Deploy (Beta)
|
|
|
|
on:
|
|
pull_request:
|
|
types:
|
|
- closed
|
|
branches: [ "dev" ]
|
|
|
|
jobs:
|
|
deploy:
|
|
if: github.event.pull_request.merged == true
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Set up ruby env
|
|
uses: ruby/setup-ruby@v1
|
|
with:
|
|
ruby-version: 3.2.2
|
|
bundler-cache: true
|
|
|
|
- name: Initialize local properties
|
|
env:
|
|
MAPS_API_KEY: ${{ secrets.MAPS_API_KEY }}
|
|
CMS_API_KEY: ${{ secrets.CMS_API_KEY }}
|
|
run: echo MAPS_API_KEY="$MAPS_API_KEY" >> ./local.properties ; echo CMS_API_KEY="$CMS_API_KEY" >> ./local.properties
|
|
|
|
# Set up your GitHub Actions workflow with a specific version of Java
|
|
- name: Setup Java JDK
|
|
uses: actions/setup-java@v3
|
|
with:
|
|
distribution: 'temurin'
|
|
java-version: 17
|
|
|
|
- name: Run tests
|
|
run: bundle exec fastlane android test
|
|
|
|
- name: Decode Service Account Key JSON File
|
|
uses: timheuer/base64-to-file@v1
|
|
id: service_account_json_file
|
|
with:
|
|
fileName: "serviceAccount.json"
|
|
encodedString: ${{ secrets.PLAY_STORE_CREDENTIALS }}
|
|
|
|
- name: Decode Keystore File
|
|
uses: timheuer/base64-to-file@v1
|
|
id: android_keystore
|
|
with:
|
|
fileName: "android_keystore.keystore"
|
|
encodedString: ${{ secrets.KEYSTORE }}
|
|
|
|
- name: Build & deploy Android release
|
|
run: bundle exec fastlane android beta
|
|
env:
|
|
ANDROID_KEYSTORE_FILE: ${{ steps.android_keystore.outputs.filePath }}
|
|
ANDROID_KEYSTORE_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD }}
|
|
ANDROID_KEY_ALIAS: ${{ secrets.ANDROID_KEY_ALIAS}}
|
|
ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD }}
|
|
GOOGLE_PLAY_SERVICE_ACCOUNT_KEY: ${{ steps.service_account_json_file.outputs.filePath }}
|
|
|
|
- name: Upload build artifacts
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: assets
|
|
path: |
|
|
${{ github.workspace }}/app/build/outputs/bundle/release |