# 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 # # For a list of all available plugins, check out # # https://docs.fastlane.tools/plugins/available-plugins # # Uncomment the line if you want fastlane to automatically update itself # update_fastlane default_platform(:ios) platform :ios do desc "Push a new beta build to TestFlight" lane :beta do api_key = app_store_connect_api_key( key_id: ENV["APP_STORE_CONNECT_API_KEY_KEY_ID"], issuer_id: ENV["APP_STORE_CONNECT_API_KEY_ISSUER_ID"], key_content: ENV["APP_STORE_CONNECT_API_KEY_KEY"], is_key_content_base64: ENV["APP_STORE_CONNECT_API_KEY_IS_KEY_CONTENT_BASE64"], duration: 500, # maximum 1200 in_house: false # optional but may be required if using match/sigh ) # TODO: latest_testflight_build_number Not working increment_build_number( xcodeproj: "Runner.xcodeproj", build_number: latest_testflight_build_number + 1 ) re = /version:\s([0-9]*\.[0-9]*\.[0-9]*)\+[0-9]*/i config = File.read("../../pubspec.yaml") version_name = config.match(re).captures[0] increment_version_number(version_number: version_name) build_app(workspace: "Runner.xcworkspace", scheme: "Runner") upload_to_testflight( ipa: "../build/ios/ipa/pangeachat.ipa", # Verify location distribute_external: true, groups: "App Store Connect Users", changelog: "This is a release candidate for Pangea Chat. Please test if the app is overall in a good condition before we push this to production.", ) end end lane :release do capture_screenshots # generate new screenshots for the App Store sync_code_signing(type: "appstore") # see code signing guide for more information build_app(scheme: "Runner") upload_to_app_store # upload your app to App Store Connect slack(message: "Successfully uploaded a new App Store build") end