Build release artifacts and draft Github release #29
Workflow file for this run
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: Build release artifacts and draft Github release | |
on: | |
# Trigger by pushing a version tag (which are protected) | |
push: | |
tags: | |
- 'v*.*.*' | |
- '!v*.*.*-*' | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
permissions: | |
contents: write | |
jobs: | |
build-release: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: Get version name from git tag | |
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_ENV | |
- name: Setup Java | |
uses: actions/setup-java@v4 | |
with: | |
distribution: temurin | |
java-version: 17 | |
- name: Setup Gradle | |
uses: gradle/actions/setup-gradle@v3 | |
- name: Setup build tool version variable | |
shell: bash | |
run: | | |
BUILD_TOOL_VERSION=$(ls /usr/local/lib/android/sdk/build-tools/ | tail -n 1) | |
echo "BUILD_TOOL_VERSION=$BUILD_TOOL_VERSION" >> $GITHUB_ENV | |
echo Last build tool version is: $BUILD_TOOL_VERSION | |
# F-Droid APK | |
- name: Assemble F-Droid APK | |
run: ./gradlew assembleFdroidRelease --stacktrace | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Sign F-Droid APK | |
uses: r0adkll/sign-android-release@v1 | |
id: sign_fdroid_apk | |
with: | |
releaseDirectory: app/build/outputs/apk/fdroid/release | |
signingKeyBase64: ${{ secrets.APK_SIGNING_KEYSTORE_FILE }} | |
alias: orgzly-revived-20231013 | |
keyStorePassword: ${{ secrets.APK_SIGNING_KEYSTORE_PASSWORD }} | |
env: | |
BUILD_TOOLS_VERSION: ${{ env.BUILD_TOOL_VERSION }} | |
- name: Rename F-Droid APK file | |
run: mv ${{steps.sign_fdroid_apk.outputs.signedReleaseFile}} orgzly-revived-fdroid-${{ env.VERSION }}.apk | |
# "Premium" APK | |
- name: Add Dropbox app identifier | |
shell: bash | |
run: | | |
echo "dropbox.app_key = \"${{ secrets.DROPBOX_APP_KEY }}\"" >> app.properties | |
echo "dropbox.app_key_schema = \"db-${{ secrets.DROPBOX_APP_KEY }}\"" >> app.properties | |
- name: Assemble "premium" APK | |
run: ./gradlew assemblePremiumRelease --stacktrace | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Sign "premium" APK | |
uses: r0adkll/sign-android-release@v1 | |
id: sign_premium_apk | |
with: | |
releaseDirectory: app/build/outputs/apk/premium/release | |
signingKeyBase64: ${{ secrets.APK_SIGNING_KEYSTORE_FILE }} | |
alias: orgzly-revived-20231013 | |
keyStorePassword: ${{ secrets.APK_SIGNING_KEYSTORE_PASSWORD }} | |
env: | |
BUILD_TOOLS_VERSION: ${{ env.BUILD_TOOL_VERSION }} | |
- name: Rename "premium" APK file | |
run: mv ${{steps.sign_premium_apk.outputs.signedReleaseFile}} orgzly-revived-${{ env.VERSION }}.apk | |
# "Premium" AAB | |
- name: Assemble "premium" AAB | |
run: ./gradlew bundlePremiumRelease --stacktrace | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Sign "premium" AAB | |
uses: r0adkll/sign-android-release@v1 | |
id: sign_premium_aab | |
with: | |
releaseDirectory: app/build/outputs/bundle/premiumRelease | |
signingKeyBase64: ${{ secrets.APK_SIGNING_KEYSTORE_FILE }} | |
alias: orgzly-revived-20231013 | |
keyStorePassword: ${{ secrets.APK_SIGNING_KEYSTORE_PASSWORD }} | |
env: | |
BUILD_TOOLS_VERSION: ${{ env.BUILD_TOOL_VERSION }} | |
- name: Rename "premium" AAB file | |
run: mv ${{steps.sign_premium_aab.outputs.signedReleaseFile}} orgzly-revived-${{ env.VERSION }}.aab | |
- name: Upload artifacts and create Github release draft | |
uses: softprops/action-gh-release@v1 | |
with: | |
files: | | |
*.apk | |
*.aab | |
draft: true |