# This file contains the fastlane.tools configuration # You can find the documentation at https://docs.fastlane.tools # # For a list of all available actions, check out # # https://docs.fastlane.tools/actions # # Uncomment the line if you want fastlane to automatically update itself # update_fastlane default_platform(:android) platform :android do desc "Runs all the tests" lane :tests do gradle(task: "test") end desc "Build a new version" lane :build do |options| gradle( task: "assemble", flavor: options[:flavor], build_type: "Release", print_command: false, properties: { "android.injected.signing.store.file" => options[:storefile], "android.injected.signing.store.password" => options[:storepass], "android.injected.signing.key.alias" => options[:keyalias], "android.injected.signing.key.password" => options[:keypass], } ) sh("mkdir", "-p", "../releases") @releaseFile = "../releases/KeePassDX-" + android_get_version_name + "-" + options[:flavor] + ".apk" sh("cp", "../app/build/outputs/apk/" + options[:flavor] + "/release/app-" + options[:flavor] + "-release.apk", @releaseFile) end desc "Build each flavor and create release" lane :build_release do |options| build(flavor: "free", storefile: options[:storefile], storepass: options[:storepass], keyalias: options[:keyalias], keypass: options[:keypass]) build(flavor: "libre", storefile: options[:storefile], storepass: options[:storepass], keyalias: options[:keyalias], keypass: options[:keypass]) sh("./releaseDescGenerator.sh", android_get_version_code, android_get_version_name) end desc "Deploy a new Free Beta version to the Google Play" lane :deploy_beta_free do upload_to_play_store( track: "beta", skip_upload_metadata: "true", skip_upload_images: "true", skip_upload_screenshots: "true", apk: "./app/build/outputs/apk/free/release/app-free-release.apk", validate_only: "false", ) gradle( task: 'clean' ) end end