name: Upload orangeRelease to Google Play on: workflow_dispatch: jobs: build: name: Build runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4 with: fetch-depth: 0 - uses: ./.github/actions/setup-build-env with: gradle-cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }} - name: Test run: ./gradlew app:testOrangeGoogleReleaseUnitTest --stacktrace - name: Build APK run: ./gradlew assembleOrangeGoogleRelease --stacktrace - name: Build AAB run: ./gradlew :app:bundleOrangeGoogleRelease --stacktrace - uses: r0adkll/sign-android-release@dbeba6b98a60b0fd540c02443c7f428cdedf0e7f # v1.0.4 name: Sign app APK id: sign_app_apk with: releaseDirectory: app/build/outputs/apk/orangeGoogle/release signingKeyBase64: ${{ secrets.SIGNING_KEY }} alias: ${{ secrets.SIGNING_KEY_ALIAS }} keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }} keyPassword: ${{ secrets.KEY_PASSWORD }} env: BUILD_TOOLS_VERSION: "34.0.0" - uses: r0adkll/sign-android-release@dbeba6b98a60b0fd540c02443c7f428cdedf0e7f # v1.0.4 name: Sign app AAB id: sign_app_aab with: releaseDirectory: app/build/outputs/bundle/orangeGoogleRelease signingKeyBase64: ${{ secrets.SIGNING_KEY }} alias: ${{ secrets.SIGNING_KEY_ALIAS }} keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }} keyPassword: ${{ secrets.KEY_PASSWORD }} env: BUILD_TOOLS_VERSION: "34.0.0" - name: Upload APK Release Asset id: upload-release-asset-apk uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4 with: name: app-release.apk path: ${{steps.sign_app_apk.outputs.signedReleaseFile}} compression-level: 0 - name: Generate whatsnew id: generate-whatsnew run: | mkdir -p googleplay/whatsnew git log -1 --pretty=format:"%s" > googleplay/whatsnew/whatsnew-en-US - name: Upload AAB to Google Play id: upload-release-asset-aab uses: r0adkll/upload-google-play@935ef9c68bb393a8e6116b1575626a7f5be3a7fb # v1.1.3 with: serviceAccountJsonPlainText: ${{ secrets.PLAY_SERVICE_ACCOUNT_KEY }} packageName: app.pachli.current releaseFiles: ${{steps.sign_app_aab.outputs.signedReleaseFile}} track: production whatsNewDirectory: googleplay/whatsnew status: completed mappingFile: app/build/outputs/mapping/orangeGoogleRelease/mapping.txt