diff --git a/.github/workflows/android.yaml b/.github/workflows/android.yaml index 8c601a4..7458eb5 100644 --- a/.github/workflows/android.yaml +++ b/.github/workflows/android.yaml @@ -5,11 +5,6 @@ on: branches: - master pull_request: - workflow_dispatch: - -env: - MODULE: donextv2 - BUILD_DIR: donextv2/build/outputs/bundle/release jobs: build: @@ -17,7 +12,7 @@ jobs: steps: - name: Checkout repo - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up JDK 17 uses: actions/setup-java@v3 @@ -39,37 +34,18 @@ jobs: restore-keys: | ${{ runner.os }}-gradle- - - name: Run unit tests - run: ./gradlew :${{ env.MODULE }}:testDebugUnitTest --stacktrace - - - name: Build AAB - run: ./gradlew :${{ env.MODULE }}:bundleRelease - - - name: Upload artifact - uses: actions/upload-artifact@v4 + - name: Set up Ruby + uses: ruby/setup-ruby@v1 with: - name: release-aab - path: ${{ env.BUILD_DIR }}/*release*.aab + ruby-version: 3.1 - deploy-google-play: - needs: build - if: github.event_name == 'workflow_dispatch' - runs-on: ubuntu-latest + - name: Install Fastlane + run: gem install fastlane -NV - steps: - - name: Download artifact - uses: actions/download-artifact@v4 - with: - name: release-aab - path: release + - name: Configure Google credentials + run: echo '${{ secrets.GOOGLE_PLAY_SERVICE_ACCOUNT_JSON }}' > service-account.json - - name: Deploy to Google Play (production) - uses: r0adkll/upload-google-play@v1 - with: - serviceAccountJsonPlainText: ${{ secrets.GOOGLE_PLAY_SERVICE_ACCOUNT_JSON }} - packageName: com.wismna.geoffroy.donext - releaseFiles: release/${{ env.MODULE }}-release.aab - track: beta - metadataRootDirectory: fastlane/metadata/android - whatsNewDirectory: fastlane/metadata/android/en-US/changelogs - status: completed \ No newline at end of file + - name: Run Fastlane + env: + SUPPLY_JSON_KEY: service-account.json + run: fastlane internal \ No newline at end of file diff --git a/Gemfile b/Gemfile index 7a118b4..fb3b5d2 100644 --- a/Gemfile +++ b/Gemfile @@ -1,3 +1,4 @@ source "https://rubygems.org" gem "fastlane" +gem 'abbrev' \ No newline at end of file diff --git a/fastlane/Appfile b/fastlane/Appfile index 41174e6..dc87d6e 100644 --- a/fastlane/Appfile +++ b/fastlane/Appfile @@ -1,2 +1,2 @@ -json_key_file("./fastlane/keys/donext-f9e67-5038064982b0") +json_key_file(ENV["SUPPLY_JSON_KEY"] || "./fastlane/keys/donext-f9e67-5038064982b0") package_name("com.wismna.geoffroy.donext") diff --git a/fastlane/Fastfile b/fastlane/Fastfile index 912cd57..4c72b66 100644 --- a/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -1,26 +1,23 @@ default_platform(:android) platform :android do - desc "Run all unit tests" - lane :test do - gradle(task: "testDebugUnitTest") - end - - desc "Build a release APK or AAB for beta testing" - lane :beta do - gradle(task: "clean bundleRelease") - upload_to_play_store( - track: "beta", - aab: "app/build/outputs/bundle/release/app-release.aab" - ) - end - - desc "Deploy the production version to Google Play" + desc "Build, test, and deploy the production version to Google Play" lane :deploy do - gradle(task: "clean bundleRelease") + gradle(task: "testDebugUnitTest") + gradle(task: "clean :donextv2:bundleRelease") upload_to_play_store( track: "production", - aab: "app/build/outputs/bundle/release/app-release.aab" + aab: "donextv2/build/outputs/bundle/release/donextv2-release.aab" ) end -end + + desc "Build, test, and deploy to Google Play" + lane :internal do + gradle(task: "testDebugUnitTest") + gradle(task: "clean :donextv2:bundleRelease") + upload_to_play_store( + track: "internal", + aab: "donextv2/build/outputs/bundle/release/donextv2-release.aab" + ) + end +end \ No newline at end of file