name: Build Release APK on: push: branches: [ "main" ] pull_request: branches: [ "main" ] jobs: build_and_release: name: Build Release APK runs-on: ubuntu-latest steps: - name: Checkout Repository uses: actions/checkout@v4 - name: Validate Gradle Wrapper uses: gradle/wrapper-validation-action@v2 - name: Set Up JDK 17 uses: actions/setup-java@v4 with: java-version: 17 distribution: temurin - name: Setup Gradle uses: gradle/gradle-build-action@v3 - name: Grant execute permission for gradlew run: chmod +x gradlew - name: Build Release APK run: ./gradlew assembleRelease - uses: ilharp/sign-android-release@v1 name: Sign app APK id: sign_app with: releaseDir: app/build/outputs/apk/release signingKey: ${{ secrets.ANDROID_SIGNING_KEY }} keyAlias: ${{ secrets.ANDROID_KEY_ALIAS }} keyStorePassword: ${{ secrets.ANDROID_KEYSTORE_PASSWORD }} keyPassword: ${{ secrets.ANDROID_KEY_PASSWORD }} buildToolsVersion: 33.0.0 - uses: actions/upload-artifact@v3 with: name: libresudoku-release.apk path: ${{steps.sign_app.outputs.signedFile}}