Skip to content

Merge pull request #351 from joeloewi7178/development #342

Merge pull request #351 from joeloewi7178/development

Merge pull request #351 from joeloewi7178/development #342

Workflow file for this run

# This is a basic workflow to help you get started with Actions
name: CI
# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the master branch
push:
branches: [ master ]
env:
ALIAS: ${{ secrets.ALIAS }}
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
KEY_STORE_PASSWORD: ${{ secrets.KEY_STORE_PASSWORD }}
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: macos-latest
timeout-minutes: 120
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
- name: Checkout
uses: actions/checkout@v4
- name: set up JDK 17
uses: actions/setup-java@v4
with:
distribution: 'zulu' # See 'Supported distributions' for available options
java-version: '17'
- name: Install GMD image for baseline profile generation
run: yes | "$ANDROID_HOME"/cmdline-tools/latest/bin/sdkmanager "system-images;android-34;aosp_atd;x86_64"
- name: Accept Android licenses
run: yes | "$ANDROID_HOME"/cmdline-tools/latest/bin/sdkmanager --licenses || true
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Access GOOGLE_SERVICES_JSON
run: echo '${{ secrets.GOOGLE_SERVICES_JSON }}' > ./app/google-services.json
- name: Extract ssl certificate from hoyolab.com and replace
run: openssl s_client -showcerts -connect www.hoyolab.com:443 </dev/null 2>/dev/null|openssl x509 -outform DER >./app/src/main/res/raw/hoyolab_ca.der
- name: Generate jks file from base64
uses: timheuer/base64-to-file@v1.2
with:
fileName: 'croissant_key_store.jks'
fileDir: './'
encodedString: ${{ secrets.SIGNING_KEY }}
- name: Generate baseline profile
uses: reactivecircus/android-emulator-runner@v2
with:
api-level: 34
target: aosp_atd
arch: x86_64
script: ./gradlew :app:bundleRelease
- name: Upload Android Release to Play Store
uses: r0adkll/upload-google-play@v1
with:
serviceAccountJsonPlainText: ${{ secrets.SERVICE_ACCOUNT_JSON }}
packageName: com.joeloewi.croissant
releaseFiles: app/build/outputs/bundle/release/*.aab
track: internal
status: completed
inAppUpdatePriority: 5
mappingFile: app/build/outputs/mapping/release/mapping.txt