59 lines
2.1 KiB
YAML
59 lines
2.1 KiB
YAML
name: Android test and alpha update
|
|
|
|
on:
|
|
push:
|
|
branches: [ main ]
|
|
|
|
jobs:
|
|
build_alpha:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-java@v4
|
|
with:
|
|
distribution: 'temurin'
|
|
java-version: '17'
|
|
- uses: gradle/gradle-build-action@v3
|
|
- name: Check for missing qq strings
|
|
run: ./scripts/missing-qq.py
|
|
- name: Checkout submodules
|
|
run: git submodule update --init --recursive
|
|
- name: Build, test, and lint
|
|
run: ./gradlew clean checkstyle ktlint assembleAlphaRelease lintAlphaRelease testAlphaRelease
|
|
- name: List
|
|
run: ls -alR ./app/build/outputs/apk/
|
|
- uses: r0adkll/sign-android-release@v1
|
|
name: Sign APK
|
|
id: build_signed
|
|
with:
|
|
releaseDirectory: app/build/outputs/apk/alpha/release
|
|
signingKeyBase64: ${{ secrets.SIGNING_KEY }}
|
|
alias: ${{ secrets.KEY_STORE_ALIAS }}
|
|
keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }}
|
|
keyPassword: ${{ secrets.KEY_PASSWORD }}
|
|
env:
|
|
# override default build-tools version (29.0.3) -- optional
|
|
BUILD_TOOLS_VERSION: "34.0.0"
|
|
- name: Create hash
|
|
run: git rev-parse HEAD > app/build/outputs/apk/alpha/release/rev-hash.txt
|
|
- name: Rename APK to universal
|
|
run: mv app/build/outputs/apk/alpha/release/app-alpha-release-signed.apk app/build/outputs/apk/alpha/release/app-alpha-universal-release.apk
|
|
- uses: dev-drprasad/delete-tag-and-release@v1.1
|
|
name: Delete latest alpha tag and release
|
|
with:
|
|
tag_name: latest
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
- name: Sleep for 30 seconds, to allow the tag to be deleted
|
|
run: sleep 30s
|
|
shell: bash
|
|
- uses: ncipollo/release-action@v1.14.0
|
|
name: Create new tag and release and upload artifacts
|
|
with:
|
|
name: latest
|
|
commit: main
|
|
tag: latest
|
|
artifacts: "app/build/outputs/apk/alpha/release/app-alpha-universal-release.apk,app/build/outputs/apk/alpha/release/rev-hash.txt"
|
|
body: This is the latest Alpha version of the app (autogenerated).
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|