ci(workflow): update GitHub workflow for prerelease handling and rele… #73
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: Pre-release CI | |
on: | |
push: | |
branches: | |
- master | |
permissions: | |
contents: write | |
concurrency: | |
group: "pre-release" | |
cancel-in-progress: true | |
jobs: | |
build: | |
name: Build app | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Validate Gradle Wrapper | |
uses: gradle/wrapper-validation-action@v1 | |
- name: Setup Android SDK | |
run: | | |
${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin/sdkmanager "build-tools;29.0.3" | |
- name: Set up JDK | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
distribution: adopt | |
- name: Build release artifacts | |
uses: gradle/gradle-command-action@v2 | |
with: | |
arguments: assembleRelease bundleReleaseClassesToCompileJar | |
- name: Generate class stubs | |
uses: gradle/gradle-command-action@v2 | |
with: | |
arguments: generateStubsJar | |
- name: Sign release APK | |
uses: r0adkll/sign-android-release@v1 | |
with: | |
releaseDirectory: app/build/outputs/apk/release | |
signingKeyBase64: ${{ secrets.SIGNING_KEY }} | |
alias: ${{ secrets.ALIAS }} | |
keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }} | |
keyPassword: ${{ secrets.KEY_PASSWORD }} | |
- name: Clean up build artifacts | |
run: | | |
set -e | |
mv app/build/outputs/apk/release/app-release-unsigned-signed.apk flixclusive-release.apk | |
- name: Delete old pre-release | |
uses: cb80/delrel@latest | |
with: | |
tag: pre-release | |
token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Get soon-latest version | |
run: | | |
chmod +x .github/parse_version.sh | |
version=$(.github/parse_version.sh) | |
echo "Version: $version" | |
echo "VERSION=$version" >> $GITHUB_ENV | |
- name: Upload pre-release | |
uses: softprops/action-gh-release@v2 | |
with: | |
tag_name: pre-release | |
name: Pre-release for v${{ env.VERSION }} | |
body: | | |
##### _NOTE: Android TV is incomplete, the providers on this port are not yet installable. Though, you could test it now._ | |
--- | |
## Known issues | |
- TV focus crashes. Compose TV is bugged af; we wait til the new update. | |
--- | |
files: | | |
flixclusive-release.apk | |
app/build/classes.jar | |
draft: false | |
prerelease: true | |
generate_release_notes: true | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |