75 lines
2.5 KiB
YAML
75 lines
2.5 KiB
YAML
name: Build release APK
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
push:
|
|
branches:
|
|
- 11-alpha
|
|
|
|
jobs:
|
|
send-start-notification:
|
|
runs-on: ubuntu-latest
|
|
continue-on-error: true
|
|
steps:
|
|
- name: Send start notification
|
|
uses: appleboy/telegram-action@v0.1.0
|
|
with:
|
|
to: ${{ secrets.TELEGRAM_CI_CHANNEL_ID }}
|
|
token: ${{ secrets.TELEGRAM_CI_BOT_TOKEN }}
|
|
message: New push to “11-alpha”. Building release APK…
|
|
build-release-apk:
|
|
runs-on: ubuntu-latest
|
|
needs: send-start-notification
|
|
continue-on-error: true
|
|
steps:
|
|
- name: Check out repository
|
|
uses: actions/checkout@v2.3.4
|
|
with:
|
|
submodules: true
|
|
- name: Restore Gradle cache
|
|
uses: actions/cache@v2.1.4
|
|
with:
|
|
path: |
|
|
~/.gradle/caches
|
|
~/.gradle/wrapper
|
|
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
|
|
restore-keys: ${{ runner.os }}-gradle-
|
|
- name: Set up Java 11
|
|
uses: actions/setup-java@v1.4.3
|
|
with:
|
|
java-version: 11
|
|
- name: Grant execution permission to Gradle Wrapper
|
|
run: chmod +x gradlew
|
|
- name: Build release APK
|
|
run: ./gradlew assembleLawnWithQuickstepRelease
|
|
- name: Sign release APK
|
|
uses: r0adkll/sign-android-release@v1
|
|
id: sign-release-apk
|
|
with:
|
|
releaseDirectory: build/outputs/apk/lawnWithQuickstep/release
|
|
signingKeyBase64: ${{ secrets.KEYSTORE }}
|
|
alias: ${{ secrets.KEY_ALIAS }}
|
|
keyStorePassword: ${{ secrets.KEYSTORE_PASSWORD }}
|
|
keyPassword: ${{ secrets.KEY_PASSWORD }}
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: Release APK
|
|
path: ${{ steps.sign-release-apk.outputs.signedReleaseFile }}
|
|
send-end-notification:
|
|
runs-on: ubuntu-latest
|
|
needs: build-release-apk
|
|
steps:
|
|
- name: Download artifact
|
|
uses: actions/download-artifact@v2
|
|
with:
|
|
name: Release APK
|
|
path: artifacts/release-apk
|
|
- uses: technote-space/workflow-conclusion-action@v2.1.5
|
|
- name: Send notification
|
|
uses: appleboy/telegram-action@v0.1.0
|
|
with:
|
|
to: ${{ secrets.TELEGRAM_CI_CHANNEL_ID }}
|
|
token: ${{ secrets.TELEGRAM_CI_BOT_TOKEN }}
|
|
document: artifacts/release-apk/**.apk
|
|
message: Build finished with status “${{ env.WORKFLOW_CONCLUSION }}”. Uploading APK if available… |