Build and publish "nightly" release artifacts #4
This file contains hidden or 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 and publish "nightly" release artifacts | |
| # Based on https://github.com/refined-github/refined-github/blob/5cda3447bf80cca0c64ae5eb79779ecd62fec18e/.github/workflows/release.yml#L30-L32 | |
| on: | |
| schedule: | |
| - cron: '15 * * * *' | |
| workflow_dispatch: | |
| permissions: | |
| contents: write | |
| jobs: | |
| AddTag: | |
| outputs: | |
| created: ${{ steps.daily-version.outputs.created }} | |
| version: ${{ steps.daily-version.outputs.version }} | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: fregante/daily-version-action@v2 | |
| name: Tag commit unless already tagged | |
| id: daily-version | |
| with: | |
| prefix: 'nightly-' | |
| BuildAndRelease: | |
| needs: AddTag | |
| if: github.event_name == 'workflow_dispatch' || needs.AddTag.outputs.created | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Get version name | |
| run: echo "VERSION=${{ needs.AddTag.outputs.version }}" >> $GITHUB_ENV | |
| - name: Setup Java | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: temurin | |
| java-version: 17 | |
| - name: Setup Gradle | |
| uses: gradle/actions/setup-gradle@v4 | |
| - 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 | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| files: | | |
| **/*.apk | |
| **/*.aab | |
| make_latest: false |