# Uncomment the line if you want fastlane to automatically update itself
# update_fastlane

default_platform(:android)

platform :android do

  desc "Deploy a new version to closed testing"
  lane :deploy_testing do
    build_name = ENV["BUILD_NAME"]
    build_number = ENV["BUILD_NUMBER"]

    sh(
      "flutter",
      "build",
      "appbundle",
      "--release",
      "--build-name=#{build_name}",
      "--build-number=#{build_number}",
      )
    
    upload_to_play_store(
      track: 'alpha',
      skip_upload_apk: true,
      skip_upload_changelogs: true,
      aab: "../build/app/outputs/bundle/release/app-release.aab",
      # this is the default output of flutter build ... --release
      # in particular this the build folder lies in the flutter root folder
      # this is the parent folder for the android folder
      )
  end

  desc "Deploy a new version as a full release"
  lane :deploy_release do
    gradle(
      task: "clean assembleRelease",
      # todo update to a flutter call
      properties: {
        # loaded from environment
        "android.injected.version.name" => ENV["VERSION_NAME"],
      }
      )
    upload_to_play_store(
      track: "production",
      skip_upload_apk: true,
      skip_upload_changelogs: true,
      aab: "../build/app/outputs/bundle/release/app-release.aab",
      # this is the default output of flutter build ... --release
      # in particular this the build folder lies in the flutter root folder
      # this is the parent folder for the android folder
    )
  end
end