default_platform(:android) platform :android do desc "Build, test, and deploy to Google Play" lane :internal do module_name = ENV["MODULE"] || "donextv2" # Read local versionCode gradle_file = File.read("#{module_name}/build.gradle.kts") gradle_version = gradle_file[/versionCode\s*=\s*(\d+)/, 1].to_i # Read Play Store versionCode (track internal) play_version = google_play_track_version_codes( track: "internal" ).max.to_i if gradle_version <= play_version UI.user_error!("VersionCode #{gradle_version} should be higher than Play Store version (#{play_version}). Aborting upload.") end gradle(task: "testDebugUnitTest") gradle(task: "clean :#{module_name}:bundleRelease") upload_to_play_store( track: "internal", aab: "#{module_name}/build/outputs/bundle/release/#{module_name}-release.aab" ) end end