diff --git a/.github/workflows/build_and_deploy_beta.yml b/.github/workflows/build_and_deploy_beta.yml new file mode 100644 index 00000000..1ff87751 --- /dev/null +++ b/.github/workflows/build_and_deploy_beta.yml @@ -0,0 +1,46 @@ +name: Build and deploy + +on: + workflow_dispatch: + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK + uses: actions/setup-java@v2 + with: + java-version: 21 + distribution: temurin + + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: 3.3.0 + bundler-cache: true + + - name: Set up Android SDK + uses: android-actions/setup-android@v3 + + - name: Decode keystore + uses: timheuer/base64-to-file@v1 + id: android_keystore + with: + fileName: "release.jks" + encodedString: ${{ secrets.KEYSTORE_FILE }} + + - name: Prepare Gradle environment + run: | + echo "apply from: 'ci_signing.gradle'" >> mastodon/build.gradle + echo "sdk.dir=$ANDROID_SDK_ROOT" > local.properties + + - name: Build and deploy beta to Google Play + run: bundle exec fastlane beta + env: + KEYSTORE_FILE: ${{ steps.android_keystore.outputs.filePath }} + KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }} + SUPPLY_JSON_KEY_DATA: ${{ secrets.GOOGLE_SERVICE_ACCOUNT_KEY }} + SUPPLY_SKIP_UPLOAD_METADATA: true + SUPPLY_SKIP_UPLOAD_CHANGELOGS: true \ No newline at end of file diff --git a/fastlane/Fastfile b/fastlane/Fastfile index 203df116..9d5dd242 100644 --- a/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -33,4 +33,15 @@ platform :android do skip_upload_screenshots: true ) end + lane :beta do + gradle( + task: "bundle", + build_type: "release", + ) + upload_to_play_store( + track: "beta", + skip_upload_images: true, + skip_upload_screenshots: true + ) + end end