name: Build Release on: push: tags: - v* jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - uses: actions/setup-java@v3 with: distribution: 'adopt' java-version: '17' cache: 'gradle' - uses: actions/cache@v3 with: path: | ~/.gradle/caches ~/.gradle/wrapper key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} restore-keys: | ${{ runner.os }}-gradle- - run: chmod 777 ./gradlew - run: ./gradlew build - name: Upload Asset uses: actions/upload-artifact@v3 with: name: app-release.apk path: app/build/outputs/apk/release/app-release.apk release: needs: build permissions: write-all runs-on: ubuntu-latest steps: - name: Download Asset uses: actions/download-artifact@v3 with: name: app-release.apk - name: Create Release id: create_release uses: actions/create-release@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tag_name: ${{ github.ref }} release_name: Release ${{ github.ref }} - name: Upload Release Asset id: upload-release-asset uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} asset_path: app-release.apk asset_name: app-release-${{ github.ref_name }}.apk asset_content_type: application/vnd.android.package-archive