App Automation done right - in Javascript!
A Javascript/Typescript interface generated automatically from the excellent Fastlane project
The path to your adb
binary (can be left blank if the ANDROID_SDK_ROOT environment variable is set)
Shape for adb options argument
The path to your adb
binary (can be left blank if the ANDROID_SDK_ROOT, ANDROID_HOME or ANDROID_SDK environment variable is set)
All commands you want to pass to the adb command, e.g. kill-server
Android serial of the device to use for this command
Shape for addExtraPlatforms options argument
The optional extra platforms to support
Shape for addGitTag options argument
The build number. Defaults to the result of increment_build_number if you're using it
The commit or object where the tag will be set. Defaults to the current HEAD
Force adding the tag
Is used to keep your tags organised under one 'folder'
Whether the current lane should be included in the tag and message composition, e.g. '
The tag message. Defaults to the tag's name
Anything you want to put at the end of the version number (e.g. '-RC1')
Anything you want to put in front of the version number (e.g. 'v')
Make a GPG-signed tag, using the default e-mail address's key
Define your own tag text. This will replace all other parameters
Shape for appStoreBuildNumber options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The bundle identifier of your app
sets the build number to given value if no build is in current train
Query the live version (ready-for-sale)
The platform to use (optional)
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
Your Apple ID Username
The version number whose latest build number we want
Shape for appStoreConnectApiKey options argument
The token session duration
Is App Store or Enterprise (in house) team? App Store Connect API cannot determine this on its own (yet)
Whether :key_content is Base64 encoded or not
The issuer ID
The content of the key p8 file
The path to the key p8 file
The key ID
Authorizes all Spaceship::ConnectAPI requests by automatically setting Spaceship::ConnectAPI.token
Shape for appaloosa options argument
Your API token
Binary path. Optional for ipa if you use the ipa
or xcodebuild
action
Your app changelog
Your app description
Select the device format for your screenshots
Your app is limited to special users? Give us the group ids
Select the folder locale for your screenshots
Add some screenshots application to your store or hit [enter]
Your Store id
Shape for appetize options argument
Appetize API host
Appetize.io API Token
Notes you wish to add to the uploaded app
Path to zipped build on the local filesystem. Either this or url
must be specified
Platform. Either ios
or android
If not provided, a new app will be created. If provided, the existing build will be overwritten
The number of seconds to wait until automatically ending the session due to user inactivity. Must be 30, 60, 90, 120, 180, 300, 600, 1800, 3600 or 7200. Default is 120
URL from which the ipa file can be fetched. Alternative to :path
Shape for appetizeViewingUrlGenerator options argument
Base URL of Appetize service
Color of the device
Device type: iphone4s, iphone5s, iphone6, iphone6plus, ipadair, iphone6s, iphone6splus, ipadair2, nexus5, nexus7 or nexus9
Device language in ISO 639-1 language code, e.g. 'de'
Specify a deep link to open when your app is launched
Device orientation
The operating system version on which to run your app, e.g. 10.3, 8.0
Specify params value to be passed to Appetize
Specify a HTTP proxy to be passed to Appetize
Public key of the app you wish to update
Scale of the simulator
Shape for appium options argument
Path to Appium target app file
Hash of appium_lib for Appium::Driver
Path to Appium executable
Hash of caps for Appium::Driver
Hostname of Appium server
Use local Appium server with invoke automatically
Appium platform name
HTTP port of Appium server
Path to Appium spec directory
Shape for appledoc options argument
Remove contents of output path before starting
Company UTI (i.e. reverse DNS name)
Create documentation set
Create HTML
Cross reference template regex
Title of the documentation section (defaults to "Programming Guides"
DocSet atom feed filename
DocSet bundle filename
DocSet bundle identifier
DocSet bundle name
DocSet certificate issuer
DocSet certificate signer
DocSet copyright message
DocSet description
DocSet fallback URL
DocSet feed formats. Separated by a comma [atom,xml]
DocSet feed name
DocSet feed URL
DocSet installation path
DocSet min. Xcode version
DocSet package (.xar,.tgz) filename
DocSet package (.xar) URL
DocSet platform family
DocSet publisher identifier
DocSet publisher name
DocSet xml feed filename
Exclude given path from output
Exit code threshold below which 0 is returned
The html anchor format to use in DocSet HTML
Ignore given path
Include static doc(s) at path
File including main index description
Path(s) to source file directories or individual source files. Accepts a single path or an array of paths
Install documentation set to Xcode
Log format [0-3]
Create HTML and skip creating a DocSet
Documentation generation options
Output path
Project company
Project name
Project version
Prepare DocSet for publishing
Template files path
Log verbosity level [0-6,xcode]
Documentation generation warnings
Shape for appstore options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The (spaceship) app ID of the app you want to use/modify
DEPRECATED! Removed after the migration to the new App Store Connect API in June 2020 - Metadata: The path to the app icon
The bundle identifier of your app
Path to the app rating's config
Metadata: Path to the app review attachment file
Metadata: A hash containing the review information
The version that should be edited or created
Metadata: Localised Apple TV privacy policy text
DEPRECATED! Removed after the migration to the new App Store Connect API in June 2020 - Metadata: The path to the Apple Watch app icon
Date in milliseconds for automatically releasing on pending approval (Cannot be used together with automatic_release
)
Should the app be automatically released once it's approved? (Cannot be used together with auto_release_date
)
If set the given build number (already uploaded to iTC) will be used instead of the current built one
Metadata: The copyright notice
Metadata: The localised app description
The short ID of your Developer Portal team, if you're in multiple teams. Different from your iTC team ID!
The name of your Developer Portal team if you're in multiple teams
Modify live metadata, this option disables ipa upload and screenshot upload
Skip verification of HTML preview file
Ignore errors when invalid languages are found in metadata and screenshot directories
DEPRECATED! Removed after the migration to the new App Store Connect API in June 2020 - An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow
Path to your ipa file
The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off
. The short names of providers should be listed in the second column
Metadata: An array of localised keywords
Metadata: List of languages to activate
Metadata: Localised marketing url
Path to the folder containing the metadata files
Metadata: The localised app name
Clear all previously uploaded screenshots before uploading the new ones
Enable the phased release feature of iTC
Path to your pkg file
The platform to use (optional)
The default precheck rule level unless otherwise configured
Should precheck check in-app purchases?
The price tier of this application
Metadata: The english name of the primary category (e.g. Business
, Books
)
Metadata: The english name of the primary first sub category (e.g. Educational
, Puzzle
)
Metadata: The english name of the primary second sub category (e.g. Educational
, Puzzle
)
Metadata: Localised privacy url
Metadata: An array of localised promotional texts
Rejects the previously submitted build if it's in a state where it's possible
Metadata: Localised release notes for this version
Reset the summary rating when you release a new version of the application
Run precheck before submitting to app review
Timeout in seconds to wait before considering screenshot processing as failed, used to handle cases where uploads to the App Store are stuck in processing
Path to the folder containing the screenshots
Metadata: The english name of the secondary category (e.g. Business
, Books
)
Metadata: The english name of the secondary first sub category (e.g. Educational
, Puzzle
)
Metadata: The english name of the secondary second sub category (e.g. Educational
, Puzzle
)
Don’t create or update the app version that is being prepared for submission
Skip uploading an ipa or pkg to App Store Connect
Don't upload the metadata (e.g. title, description). This will still upload screenshots
Don't upload the screenshots
Extra information for the submission (e.g. compliance specifications, IDFA settings)
Submit the new version for Review after uploading everything
Metadata: The localised app subtitle
Metadata: Localised support url
Sync screenshots with local ones. This is currently beta option so set true to 'FASTLANE_ENABLE_BETA_DELIVER_SYNC_SCREENSHOTS' environment variable as well
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
DEPRECATED! This is no longer used by App Store Connect - Metadata: A hash containing the trade representative contact information
Force usage of live version rather than edit version
Your Apple ID Username
Verifies archive with App Store Connect without uploading
After submitting a new version, App Store Connect takes some time to recognize the new version and we must wait until it's available before attempting to upload metadata for it. There is a mechanism that will check if it's available and retry with an exponential backoff if it's not available yet. This option specifies how many times we should retry before giving up. Setting this to a value below 5 is not recommended and will likely cause failures. Increase this parameter when Apple servers seem to be degraded or slow
Shape for apteligent options argument
Apteligent App API key e.g. IXPQIi8yCbHaLliqzRoo065tH0lxxxxx
Apteligent App ID key e.g. 569f5c87cb99e10e00c7xxxx
dSYM.zip file to upload to Apteligent
Shape for artifactory options argument
Artifactory API key
Artifactory endpoint
File to be uploaded to artifactory
Artifactory password
Artifact properties hash
Proxy address
Proxy password
Proxy port
Proxy username
Read timeout
Artifactory repo to put the file in
Path to deploy within the repo, including filename
Location of pem file to use for ssl verification
Verify SSL
Artifactory username
Shape for automaticCodeSigning options argument
Application Product Bundle Identifier
Code signing identity type (iPhone Developer, iPhone Distribution)
Path to your Xcode project
Provisioning profile name to use for code signing
Provisioning profile UUID to use for code signing
Specify targets you want to toggle the signing mech. (default to all targets)
Team ID, is used when upgrading project
Defines if project should use automatic signing
Shape for backupFile options argument
Path to the file you want to backup
Shape for backupXcarchive options argument
Where your archive will be placed
Create a versioned (date and app version) subfolder where to put the archive
Path to your xcarchive file. Optional if you use the xcodebuild
action
Enable compression of the archive
Filename of the compressed archive. Will be appended by .xcarchive.zip
. Default value is the output xcarchive filename
Shape for badge options argument
Adds and alpha badge instead of the default beta one
Keeps/adds an alpha channel to the icon (useful for android icons)
Add your custom overlay/badge image
Adds a dark flavored badge on top of your icon
Glob pattern for finding image files
Hides the beta badge
Sets the root path to look for AppIcons
Add a shield to your app icon from shields.io
Position of shield on icon. Default: North - Choices include: NorthWest, North, NorthEast, West, Center, East, SouthWest, South, SouthEast
Set custom duration for the timeout of the shields.io request in seconds
Shield image will no longer be resized to aspect fill the full icon. Instead it will only be shrunk to not exceed the icon graphic
Shape for buildAndUploadToAppetize options argument
Appetize.io API Token
Notes you wish to add to the uploaded app
If not provided, a new app will be created. If provided, the existing build will be overwritten
The scheme to build. Can also be passed using the xcodebuild
parameter
The number of seconds to wait until automatically ending the session due to user inactivity. Must be 30, 60, 90, 120, 180, 300, 600, 1800, 3600 or 7200. Default is 120
Parameters that are passed to the xcodebuild action
Shape for buildAndroidApp options argument
The build type that you want the task for, e.g. Release
. Useful for some tasks such as assemble
All parameter flags you want to pass to the gradle command, e.g. --exitcode --xml file.xml
The flavor that you want the task for, e.g. MyFlavor
. If you are running the assemble
task in a multi-flavor project, and you rely on Actions.lane_context[SharedValues::GRADLE_APK_OUTPUT_PATH] then you must specify a flavor here or else this value will be undefined
The path to your gradlew
. If you specify a relative path, it is assumed to be relative to the project_dir
Control whether the generated Gradle command is printed as output before running it (true/false)
Control whether the output produced by given Gradle command is printed while running (true/false)
The root directory of the gradle project
Gradle properties to be exposed to the gradle script
Android serial, which device should be used for this command
Gradle system properties to be exposed to the gradle script
The gradle task you want to execute, e.g. assemble
, bundle
or test
. For tasks such as assembleMyFlavorRelease
you should use gradle(task: 'assemble', flavor: 'Myflavor', build_type: 'Release')
The multiple gradle tasks that you want to execute, e.g. [assembleDebug, bundleDebug]
Shape for buildApp options argument
Analyze the project build time and store the output in 'culprits.txt' file
The path to the created archive
The directory in which the archive should be stored in
Create a build timing summary
The directory where to store the build log
Platform to build when using a Catalyst enabled app. Valid values are: ios, macos
Should the project be cleaned before building it?
Sets a custom path for Swift Package Manager dependencies
The name of the code signing identity to use. It has to match the name exactly. e.g. 'iPhone Distribution: SunApps GmbH'
The configuration to use when building the app. Defaults to 'Release'
The directory where built products and other derived data will go
Use a custom destination for building the app
Prevents packages from automatically being resolved to versions other than those recorded in the Package.resolved
file
DEPRECATED! Use xcodebuild_formatter: ''
instead - Disable xcpretty formatting of build output
Method used to export the archive. Valid values are: app-store, validation, ad-hoc, package, enterprise, development, developer-id and mac-application
Path to an export options plist or a hash with export options. Use 'xcodebuild -help' to print the full set of available options
Optional: Sometimes you need to specify a team id when exporting the ipa file
Pass additional arguments to xcodebuild for the package phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
Should the ipa file include bitcode?
Should the ipa file include symbols?
Full name of 3rd Party Mac Developer Installer or Developer ID Installer certificate. Example: 3rd Party Mac Developer Installer: Your Company (ABC1234XWYZ)
The directory in which the ipa file should be stored in
The name of the resulting ipa file
Path to the project file
Should an Xcode result bundle be generated in the output directory
Path to the result bundle directory to create. Ignored if result_bundle
if false
The project's scheme. Make sure it's marked as Shared
The SDK that should be used for building the application
Hide all information that's not necessary while building
After building, don't archive, effectively not including -archivePath param
Export ipa from previously built xcarchive. Uses archive_path as source
Build without codesigning
Skips resolution of Swift Package Manager dependencies
Should we skip packaging the ipa?
Should we skip packaging the pkg?
Do not try to build a profile mapping from the xcodeproj. Match or a manually provided mapping should be used
Suppress the output of xcodebuild to stdout. Output is still saved in buildlog_path
The toolchain that should be used for building the application (e.g. com.apple.dt.toolchain.Swift_2_3, org.swift.30p620160816a)
Lets xcodebuild use system's scm configuration
Path to the workspace file
Pass additional arguments to xcodebuild for the build phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
Use an extra XCCONFIG file to build your app
Allows for override of the default xcodebuild
command
xcodebuild formatter to use (ex: 'xcbeautify', 'xcbeautify --quieter', 'xcpretty', 'xcpretty -test'). Use empty string (ex: '') to disable any formatter (More information: https://docs.fastlane.tools/best-practices/xcodebuild-formatters/)
A custom xcpretty formatter to use
Have xcpretty create a simple HTML report at the provided path
Have xcpretty create a JSON compilation database at the provided path
Have xcpretty create a JUnit-style XML report at the provided path
Use the test (RSpec style) format for build output
Have xcpretty use unicode encoding when reporting builds
Shape for buildIosApp options argument
Analyze the project build time and store the output in 'culprits.txt' file
The path to the created archive
The directory in which the archive should be stored in
Create a build timing summary
The directory where to store the build log
Should the project be cleaned before building it?
Sets a custom path for Swift Package Manager dependencies
The name of the code signing identity to use. It has to match the name exactly. e.g. 'iPhone Distribution: SunApps GmbH'
The configuration to use when building the app. Defaults to 'Release'
The directory where built products and other derived data will go
Use a custom destination for building the app
Prevents packages from automatically being resolved to versions other than those recorded in the Package.resolved
file
DEPRECATED! Use xcodebuild_formatter: ''
instead - Disable xcpretty formatting of build output
Method used to export the archive. Valid values are: app-store, validation, ad-hoc, package, enterprise, development, developer-id and mac-application
Path to an export options plist or a hash with export options. Use 'xcodebuild -help' to print the full set of available options
Optional: Sometimes you need to specify a team id when exporting the ipa file
Pass additional arguments to xcodebuild for the package phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
Should the ipa file include bitcode?
Should the ipa file include symbols?
The directory in which the ipa file should be stored in
The name of the resulting ipa file
Path to the project file
Should an Xcode result bundle be generated in the output directory
Path to the result bundle directory to create. Ignored if result_bundle
if false
The project's scheme. Make sure it's marked as Shared
The SDK that should be used for building the application
Hide all information that's not necessary while building
After building, don't archive, effectively not including -archivePath param
Export ipa from previously built xcarchive. Uses archive_path as source
Build without codesigning
Skips resolution of Swift Package Manager dependencies
Should we skip packaging the ipa?
Do not try to build a profile mapping from the xcodeproj. Match or a manually provided mapping should be used
Suppress the output of xcodebuild to stdout. Output is still saved in buildlog_path
The toolchain that should be used for building the application (e.g. com.apple.dt.toolchain.Swift_2_3, org.swift.30p620160816a)
Lets xcodebuild use system's scm configuration
Path to the workspace file
Pass additional arguments to xcodebuild for the build phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
Use an extra XCCONFIG file to build your app
Allows for override of the default xcodebuild
command
xcodebuild formatter to use (ex: 'xcbeautify', 'xcbeautify --quieter', 'xcpretty', 'xcpretty -test'). Use empty string (ex: '') to disable any formatter (More information: https://docs.fastlane.tools/best-practices/xcodebuild-formatters/)
A custom xcpretty formatter to use
Have xcpretty create a simple HTML report at the provided path
Have xcpretty create a JSON compilation database at the provided path
Have xcpretty create a JUnit-style XML report at the provided path
Use the test (RSpec style) format for build output
Have xcpretty use unicode encoding when reporting builds
Shape for buildMacApp options argument
Analyze the project build time and store the output in 'culprits.txt' file
The path to the created archive
The directory in which the archive should be stored in
Create a build timing summary
The directory where to store the build log
Should the project be cleaned before building it?
Sets a custom path for Swift Package Manager dependencies
The name of the code signing identity to use. It has to match the name exactly. e.g. 'iPhone Distribution: SunApps GmbH'
The configuration to use when building the app. Defaults to 'Release'
The directory where built products and other derived data will go
Use a custom destination for building the app
Prevents packages from automatically being resolved to versions other than those recorded in the Package.resolved
file
DEPRECATED! Use xcodebuild_formatter: ''
instead - Disable xcpretty formatting of build output
Method used to export the archive. Valid values are: app-store, validation, ad-hoc, package, enterprise, development, developer-id and mac-application
Path to an export options plist or a hash with export options. Use 'xcodebuild -help' to print the full set of available options
Optional: Sometimes you need to specify a team id when exporting the ipa file
Pass additional arguments to xcodebuild for the package phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
Should the ipa file include bitcode?
Should the ipa file include symbols?
Full name of 3rd Party Mac Developer Installer or Developer ID Installer certificate. Example: 3rd Party Mac Developer Installer: Your Company (ABC1234XWYZ)
The directory in which the ipa file should be stored in
The name of the resulting ipa file
Path to the project file
Should an Xcode result bundle be generated in the output directory
Path to the result bundle directory to create. Ignored if result_bundle
if false
The project's scheme. Make sure it's marked as Shared
The SDK that should be used for building the application
Hide all information that's not necessary while building
After building, don't archive, effectively not including -archivePath param
Export ipa from previously built xcarchive. Uses archive_path as source
Build without codesigning
Skips resolution of Swift Package Manager dependencies
Should we skip packaging the pkg?
Do not try to build a profile mapping from the xcodeproj. Match or a manually provided mapping should be used
Suppress the output of xcodebuild to stdout. Output is still saved in buildlog_path
The toolchain that should be used for building the application (e.g. com.apple.dt.toolchain.Swift_2_3, org.swift.30p620160816a)
Lets xcodebuild use system's scm configuration
Path to the workspace file
Pass additional arguments to xcodebuild for the build phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
Use an extra XCCONFIG file to build your app
Allows for override of the default xcodebuild
command
xcodebuild formatter to use (ex: 'xcbeautify', 'xcbeautify --quieter', 'xcpretty', 'xcpretty -test'). Use empty string (ex: '') to disable any formatter (More information: https://docs.fastlane.tools/best-practices/xcodebuild-formatters/)
A custom xcpretty formatter to use
Have xcpretty create a simple HTML report at the provided path
Have xcpretty create a JSON compilation database at the provided path
Have xcpretty create a JUnit-style XML report at the provided path
Use the test (RSpec style) format for build output
Have xcpretty use unicode encoding when reporting builds
Shape for bundleInstall options argument
Generate bin stubs for bundled gems to ./bin
Run bundle clean automatically after install
Install using defaults tuned for deployment and CI environments
Don't allow the Gemfile.lock to be updated after install
Use the rubygems modern index instead of the API endpoint
Use the specified gemfile instead of Gemfile
Install gems using parallel workers
Do not attempt to fetch gems remotely and use the gem cache instead
Don't update the existing gem cache
Don't remove stale gems from the cache
Specify a different path than the system default ($BUNDLE_PATH or $GEM_HOME). Bundler will remember this value for future installs on this machine
Only output warnings and errors
Force download every gem, even if the required versions are already available locally
Retry network and git requests that have failed
Specify a different shebang executable name than the default (usually 'ruby')
Make a bundle that can work without the Bundler runtime
Install to the system location ($BUNDLE_PATH or $GEM_HOME) even if the bundle was previously installed somewhere else for this application
Sets level of security when dealing with signed gems. Accepts LowSecurity
, MediumSecurity
and HighSecurity
as values
Include gems that are part of the specified named group
Exclude gems that are part of the specified named group
Shape for captureAndroidScreenshots options argument
Configure the host used by adb to connect, allows running on remote devices farm
Path to the root of your Android SDK installation, e.g. ~/tools/android-sdk-macosx
The path to the APK for the app under test
The package name of the app under test (e.g. com.yourcompany.yourapp)
DEPRECATED! The Android build tools version to use, e.g. '23.0.2'
Enabling this option will automatically clear previously generated screenshots before running screengrab
Type of device used for screenshots. Matches Google Play Types (phone, sevenInch, tenInch, tv, wear)
DEPRECATED! Return the device to this locale after running tests
Whether or not to exit Screengrab on test failure. Exiting on failure will not copy screenshots to local machine nor open screenshots summary
Additional launch arguments
A list of locales which should be used
The directory where to store the screenshots
Enabling this option will automatically uninstall the application before running it
Don't open the summary after running screengrab
Use the device or emulator with the given serial number or qualifier
The fully qualified class name of your test instrumentation runner
The path to the APK for the tests bundle
The package name of the tests bundle (e.g. com.yourcompany.yourapp.test)
DEPRECATED! Restarts the adb daemon using adb root
to allow access to screenshots directories on device. Use if getting 'Permission denied' errors
Only run tests in these Java classes
Only run tests in these Java packages
Add timestamp suffix to screenshot filename
Shape for captureIosScreenshots options argument
A list of photos that should be added to the simulator before running the application
A list of videos that should be added to the simulator before running the application
The bundle identifier of the app to uninstall (only needed when enabling reinstall_app)
The directory where to store the build log
Should the project be cleaned before building it?
Enabling this option will automatically clear previously generated screenshots before running snapshot
Sets a custom path for Swift Package Manager dependencies
Take snapshots on multiple simulators concurrently. Note: This option is only applicable when running against Xcode 9
The configuration to use when building the app. Defaults to 'Release'
Enabling this option will configure the Simulator to be in dark mode (false for light, true for dark)
The directory where build products and other derived data will go
A list of devices you want to take the screenshots from
Prevents packages from automatically being resolved to versions other than those recorded in the Package.resolved
file
Disable the simulator from showing the 'Slide to type' prompt
Disable xcpretty formatting of build
Enabling this option will automatically erase the simulator before running the application
Enabling this option will prevent displaying the simulator window
A path to screenshots.html template
By default, the latest version should be used automatically. If you want to change it, do it here
A list of languages which should be used
A list of launch arguments which should be used
Enabling this option will configure the Simulator's system language
Separate the log files per device and per language
The number of times a test can fail before snapshot should stop retrying
Array of strings matching Test Bundle/Test Suite/Test Cases to run
The directory where to store the screenshots
If the logs generated by the app (e.g. using NSLog, perror, etc.) in the Simulator should be written to the output_directory
Enabling this option will automatically override the status bar to show 9:41 AM, full battery, and full reception (Adjust 'SNAPSHOT_SIMULATOR_WAIT_FOR_BOOT_TIMEOUT' environment variable if override status bar is not working. Might be because simulator is not fully booted. Defaults to 10 seconds)
Fully customize the status bar by setting each option here. Requires override_status_bar
to be set to true
. See xcrun simctl status_bar --help
Path to the project file
Enabling this option will automatically uninstall the application before running it
Should an Xcode result bundle be generated in the output directory
The scheme you want to use, this must be the scheme for the UI Tests
The SDK that should be used for building the application
Do not check for most recent SnapshotHelper code
Don't open the HTML summary after running snapshot
Skips resolution of Swift Package Manager dependencies
Array of strings matching Test Bundle/Test Suite/Test Cases to skip
Should snapshot stop immediately after the tests completely failed on one device?
Suppress the output of xcodebuild to stdout. Output is still saved in buildlog_path
The name of the target you want to test (if you desire to override the Target Application from Xcode)
Test without building, requires a derived data path
The testplan associated with the scheme that should be used for testing
Lets xcodebuild use system's scm configuration
Path to the workspace file
Pass additional arguments to xcodebuild for the test phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
Use an extra XCCONFIG file to build your app
xcodebuild formatter to use (ex: 'xcbeautify', 'xcbeautify --quieter', 'xcpretty', 'xcpretty -test'). Use empty string (ex: '') to disable any formatter (More information: https://docs.fastlane.tools/best-practices/xcodebuild-formatters/)
DEPRECATED! Use xcodebuild_formatter: ''
instead - Additional xcpretty arguments
Shape for captureScreenshots options argument
A list of photos that should be added to the simulator before running the application
A list of videos that should be added to the simulator before running the application
The bundle identifier of the app to uninstall (only needed when enabling reinstall_app)
The directory where to store the build log
Should the project be cleaned before building it?
Enabling this option will automatically clear previously generated screenshots before running snapshot
Sets a custom path for Swift Package Manager dependencies
Take snapshots on multiple simulators concurrently. Note: This option is only applicable when running against Xcode 9
The configuration to use when building the app. Defaults to 'Release'
Enabling this option will configure the Simulator to be in dark mode (false for light, true for dark)
The directory where build products and other derived data will go
A list of devices you want to take the screenshots from
Prevents packages from automatically being resolved to versions other than those recorded in the Package.resolved
file
Disable the simulator from showing the 'Slide to type' prompt
Disable xcpretty formatting of build
Enabling this option will automatically erase the simulator before running the application
Enabling this option will prevent displaying the simulator window
A path to screenshots.html template
By default, the latest version should be used automatically. If you want to change it, do it here
A list of languages which should be used
A list of launch arguments which should be used
Enabling this option will configure the Simulator's system language
Separate the log files per device and per language
The number of times a test can fail before snapshot should stop retrying
Array of strings matching Test Bundle/Test Suite/Test Cases to run
The directory where to store the screenshots
If the logs generated by the app (e.g. using NSLog, perror, etc.) in the Simulator should be written to the output_directory
Enabling this option will automatically override the status bar to show 9:41 AM, full battery, and full reception (Adjust 'SNAPSHOT_SIMULATOR_WAIT_FOR_BOOT_TIMEOUT' environment variable if override status bar is not working. Might be because simulator is not fully booted. Defaults to 10 seconds)
Fully customize the status bar by setting each option here. Requires override_status_bar
to be set to true
. See xcrun simctl status_bar --help
Path to the project file
Enabling this option will automatically uninstall the application before running it
Should an Xcode result bundle be generated in the output directory
The scheme you want to use, this must be the scheme for the UI Tests
The SDK that should be used for building the application
Do not check for most recent SnapshotHelper code
Don't open the HTML summary after running snapshot
Skips resolution of Swift Package Manager dependencies
Array of strings matching Test Bundle/Test Suite/Test Cases to skip
Should snapshot stop immediately after the tests completely failed on one device?
Suppress the output of xcodebuild to stdout. Output is still saved in buildlog_path
The name of the target you want to test (if you desire to override the Target Application from Xcode)
Test without building, requires a derived data path
The testplan associated with the scheme that should be used for testing
Lets xcodebuild use system's scm configuration
Path to the workspace file
Pass additional arguments to xcodebuild for the test phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
Use an extra XCCONFIG file to build your app
xcodebuild formatter to use (ex: 'xcbeautify', 'xcbeautify --quieter', 'xcpretty', 'xcpretty -test'). Use empty string (ex: '') to disable any formatter (More information: https://docs.fastlane.tools/best-practices/xcodebuild-formatters/)
DEPRECATED! Use xcodebuild_formatter: ''
instead - Additional xcpretty arguments
Shape for carthage options argument
Archive built frameworks from the current project
By default Carthage will rebuild a dependency regardless of whether it's the same resolved version as before. Passing the --cache-builds will cause carthage to avoid rebuilding a dependency if it can
Carthage command (one of: build, bootstrap, update, archive)
Define which build configuration to use when building
Carthage dependencies to update, build or bootstrap
Use derived data folder at path
Path to the carthage
executable on your machine
Framework name or names to archive, could be applied only along with the archive command
Path to the xcode build output
Use new resolver when resolving dependency graph
When bootstrapping Carthage do not build
When bootstrapping Carthage do not checkout
Don't skip building the Carthage project (in addition to its dependencies)
Output name for the archive, could be applied only along with the archive command. Use following format *.framework.zip
Define which platform to build for
Define the directory containing the Carthage project
Define which xcodebuild toolchain to use when building
Check out dependency repositories even when prebuilt frameworks exist
Use .netrc for downloading frameworks
Use SSH for downloading GitHub repositories
Add dependencies as Git submodules
Create xcframework bundles instead of one framework per platform (requires Xcode 12+)
Print xcodebuild output inline
Shape for cert options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
Create a development certificate instead of a distribution one
The filename of certificate to store
Create a certificate even if an existing certificate exists
Create a certificate type for Xcode 11 and later (Apple Development or Apple Distribution)
This might be required the first time you access certificates on a new mac. For the login/default keychain this is your macOS account password
Path to a custom keychain
The path to a directory in which all certificates and private keys should be stored
Set the provisioning profile's platform (ios, macos, tvos)
Skips setting the partition list (which can sometimes take a long time). Setting the partition list is usually needed to prevent Xcode from prompting to allow a cert to be used for signing
The ID of your Developer Portal team if you're in multiple teams
The name of your Developer Portal team if you're in multiple teams
Create specific certificate type (takes precedence over :development)
Your Apple ID Username
Shape for changelogFromGitCommits options argument
Whether or not to use ancestry-path param
Array containing two Git revision values between which to collect messages, you mustn't use it with :commits_count key at the same time
Number of commits to include in changelog, you mustn't use it with :between key at the same time
The date format applied to each commit while generating the collected value
DEPRECATED! Use :merge_commit_filtering
instead - Whether or not to include any commits that are merges
Whether or not to match a lightweight tag when searching for the last one
Controls inclusion of merge commits when collecting the changelog. Valid values: 'include_merges', 'exclude_merges', 'only_include_merges'
Path of the git repository
The format applied to each commit while generating the collected value
Whether or not to disable changelog output
A glob(7) pattern to match against when finding the last git tag
Shape for chatwork options argument
ChatWork API Token
The message to post on ChatWork
The room ID
Was this build successful? (true/false)
Shape for checkAppStoreMetadata options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The bundle identifier of your app
using a copyright date that is any different from this current year, or missing a date
including words that might be considered objectionable
mentioning any of the user-specified words passed to custom_text(data: [words])
The default rule level unless otherwise configured
using text indicating that your IAP is free
mentioning features or content that is not currently available in your app
Should check in-app purchases?
mentioning in a way that could be considered negative
mentioning other platforms, like Android or Blackberry
using placeholder text (e.g.:"lorem ipsum", "text here", etc...)
The platform to use (optional)
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
using text indicating this release is a test
unreachable URLs in app metadata
Should force check live app?
Your Apple ID Username
Shape for cleanBuildArtifacts options argument
Exclude all files from clearing that match the given Regex pattern: e.g. '.*.mobileprovision'
Shape for cleanCocoapodsCache options argument
Allows CocoaPods to run as root
Pod name to be removed from cache
Show output without ANSI codes
Show nothing
Show more debugging information
Shape for clearDerivedData options argument
Custom path for derivedData
Shape for clipboard options argument
The string that should be copied into the clipboard
Shape for cloc options argument
Where the cloc binary lives on your system (full path including 'cloc')
Comma separated list of directories to exclude
Where to put the generated report file
Where to look for the source code (relative to the project root folder)
Should we generate an XML File (if false, it will generate a plain text file)?
Shape for cocoapods options argument
Allows CocoaPods to run as root
Show output with ANSI codes
DEPRECATED! (Option renamed as clean_install) Remove SCM directories
Execute a full pod installation ignoring the content of the project cache
Disallow any changes to the Podfile or the Podfile.lock during installation
A callback invoked with the command output if there is a non-zero exit status
DEPRECATED! (Option removed from cocoapods) Integrate the Pods libraries into the Xcode project(s)
Explicitly specify the path to the Cocoapods' Podfile. You can either set it to the Podfile's path or to the folder containing the Podfile file
Add --repo-update
flag to pod install
command
Execute command without logging output
Retry with --repo-update if action was finished with error
Use bundle exec when there is a Gemfile presented
Show more debugging information
Shape for commitGithubFile options argument
Use a Bearer authorization token. Usually generated by GitHub Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable
Personal API Token for GitHub - generate one at https://github.com/settings/tokens
The branch that the file should be committed on (default: master)
The commit message. Defaults to the file name
The relative path to your file from project root e.g. assets/my_app.xcarchive
The path to your repo, e.g. 'fastlane/fastlane'
Optionally disable secure requests (ssl_verify_peer)
The server url. e.g. 'https://your.internal.github.host/api/v3' (Default: 'https://api.github.com')
Shape for commitVersionBump options argument
Forces the commit, even if other files than the ones containing the version number have been modified
A regular expression used to filter matched plist files to be modified
A list of extra files to be included in the version bump (string array or comma-separated string)
The commit message when committing the version bump
Whether or not to use --no-verify
Include Settings.bundle/Root.plist with version bump
The path to your project file (Not the workspace). If you have only one, this is optional
Shape for copyArtifacts options argument
An array of file patterns of the files/folders you want to preserve
Fail when a source file isn't found
Set this to false if you want move, rather than copy, the found artifacts
The directory in which you want your artifacts placed
Shape for createAppOnManagedPlayStore options argument
Path to the APK file to upload
App Title
The ID of your Google Play Console account. Can be obtained from the URL when you log in (https://play.google.com/apps/publish/?account=...
or when you 'Obtain private app publishing rights' (https://developers.google.com/android/work/play/custom-app-api/get-started#retrieve_the_developer_account_id)
The path to a file containing service account JSON, used to authenticate with Google
The raw service account JSON data used to authenticate with Google
Default app language (e.g. 'en_US')
Root URL for the Google Play API. The provided URL will be used for API calls in place of https://www.googleapis.com/
Timeout for read, open, and send (in seconds)
Shape for createAppOnline options argument
App Identifier (Bundle ID, e.g. com.krausefx.app)
App Name
Initial version number (e.g. '1.0')
App Identifier Suffix (Ignored if App Identifier does not end with .*)
The name of your company. It's used to set company name on App Store Connect team's app pages. Only required if it's the first app you create
Array with Spaceship App Services (e.g. access_wifi: (on|off), app_attest: (on|off), app_group: (on|off), apple_pay: (on|off), associated_domains: (on|off), auto_fill_credential: (on|off), class_kit: (on|off), icloud: (legacy|cloudkit), custom_network_protocol: (on|off), data_protection: (complete|unlessopen|untilfirstauth), extended_virtual_address_space: (on|off), family_controls: (on|off), file_provider_testing_mode: (on|off), fonts: (on|off), game_center: (ios|mac), health_kit: (on|off), hls_interstitial_preview: (on|off), home_kit: (on|off), hotspot: (on|off), in_app_purchase: (on|off), inter_app_audio: (on|off), low_latency_hls: (on|off), managed_associated_domains: (on|off), maps: (on|off), multipath: (on|off), network_extension: (on|off), nfc_tag_reading: (on|off), personal_vpn: (on|off), passbook: (on|off), push_notification: (on|off), sign_in_with_apple: (on), siri_kit: (on|off), system_extension: (on|off), user_management: (on|off), vpn_configuration: (on|off), wallet: (on|off), wireless_accessory: (on|off), car_play_audio_app: (on|off), car_play_messaging_app: (on|off), car_play_navigation_app: (on|off), car_play_voip_calling_app: (on|off), critical_alerts: (on|off), hotspot_helper: (on|off), driver_kit: (on|off), driver_kit_endpoint_security: (on|off), driver_kit_family_hid_device: (on|off), driver_kit_family_networking: (on|off), driver_kit_family_serial: (on|off), driver_kit_hid_event_service: (on|off), driver_kit_transport_hid: (on|off), multitasking_camera_access: (on|off), sf_universal_link_api: (on|off), vp9_decoder: (on|off), music_kit: (on|off), shazam_kit: (on|off), communication_notifications: (on|off), group_activities: (on|off), health_kit_estimate_recalibration: (on|off), time_sensitive_notifications: (on|off))
DEPRECATED! Please use enable_services
instead - Array with Spaceship App Services
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
Array of App Store Connect users. If provided, you can limit access to this newly created app for users with the App Manager, Developer, Marketer or Sales roles
Primary Language (e.g. 'en-US', 'fr-FR')
The platform to use (optional)
The platforms to use (optional)
Skip the creation of the app on the Apple Developer Portal
Skip the creation of the app on App Store Connect
SKU Number (e.g. '1234')
The ID of your Developer Portal team if you're in multiple teams
The name of your Developer Portal team if you're in multiple teams
Your Apple ID Username
Shape for createKeychain options argument
Add keychain to search list
Should the newly created Keychain be the new system default keychain
Lock keychain after timeout interval
Lock keychain when the system sleeps
Keychain name
Password for the keychain
Path to keychain
Fail the action if the Keychain already exists
timeout interval in seconds. Set 0
if you want to specify "no time-out"
Unlock keychain after create
Shape for createPullRequest options argument
Use a Bearer authorization token. Usually generated by GitHub Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable
Personal API Token for GitHub - generate one at https://github.com/settings/tokens
The URL of GitHub API - used when the Enterprise (default to https://api.github.com
)
The assignees for the pull request
The name of the branch you want your changes pulled into (defaults to master
)
The contents of the pull request
Indicates whether the pull request is a draft
The name of the branch where your changes are implemented (defaults to the current branch name)
The labels for the pull request
The milestone ID (Integer) for the pull request
The name of the repository you want to submit the pull request to
The reviewers (slug) for the pull request
The team reviewers (slug) for the pull request
The title of the pull request
Shape for createXcframework options argument
Specifies that the created xcframework contains information not suitable for public distribution
Frameworks (without dSYMs) to add to the target xcframework
Frameworks (with dSYMs) to add to the target xcframework
Libraries (without headers or dSYMs) to add to the target xcframework
Libraries (with headers or dSYMs) to add to the target xcframework
The path to write the xcframework to
Shape for danger options argument
A branch/tag/commit to use as the base of the diff. [master|dev|stable]
The identifier of this Danger instance
The location of your Dangerfile
Fail Danger execution if no PR is found
Should always fail the build process, defaults to false
GitHub API token for danger
GitHub API base URL for GitHub Enterprise
GitHub host URL for GitHub Enterprise
A branch/tag/commit to use as the head. [master|dev|stable]
Makes Danger post a new comment instead of editing its previous one
Run danger on a specific pull request. e.g. "https://github.com/danger/danger/pull/518"
Makes Danger remove all previous comment and create a new one in the end of the list
Use bundle exec when there is a Gemfile presented
Show more debugging information
Shape for debug options argument
Shape for defaultPlatform options argument
Shape for deleteKeychain options argument
Keychain path
Keychain name
Shape for deliver options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The (spaceship) app ID of the app you want to use/modify
DEPRECATED! Removed after the migration to the new App Store Connect API in June 2020 - Metadata: The path to the app icon
The bundle identifier of your app
Path to the app rating's config
Metadata: Path to the app review attachment file
Metadata: A hash containing the review information
The version that should be edited or created
Metadata: Localised Apple TV privacy policy text
DEPRECATED! Removed after the migration to the new App Store Connect API in June 2020 - Metadata: The path to the Apple Watch app icon
Date in milliseconds for automatically releasing on pending approval (Cannot be used together with automatic_release
)
Should the app be automatically released once it's approved? (Cannot be used together with auto_release_date
)
If set the given build number (already uploaded to iTC) will be used instead of the current built one
Metadata: The copyright notice
Metadata: The localised app description
The short ID of your Developer Portal team, if you're in multiple teams. Different from your iTC team ID!
The name of your Developer Portal team if you're in multiple teams
Modify live metadata, this option disables ipa upload and screenshot upload
Skip verification of HTML preview file
Ignore errors when invalid languages are found in metadata and screenshot directories
DEPRECATED! Removed after the migration to the new App Store Connect API in June 2020 - An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow
Path to your ipa file
The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off
. The short names of providers should be listed in the second column
Metadata: An array of localised keywords
Metadata: List of languages to activate
Metadata: Localised marketing url
Path to the folder containing the metadata files
Metadata: The localised app name
Clear all previously uploaded screenshots before uploading the new ones
Enable the phased release feature of iTC
Path to your pkg file
The platform to use (optional)
The default precheck rule level unless otherwise configured
Should precheck check in-app purchases?
The price tier of this application
Metadata: The english name of the primary category (e.g. Business
, Books
)
Metadata: The english name of the primary first sub category (e.g. Educational
, Puzzle
)
Metadata: The english name of the primary second sub category (e.g. Educational
, Puzzle
)
Metadata: Localised privacy url
Metadata: An array of localised promotional texts
Rejects the previously submitted build if it's in a state where it's possible
Metadata: Localised release notes for this version
Reset the summary rating when you release a new version of the application
Run precheck before submitting to app review
Timeout in seconds to wait before considering screenshot processing as failed, used to handle cases where uploads to the App Store are stuck in processing
Path to the folder containing the screenshots
Metadata: The english name of the secondary category (e.g. Business
, Books
)
Metadata: The english name of the secondary first sub category (e.g. Educational
, Puzzle
)
Metadata: The english name of the secondary second sub category (e.g. Educational
, Puzzle
)
Don’t create or update the app version that is being prepared for submission
Skip uploading an ipa or pkg to App Store Connect
Don't upload the metadata (e.g. title, description). This will still upload screenshots
Don't upload the screenshots
Extra information for the submission (e.g. compliance specifications, IDFA settings)
Submit the new version for Review after uploading everything
Metadata: The localised app subtitle
Metadata: Localised support url
Sync screenshots with local ones. This is currently beta option so set true to 'FASTLANE_ENABLE_BETA_DELIVER_SYNC_SCREENSHOTS' environment variable as well
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
DEPRECATED! This is no longer used by App Store Connect - Metadata: A hash containing the trade representative contact information
Force usage of live version rather than edit version
Your Apple ID Username
Verifies archive with App Store Connect without uploading
After submitting a new version, App Store Connect takes some time to recognize the new version and we must wait until it's available before attempting to upload metadata for it. There is a mechanism that will check if it's available and retry with an exponential backoff if it's not available yet. This option specifies how many times we should retry before giving up. Setting this to a value below 5 is not recommended and will likely cause failures. Increase this parameter when Apple servers seem to be degraded or slow
Shape for deploygate options argument
Deploygate API Token
Path to your APK file
Disables Push notification emails
Target Distribution Key
Target Distribution Name
Path to your IPA file. Optional if you use the gym or xcodebuild action
Release Notes
Release note for distribution page
Target username or organization name
Shape for dotgpgEnvironment options argument
Path to your gpg file
Shape for downloadAppPrivacyDetailsFromAppStore options argument
The bundle identifier of your app
Path to the app usage data JSON file generated by interactive questions
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
Your Apple ID Username for App Store Connect
Shape for downloadDsyms options argument
The uploaded date after which you wish to download dSYMs
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#use-return-value-and-pass-in-as-an-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The bundle identifier of your app
The app build_number for dSYMs you wish to download
The minimum app version for dSYMs you wish to download
Where to save the download dSYMs, defaults to the current path
The app platform for dSYMs you wish to download (ios, appletvos)
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
Your Apple ID Username for App Store Connect
The app version for dSYMs you wish to download, pass in 'latest' to download only the latest build's dSYMs or 'live' to download only the live version dSYMs
Wait for dSYMs to process
Number of seconds to wait for dSYMs to process
Shape for downloadFromPlayStore options argument
DEPRECATED! Use --json_key
instead - The issuer of the p12 file (email address of the service account)
The path to a file containing service account JSON, used to authenticate with Google
The raw service account JSON data used to authenticate with Google
DEPRECATED! Use --json_key
instead - The p12 File used to authenticate with Google
Path to the directory containing the metadata files
The package name of the application to use
Root URL for the Google Play API. The provided URL will be used for API calls in place of https://www.googleapis.com/
Timeout for read, open, and send (in seconds)
The track of the application to use. The default available tracks are: production, beta, alpha, internal
Version name (used when uploading new apks/aabs) - defaults to 'versionName' in build.gradle or AndroidManifest.xml
Shape for download options argument
The URL that should be downloaded
Shape for downloadUniversalApkFromGooglePlay options argument
The SHA256 hash of the signing key for which to download the Universal, Code-Signed APK for. Use 'xx:xx:xx:…' format (32 hex bytes separated by colons), as printed by keytool -list -keystore <keystorefile>
. Only useful to provide if you have multiple signing keys configured on GPC, to specify which generated APK to download
The path on disk where to download the Generated Universal APK
The path to a file containing service account JSON, used to authenticate with Google
The raw service account JSON data used to authenticate with Google
The package name of the application to use
Root URL for the Google Play API. The provided URL will be used for API calls in place of https://www.googleapis.com/
Timeout for read, open, and send (in seconds)
The versionCode for which to download the generated APK
Shape for dsymZip options argument
Whether or not all dSYM files are to be included. Optional, default is false in which only your app dSYM is included
Path to your xcarchive file. Optional if you use the xcodebuild
action
Path for generated dsym. Optional, default is your apps root directory
Shape for echo options argument
Message to be printed out
Shape for ensureBundleExec options argument
Shape for ensureEnvVars options argument
The environment variables names that should be checked
Shape for ensureGitBranch options argument
The branch that should be checked for. String that can be either the full name of the branch or a regex e.g. ^feature/.*$
to match
Shape for ensureGitStatusClean options argument
Array of files to ignore
The handling mode of the ignored files. The available options are: 'traditional'
, 'none'
(default) and 'matching'
. Specifying 'none'
to this parameter is the same as not specifying the parameter at all, which means that no ignored file will be used to check if the repo is dirty or not. Specifying 'traditional'
or 'matching'
causes some ignored files to be used to check if the repo is dirty or not (more info in the official docs: https://git-scm.com/docs/git-status#Documentation/git-status.txt---ignoredltmodegt)
The flag whether to show the git diff if the repo is dirty
The flag whether to show uncommitted changes if the repo is dirty
Shape for ensureNoDebugCode options argument
Exclude a certain pattern from the search
An array of dirs that should not be included in the search
The extension that should be searched for
An array of file extensions that should be searched for
The directory containing all the source files
The text that must not be in the code base
Shape for ensureXcodeVersion options argument
Should the version be verified strictly (all 3 version numbers), or matching only the given version numbers (i.e. 11.3
== 11.3.x
)
Xcode version to verify that is selected
Shape for environmentVariable options argument
Get the environment variable named
Remove the environment variable named
Set the environment variables named
Shape for erb options argument
Destination file
Placeholders given as a hash
ERB Template File
Trim mode applied to the ERB
Shape for fastlaneVersion options argument
Shape for flock options argument
Base URL of the Flock incoming message webhook
Message text
Token for the Flock incoming webhook
Shape for frameScreenshots options argument
Output debug information in framed screenshots
Forces a given device type, useful for Mac screenshots, as their sizes vary
[Advanced] A block to customize your screenshots' device orientation
Use gold device frames. Alias for :gold
The path to the directory containing the screenshots
Resume frameit instead of reprocessing all screenshots
Use rose gold device frames. Alias for :rose_gold
Use white device frames. Alias for :white
Use iPhone 5s instead of iPhone SE frames
Use iPhone 6s frames instead of iPhone 7 frames
Use iPhone 7 frames instead of iPhone 8 frames
Use iPhone X instead of iPhone XS frames
Use iPhone XR instead of iPhone 11 frames
Use iPhone XS instead of iPhone 11 Pro frames
Use iPhone XS Max instead of iPhone 11 Pro Max frames
Choose a platform, the valid options are IOS, ANDROID and ANY (default is either general platform defined in the fastfile or IOS to ensure backward compatibility)
Use white device frames
Shape for frameit options argument
Output debug information in framed screenshots
Forces a given device type, useful for Mac screenshots, as their sizes vary
[Advanced] A block to customize your screenshots' device orientation
Use gold device frames. Alias for :gold
The path to the directory containing the screenshots
Resume frameit instead of reprocessing all screenshots
Use rose gold device frames. Alias for :rose_gold
Use white device frames. Alias for :white
Use iPhone 5s instead of iPhone SE frames
Use iPhone 6s frames instead of iPhone 7 frames
Use iPhone 7 frames instead of iPhone 8 frames
Use iPhone X instead of iPhone XS frames
Use iPhone XR instead of iPhone 11 frames
Use iPhone XS instead of iPhone 11 Pro frames
Use iPhone XS Max instead of iPhone 11 Pro Max frames
Choose a platform, the valid options are IOS, ANDROID and ANY (default is either general platform defined in the fastfile or IOS to ensure backward compatibility)
Use white device frames
Shape for gcovr options argument
Shape for getBuildNumber options argument
Used during fastlane init
to hide the error message
optional, you must specify the path to your main Xcode project if it is not in the project root directory
Shape for getBuildNumberRepository options argument
Use hg revision number instead of hash (ignored for non-hg repos)
Shape for getCertificates options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
Create a development certificate instead of a distribution one
The filename of certificate to store
Create a certificate even if an existing certificate exists
Create a certificate type for Xcode 11 and later (Apple Development or Apple Distribution)
This might be required the first time you access certificates on a new mac. For the login/default keychain this is your macOS account password
Path to a custom keychain
The path to a directory in which all certificates and private keys should be stored
Set the provisioning profile's platform (ios, macos, tvos)
Skips setting the partition list (which can sometimes take a long time). Setting the partition list is usually needed to prevent Xcode from prompting to allow a cert to be used for signing
The ID of your Developer Portal team if you're in multiple teams
The name of your Developer Portal team if you're in multiple teams
Create specific certificate type (takes precedence over :development)
Your Apple ID Username
Shape for getGithubRelease options argument
Use a Bearer authorization token. Usually generated by GitHub Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable
GitHub Personal Token (required for private repositories)
The server url. e.g. 'https://your.github.server/api/v3' (Default: 'https://api.github.com')
The path to your repo, e.g. 'KrauseFx/fastlane'
The version tag of the release to check
Shape for getInfoPlistValue options argument
Name of parameter
Path to plist file you want to read
Shape for getIpaInfoPlistValue options argument
Path to IPA
Name of parameter
Shape for getManagedPlayStorePublishingRights options argument
The path to a file containing service account JSON, used to authenticate with Google
The raw service account JSON data used to authenticate with Google
Shape for getProvisioningProfile options argument
Setting this flag will generate AdHoc profiles instead of App Store Profiles
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The bundle identifier of your app
A list of cached bundle ids
A list of cached certificates
A list of cached devices
A list of cached bundle ids
The ID of the code signing certificate to use (e.g. 78ADL6LVAA)
The certificate name to use for new profiles, or to renew with. (e.g. "Felix Krause")
Setting this flag will generate Developer ID profiles instead of App Store Profiles
Renew the development certificate instead of the production one
Should the command fail if it was about to create a duplicate of an existing provisioning profile. It can happen due to issues on Apple Developer Portal, when profile to be recreated was not properly deleted first
Filename to use for the generated provisioning profile (must include .mobileprovision)
Renew provisioning profiles regardless of its state - to automatically add all devices for ad hoc profiles
Use in combination with :provisioning_name - when true only profiles matching this exact name will be downloaded
Include all matching certificates in the provisioning profile. Works only for the 'development' provisioning profile type
Include Apple Silicon Mac devices in provisioning profiles for iOS/iPadOS apps
Directory in which the profile should be stored
Set the provisioning profile's platform (i.e. ios, tvos, macos, catalyst)
The name of the profile that is used on the Apple Developer Portal
Only fetch existing profile, don't generate new ones
Skips the verification of the certificates for every existing profiles. This will make sure the provisioning profile can be used on the local machine
Skips the verification of existing profiles which is useful if you have thousands of profiles
By default, the certificate will be added to your local machine. Setting this flag will skip this action
The ID of your Developer Portal team if you're in multiple teams
The name of your Developer Portal team if you're in multiple teams
The name of provisioning profile template. If the developer account has provisioning profile templates (aka: custom entitlements), the template name can be found by inspecting the Entitlements drop-down while creating/editing a provisioning profile (e.g. "Apple Pay Pass Suppression Development")
Your Apple ID Username
Shape for getPushCertificate options argument
If the current certificate is active for less than this number of days, generate a new one
The bundle identifier of your app
Renew the development push certificate instead of the production one
Create a new push certificate, even if the current one is active for 30 (or PEM_ACTIVE_DAYS_LIMIT) more days
Generate a p12 file additionally to a PEM file
Block that is called if there is a new profile
The path to a directory in which all certificates and private keys should be stored
The password that is used for your p12 file
The file name of the generated .pem file
Set certificate's platform. Used for creation of production & development certificates. Supported platforms: ios, macos
Set to save the private RSA key
The ID of your Developer Portal team if you're in multiple teams
The name of your Developer Portal team if you're in multiple teams
Your Apple ID Username
Create a Website Push certificate
Shape for getVersionNumber options argument
Configuration name, optional. Will be needed if you have altered the configurations from the default or your version number depends on the configuration selected
Target name, optional. Will be needed if you have more than one non-test target to avoid being prompted to select one
Path to the Xcode project to read version number from, or its containing directory, optional. If omitted, or if a directory is passed instead, it will use the first Xcode project found within the given directory, or the project root directory if none is passed
Shape for gitAdd options argument
Allow adding otherwise ignored files
The file(s) and path(s) you want to add
DEPRECATED! Use --path
instead - The pathspec you want to add files from
Shell escapes paths (set to false if using wildcards or manually escaping spaces in :path)
Shape for gitBranch options argument
Shape for gitCommit options argument
Set to true to allow commit without any git changes in the files you want to commit
The commit message that should be used
The file(s) or directory(ies) you want to commit. You can pass an array of multiple file-paths or fileglobs "*.txt" to commit all matching files. The files already staged but not specified and untracked files won't be committed
Set to true to pass --no-verify
to git
Shape for gitPull options argument
Simply pull the tags, and not bring new commits to the current branch from the remote
Rebase on top of the remote branch instead of merge
Shape for gitRemoteBranch options argument
The remote repository to check
Shape for gitSubmoduleUpdate options argument
Should the submodules be initiated before update?
Should the submodules be updated recursively?
Shape for gitTagExists options argument
Whether to check remote. Defaults to false
The remote to check. Defaults to origin
The tag name that should be checked
Shape for githubApi options argument
Use a Bearer authorization token. Usually generated by GitHub Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable
Personal API Token for GitHub - generate one at https://github.com/settings/tokens
The request body in JSON or hash format
Optional error handling hash based on status code, or pass '*' to handle all errors
Optional headers to apply
The HTTP method. e.g. GET / POST
The endpoint path. e.g. '/repos/:owner/:repo/readme'
The request body taken verbatim instead of as JSON, useful for file uploads
Optionally disable secure requests (ssl_verify_peer)
The server url. e.g. 'https://your.internal.github.host/api/v3' (Default: 'https://api.github.com')
The complete full url - used instead of path. e.g. 'https://uploads.github.com/repos/fastlane...'
Shape for googlePlayTrackReleaseNames options argument
DEPRECATED! Use --json_key
instead - The issuer of the p12 file (email address of the service account)
The path to a file containing service account JSON, used to authenticate with Google
The raw service account JSON data used to authenticate with Google
DEPRECATED! Use --json_key
instead - The p12 File used to authenticate with Google
The package name of the application to use
Root URL for the Google Play API. The provided URL will be used for API calls in place of https://www.googleapis.com/
Timeout for read, open, and send (in seconds)
The track of the application to use. The default available tracks are: production, beta, alpha, internal
Shape for googlePlayTrackVersionCodes options argument
DEPRECATED! Use --json_key
instead - The issuer of the p12 file (email address of the service account)
The path to a file containing service account JSON, used to authenticate with Google
The raw service account JSON data used to authenticate with Google
DEPRECATED! Use --json_key
instead - The p12 File used to authenticate with Google
The package name of the application to use
Root URL for the Google Play API. The provided URL will be used for API calls in place of https://www.googleapis.com/
Timeout for read, open, and send (in seconds)
The track of the application to use. The default available tracks are: production, beta, alpha, internal
Shape for gradle options argument
The build type that you want the task for, e.g. Release
. Useful for some tasks such as assemble
All parameter flags you want to pass to the gradle command, e.g. --exitcode --xml file.xml
The flavor that you want the task for, e.g. MyFlavor
. If you are running the assemble
task in a multi-flavor project, and you rely on Actions.lane_context[SharedValues::GRADLE_APK_OUTPUT_PATH] then you must specify a flavor here or else this value will be undefined
The path to your gradlew
. If you specify a relative path, it is assumed to be relative to the project_dir
Control whether the generated Gradle command is printed as output before running it (true/false)
Control whether the output produced by given Gradle command is printed while running (true/false)
The root directory of the gradle project
Gradle properties to be exposed to the gradle script
Android serial, which device should be used for this command
Gradle system properties to be exposed to the gradle script
The gradle task you want to execute, e.g. assemble
, bundle
or test
. For tasks such as assembleMyFlavorRelease
you should use gradle(task: 'assemble', flavor: 'Myflavor', build_type: 'Release')
The multiple gradle tasks that you want to execute, e.g. [assembleDebug, bundleDebug]
Shape for gym options argument
Analyze the project build time and store the output in 'culprits.txt' file
The path to the created archive
The directory in which the archive should be stored in
Create a build timing summary
The directory where to store the build log
Platform to build when using a Catalyst enabled app. Valid values are: ios, macos
Should the project be cleaned before building it?
Sets a custom path for Swift Package Manager dependencies
The name of the code signing identity to use. It has to match the name exactly. e.g. 'iPhone Distribution: SunApps GmbH'
The configuration to use when building the app. Defaults to 'Release'
The directory where built products and other derived data will go
Use a custom destination for building the app
Prevents packages from automatically being resolved to versions other than those recorded in the Package.resolved
file
DEPRECATED! Use xcodebuild_formatter: ''
instead - Disable xcpretty formatting of build output
Method used to export the archive. Valid values are: app-store, validation, ad-hoc, package, enterprise, development, developer-id and mac-application
Path to an export options plist or a hash with export options. Use 'xcodebuild -help' to print the full set of available options
Optional: Sometimes you need to specify a team id when exporting the ipa file
Pass additional arguments to xcodebuild for the package phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
Should the ipa file include bitcode?
Should the ipa file include symbols?
Full name of 3rd Party Mac Developer Installer or Developer ID Installer certificate. Example: 3rd Party Mac Developer Installer: Your Company (ABC1234XWYZ)
The directory in which the ipa file should be stored in
The name of the resulting ipa file
Path to the project file
Should an Xcode result bundle be generated in the output directory
Path to the result bundle directory to create. Ignored if result_bundle
if false
The project's scheme. Make sure it's marked as Shared
The SDK that should be used for building the application
Hide all information that's not necessary while building
After building, don't archive, effectively not including -archivePath param
Export ipa from previously built xcarchive. Uses archive_path as source
Build without codesigning
Skips resolution of Swift Package Manager dependencies
Should we skip packaging the ipa?
Should we skip packaging the pkg?
Do not try to build a profile mapping from the xcodeproj. Match or a manually provided mapping should be used
Suppress the output of xcodebuild to stdout. Output is still saved in buildlog_path
The toolchain that should be used for building the application (e.g. com.apple.dt.toolchain.Swift_2_3, org.swift.30p620160816a)
Lets xcodebuild use system's scm configuration
Path to the workspace file
Pass additional arguments to xcodebuild for the build phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
Use an extra XCCONFIG file to build your app
Allows for override of the default xcodebuild
command
xcodebuild formatter to use (ex: 'xcbeautify', 'xcbeautify --quieter', 'xcpretty', 'xcpretty -test'). Use empty string (ex: '') to disable any formatter (More information: https://docs.fastlane.tools/best-practices/xcodebuild-formatters/)
A custom xcpretty formatter to use
Have xcpretty create a simple HTML report at the provided path
Have xcpretty create a JSON compilation database at the provided path
Have xcpretty create a JUnit-style XML report at the provided path
Use the test (RSpec style) format for build output
Have xcpretty use unicode encoding when reporting builds
Shape for hgAddTag options argument
Tag to create
Shape for hgCommitVersionBump options argument
Forces the commit, even if other files than the ones containing the version number have been modified
The commit message when committing the version bump
A list of dirty files passed in for testing
A list of expected changed files passed in for testing
The path to your project file (Not the workspace). If you have only one, this is optional
Shape for hgEnsureCleanStatus options argument
Shape for hgPush options argument
The destination to push to
Force push to remote
Shape for hipchat options argument
The host of the HipChat-Server API
Hipchat API Token
The room or @username
Specify a custom color, this overrides the success boolean. Can be one of 'yellow', 'red', 'green', 'purple', 'gray', or 'random'
Name the message will appear to be sent from
Should html formatted messages include a preformatted header? (true/false)
The message to post on HipChat
Format of the message to post. Must be either 'html' or 'text'
Should the people in the room be notified? (true/false)
Was this build successful? (true/false)
Version of the Hipchat API. Must be 1 or 2
Shape for hockey options argument
API Token for Hockey Access
Path to your APK file
The URL of the build job on your build server
The bundle_short_version of your application, required when using create_update
The bundle_version of your application, required when using create_update
Flag to bypass Hockey CDN when it uploads successfully but reports error
The Git commit SHA for this build
Download status for initial version creation when create_update is true: "1" = No user can download; "2" = Available for download (only possible with full-access token)
Set true if you want to create then update your app as opposed to just upload it. You will need the 'public_identifier', 'bundle_version' and 'bundle_short_version'
DSA signature for sparkle updates for macOS
Path to your symbols file. For iOS and Mac provide path to app.dSYM.zip. For Android provide path to mappings.txt file
Path to your IPA file. Optional if you use the gym or xcodebuild action. For Mac zip the .app. For Android provide path to .apk file. In addition you could use this to upload .msi, .zip, .pkg, etc if you use the 'create_update' mechanism
Set to "1" to make this update mandatory
Beta Notes
Notes type for your :notes, "0" = Textile, "1" = Markdown (default)
Notify testers? "1" for yes
ID for the owner of the app
App id of the app you are targeting, usually you won't need this value. Required, if upload_dsym_only
set to true
Release type of the app: "0" = Beta (default), "1" = Store, "2" = Alpha, "3" = Enterprise
The URL of your source repository
Download status: "1" = No user can download; "2" = Available for download (only possible with full-access token)
Strategy: 'add' = to add the build as a new build even if it has the same build number (default); 'replace' = to replace a build with the same build number
Comma separated list of tags which will receive access to the build
Comma separated list of team ID numbers to which this build will be restricted
Request timeout in seconds
Flag to upload only the dSYM file to hockey app
Comma separated list of user ID numbers to which this build will be restricted
Shape for ifttt options argument
API key
The name of the event that will be triggered
Extra data sent with the event
Extra data sent with the event
Extra data sent with the event
Shape for importCertificate options argument
Certificate password
Path to certificate
Keychain the items should be imported to
The password for the keychain. Note that for the login keychain this is your user's password
Path to the Keychain file to which the items should be imported
If output should be logged to the console
Shape for importFromGit options argument
The branch or tag to check-out on the repository
The path to a directory where the repository should be cloned into. Defaults to nil
, which causes the repository to be cloned on every call, to a temporary directory
The array of additional Fastfiles in the repository
The path of the Fastfile in the repository
The URL of the repository to import the Fastfile from
The version to checkout on the repository. Optimistic match operator or multiple conditions can be used to select the latest version within constraints
Shape for import options argument
Shape for incrementBuildNumber options argument
Change to a specific version. When you provide this parameter, Apple Generic Versioning does not have to be enabled
Don't update Info.plist files when updating the build version
optional, you must specify the path to your main Xcode project if it is not in the project root directory
Shape for incrementVersionNumber options argument
The type of this version bump. Available: patch, minor, major
Change to a specific version. This will replace the bump type value
optional, you must specify the path to your main Xcode project if it is not in the project root directory
Shape for installOnDevice options argument
id of the device / if not set defaults to first found device
Extra Command-line arguments passed to ios-deploy
The IPA file to put on the device
Do not search for devices via WiFi
Shape for installProvisioningProfile options argument
Path to provisioning profile
Shape for installXcodePlugin options argument
GitHub repository URL for Xcode plugin
URL for Xcode plugin ZIP file
Shape for installr options argument
Groups to add (e.g. 'exec,ops')
API Token for Installr Access
Path to your IPA file. Optional if you use the gym or xcodebuild action
Release notes
Groups to notify (e.g. 'dev,qa')
Shape for ipa options argument
Archive project after building
Clean project before building
Configuration used to build
Build destination. Defaults to current directory
Sign .ipa file with .mobileprovision
Identity to be used along with --embed
Specify the name of the .ipa file to generate (including file extension)
Project (.xcodeproj) file to use to build app (automatically detected in current directory, overridden by --workspace option, if passed)
Scheme used to build app
Use SDK as the name or path of the base SDK when building the project
WORKSPACE Workspace (.xcworkspace) file to use to build app (automatically detected in current directory)
Pass additional arguments to xcodebuild when building the app. Be sure to quote multiple args
Use an extra XCCONFIG file to build the app
Shape for isCi options argument
Shape for jazzy options argument
Path to jazzy config file
Version string to use as part of the default docs title and inside the docset
Shape for jira options argument
Text to add to the ticket as a comment
Appends to the url (ex: "/jira")
Should an error adding the Jira comment cause a failure?
Password or API token for Jira
Ticket ID for Jira, i.e. IOS-123
URL for Jira instance
Username for Jira instance
Shape for laneContext options argument
Shape for lastGitCommit options argument
Shape for lastGitTag options argument
Pattern to filter tags when looking for last one. Limit tags to ones matching given shell glob. If pattern lacks ?, *, or [, * at the end is implied
Shape for latestTestflightBuildNumber options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The bundle identifier of your app
sets the build number to given value if no build is in current train
Query the live version (ready-for-sale)
The platform to use (optional)
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
Your Apple ID Username
The version number whose latest build number we want
Shape for lcov options argument
The build arch where will search .gcda files
The output directory that coverage data will be stored. If not passed will use coverage_reports as default value
Name of the project
Scheme of the project
Shape for mailgun options argument
Mailgun apikey for your mail
App Release link
Mail Attachment filenames, either an array or just one string
CI Build Link
Placeholders for template given as a hash
Mailgun sender name
Mailgun apikey for your mail. Please use postmaster instead
Mailgun sandbox domain postmaster for your mail. Please use postmaster instead
Mailgun sandbox domain postmaster for your mail. Please use postmaster instead
Message of your mail
Mailgun sandbox domain postmaster for your mail
Mail Reply to
Subject of your mail
Was this build successful? (true/false)
Mail HTML template
Destination of your mail
Shape for makeChangelogFromJenkins options argument
Fallback changelog if there is not one on Jenkins, or it couldn't be read
Include the commit body along with the summary
Shape for matchNuke options argument
Create additional cert types needed for macOS installers (valid values: mac_installer_distribution, developer_id_installer)
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The bundle identifier(s) of your app (comma-separated string or array of strings)
Select certificate by id. Useful if multiple certificates are stored in one place
Clone just the branch specified, instead of the whole repo. This requires that the branch already exists. Otherwise the command will fail
Enable this if you have the Mac Catalyst capability enabled and your project was created with Xcode 11.3 or earlier. Prepends 'maccatalyst.' to the app identifier for the provisioning profile mapping
Should the command fail if it was about to create a duplicate of an existing provisioning profile. It can happen due to issues on Apple Developer Portal, when profile to be recreated was not properly deleted first
Renew the provisioning profiles every time you run match
Renew the provisioning profiles if the certificate count on the developer portal has changed. Works only for the 'development' provisioning profile type. Requires 'include_all_certificates' option to be 'true'
Renew the provisioning profiles if the device count on the developer portal has changed. Ignored for profile types 'appstore' and 'developer_id'
Create a certificate type for Xcode 11 and later (Apple Development or Apple Distribution)
Use a basic authorization header to access the git repo (e.g.: access via HTTPS, GitHub Actions, etc), usually a string in Base64
Use a bearer authorization header to access the git repo (e.g.: access to an Azure DevOps repository), usually a string in Base64
Specific git branch to use
git user full name to commit
Use a private key to access the git repo (e.g.: access to GitHub repository via Deploy keys), usually a id_rsa named file or the contents hereof
URL to the git repo containing all the certificates
git user email to commit
GitLab Host (i.e. 'https://gitlab.com')
GitLab Project Path (i.e. 'gitlab-org/gitlab')
Name of the Google Cloud Storage bucket to use
Path to the gc_keys.json file
ID of the Google Cloud project to use for authentication
Include all matching certificates in the provisioning profile. Works only for the 'development' provisioning profile type
Include Apple Silicon Mac devices in provisioning profiles for iOS/iPadOS apps
GitLab CI_JOB_TOKEN
Keychain the items should be imported to
This might be required the first time you access certificates on a new mac. For the login/default keychain this is your macOS account password
Path in which to export certificates, key and profile
Set the provisioning profile's platform to work with (i.e. ios, tvos, macos, catalyst)
GitLab Access Token
A custom name for the provisioning profile. This will replace the default provisioning profile name if specified
Only fetch existing certificates and profiles, don't generate new ones
S3 access key
Name of the S3 bucket
Prefix to be used on all objects uploaded to S3
Name of the S3 region
S3 secret access key
Skip encryption of all objects uploaded to S3. WARNING: only enable this on S3 buckets with sufficiently restricted permissions and server-side encryption enabled. See https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingEncryption.html
Remove certs from repository during nuke without revoking them on the developer portal
Make a shallow clone of the repository (truncate the history to 1 revision)
Set to true if there is no access to Apple developer portal but there are certificates, keys and profiles provided. Only works with match import action
Disables confirmation prompts during nuke, answering them with yes
Skip generation of a README.md for the created git repository
Skips confirming to use the system google account
Skip syncing provisioning profiles
Skips setting the partition list (which can sometimes take a long time). Setting the partition list is usually needed to prevent Xcode from prompting to allow a cert to be used for signing
Define where you want to store your certificates
The ID of your Developer Portal team if you're in multiple teams
The name of your Developer Portal team if you're in multiple teams
The name of provisioning profile template. If the developer account has provisioning profile templates (aka: custom entitlements), the template name can be found by inspecting the Entitlements drop-down while creating/editing a provisioning profile (e.g. "Apple Pay Pass Suppression Development")
Define the profile type, can be appstore, adhoc, development, enterprise, developer_id, mac_installer_distribution, developer_id_installer
Your Apple ID Username
Print out extra information and all commands
Shape for match options argument
Create additional cert types needed for macOS installers (valid values: mac_installer_distribution, developer_id_installer)
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The bundle identifier(s) of your app (comma-separated string or array of strings)
Select certificate by id. Useful if multiple certificates are stored in one place
Clone just the branch specified, instead of the whole repo. This requires that the branch already exists. Otherwise the command will fail
Enable this if you have the Mac Catalyst capability enabled and your project was created with Xcode 11.3 or earlier. Prepends 'maccatalyst.' to the app identifier for the provisioning profile mapping
Should the command fail if it was about to create a duplicate of an existing provisioning profile. It can happen due to issues on Apple Developer Portal, when profile to be recreated was not properly deleted first
Renew the provisioning profiles every time you run match
Renew the provisioning profiles if the certificate count on the developer portal has changed. Works only for the 'development' provisioning profile type. Requires 'include_all_certificates' option to be 'true'
Renew the provisioning profiles if the device count on the developer portal has changed. Ignored for profile types 'appstore' and 'developer_id'
Create a certificate type for Xcode 11 and later (Apple Development or Apple Distribution)
Use a basic authorization header to access the git repo (e.g.: access via HTTPS, GitHub Actions, etc), usually a string in Base64
Use a bearer authorization header to access the git repo (e.g.: access to an Azure DevOps repository), usually a string in Base64
Specific git branch to use
git user full name to commit
Use a private key to access the git repo (e.g.: access to GitHub repository via Deploy keys), usually a id_rsa named file or the contents hereof
URL to the git repo containing all the certificates
git user email to commit
GitLab Host (i.e. 'https://gitlab.com')
GitLab Project Path (i.e. 'gitlab-org/gitlab')
Name of the Google Cloud Storage bucket to use
Path to the gc_keys.json file
ID of the Google Cloud project to use for authentication
Include all matching certificates in the provisioning profile. Works only for the 'development' provisioning profile type
Include Apple Silicon Mac devices in provisioning profiles for iOS/iPadOS apps
GitLab CI_JOB_TOKEN
Keychain the items should be imported to
This might be required the first time you access certificates on a new mac. For the login/default keychain this is your macOS account password
Path in which to export certificates, key and profile
Set the provisioning profile's platform to work with (i.e. ios, tvos, macos, catalyst)
GitLab Access Token
A custom name for the provisioning profile. This will replace the default provisioning profile name if specified
Only fetch existing certificates and profiles, don't generate new ones
S3 access key
Name of the S3 bucket
Prefix to be used on all objects uploaded to S3
Name of the S3 region
S3 secret access key
Skip encryption of all objects uploaded to S3. WARNING: only enable this on S3 buckets with sufficiently restricted permissions and server-side encryption enabled. See https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingEncryption.html
Remove certs from repository during nuke without revoking them on the developer portal
Make a shallow clone of the repository (truncate the history to 1 revision)
Set to true if there is no access to Apple developer portal but there are certificates, keys and profiles provided. Only works with match import action
Disables confirmation prompts during nuke, answering them with yes
Skip generation of a README.md for the created git repository
Skips confirming to use the system google account
Skip syncing provisioning profiles
Skips setting the partition list (which can sometimes take a long time). Setting the partition list is usually needed to prevent Xcode from prompting to allow a cert to be used for signing
Define where you want to store your certificates
The ID of your Developer Portal team if you're in multiple teams
The name of your Developer Portal team if you're in multiple teams
The name of provisioning profile template. If the developer account has provisioning profile templates (aka: custom entitlements), the template name can be found by inspecting the Entitlements drop-down while creating/editing a provisioning profile (e.g. "Apple Pay Pass Suppression Development")
Define the profile type, can be appstore, adhoc, development, enterprise, developer_id, mac_installer_distribution, developer_id_installer
Your Apple ID Username
Print out extra information and all commands
Shape for minFastlaneVersion options argument
Shape for modifyServices options argument
App Identifier (Bundle ID, e.g. com.krausefx.app)
Array with Spaceship App Services (e.g. access_wifi: (on|off)(:on|:off)(true|false), app_attest: (on|off)(:on|:off)(true|false), app_group: (on|off)(:on|:off)(true|false), apple_pay: (on|off)(:on|:off)(true|false), associated_domains: (on|off)(:on|:off)(true|false), auto_fill_credential: (on|off)(:on|:off)(true|false), class_kit: (on|off)(:on|:off)(true|false), icloud: (legacy|cloudkit)(:on|:off)(true|false), custom_network_protocol: (on|off)(:on|:off)(true|false), data_protection: (complete|unlessopen|untilfirstauth)(:on|:off)(true|false), extended_virtual_address_space: (on|off)(:on|:off)(true|false), family_controls: (on|off)(:on|:off)(true|false), file_provider_testing_mode: (on|off)(:on|:off)(true|false), fonts: (on|off)(:on|:off)(true|false), game_center: (ios|mac)(:on|:off)(true|false), health_kit: (on|off)(:on|:off)(true|false), hls_interstitial_preview: (on|off)(:on|:off)(true|false), home_kit: (on|off)(:on|:off)(true|false), hotspot: (on|off)(:on|:off)(true|false), in_app_purchase: (on|off)(:on|:off)(true|false), inter_app_audio: (on|off)(:on|:off)(true|false), low_latency_hls: (on|off)(:on|:off)(true|false), managed_associated_domains: (on|off)(:on|:off)(true|false), maps: (on|off)(:on|:off)(true|false), multipath: (on|off)(:on|:off)(true|false), network_extension: (on|off)(:on|:off)(true|false), nfc_tag_reading: (on|off)(:on|:off)(true|false), personal_vpn: (on|off)(:on|:off)(true|false), passbook: (on|off)(:on|:off)(true|false), push_notification: (on|off)(:on|:off)(true|false), sign_in_with_apple: (on)(:on|:off)(true|false), siri_kit: (on|off)(:on|:off)(true|false), system_extension: (on|off)(:on|:off)(true|false), user_management: (on|off)(:on|:off)(true|false), vpn_configuration: (on|off)(:on|:off)(true|false), wallet: (on|off)(:on|:off)(true|false), wireless_accessory: (on|off)(:on|:off)(true|false), car_play_audio_app: (on|off)(:on|:off)(true|false), car_play_messaging_app: (on|off)(:on|:off)(true|false), car_play_navigation_app: (on|off)(:on|:off)(true|false), car_play_voip_calling_app: (on|off)(:on|:off)(true|false), critical_alerts: (on|off)(:on|:off)(true|false), hotspot_helper: (on|off)(:on|:off)(true|false), driver_kit: (on|off)(:on|:off)(true|false), driver_kit_endpoint_security: (on|off)(:on|:off)(true|false), driver_kit_family_hid_device: (on|off)(:on|:off)(true|false), driver_kit_family_networking: (on|off)(:on|:off)(true|false), driver_kit_family_serial: (on|off)(:on|:off)(true|false), driver_kit_hid_event_service: (on|off)(:on|:off)(true|false), driver_kit_transport_hid: (on|off)(:on|:off)(true|false), multitasking_camera_access: (on|off)(:on|:off)(true|false), sf_universal_link_api: (on|off)(:on|:off)(true|false), vp9_decoder: (on|off)(:on|:off)(true|false), music_kit: (on|off)(:on|:off)(true|false), shazam_kit: (on|off)(:on|:off)(true|false), communication_notifications: (on|off)(:on|:off)(true|false), group_activities: (on|off)(:on|:off)(true|false), health_kit_estimate_recalibration: (on|off)(:on|:off)(true|false), time_sensitive_notifications: (on|off)(:on|:off)(true|false))
The ID of your Developer Portal team if you're in multiple teams
The name of your Developer Portal team if you're in multiple teams
Your Apple ID Username
Shape for nexusUpload options argument
Nexus endpoint e.g. http://nexus:8081
File to be uploaded to Nexus
Nexus mount path (Nexus 3 instances have this configured as empty by default)
Nexus major version
Nexus password
Proxy address
Proxy password
Proxy port
Proxy username
Nexus repository artifact classifier (optional)
Nexus repository group id e.g. com.company
Nexus repository id e.g. artefacts
Nexus repository commandect name. Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed
Nexus repository commandect version
Verify SSL
Nexus username
Make detailed output
Shape for notarize options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
Provider short name for accounts associated with multiple providers
Bundle identifier to uniquely identify the package
Path to package to notarize, e.g. .app bundle or disk image
Whether to print notarization log file, listing issues on failure and warnings on success
Do not staple the notarization ticket to the artifact; useful for single file executables and ZIP archives
Whether to try early stapling while the notarization request is in progress
Whether to xcrun notarytool
or xcrun altool
Apple ID username
Whether to log requests
Shape for notification options argument
Bundle identifier of application to be opened when the notification is clicked
The URL of an image to display instead of the application icon (Mavericks+ only)
The URL of an image to display attached to the notification (Mavericks+ only)
Shell command to run when the notification is clicked
The message to display in the notification
URL of the resource to be opened when the notification is clicked
The name of a sound to play when the notification appears (names are listed in Sound Preferences)
A subtitle to display in the notification
The title to display in the notification
Shape for notify options argument
Shape for numberOfCommits options argument
Returns number of all commits instead of current branch
Shape for oclint options argument
Allow duplicated violations in the OCLint report
The json compilation database, use xctool reporter 'json-compilation-database'
List of rules to disable
Enable Clang Static Analyzer, and integrate results into OCLint report
Compile every source, and analyze across global contexts (depends on number of source files, could results in high memory load)
List of rules to pick explicitly
Exclude all files matching this regex
Additional argument to append to the compiler command line
List enabled rules
The max allowed number of priority 1 violations
The max allowed number of priority 2 violations
The max allowed number of priority 3 violations
The path to oclint binary
Override the default behavior of rules
The reports file path
The type of the report (default: html)
Select all files matching this regex
DEPRECATED! Use :select_regex
instead - Select all files matching this reqex
List of rule thresholds to override the default behavior of rules
Shape for onesignal options argument
GCM SENDER ID
ANDROID GCM KEY
APNS environment
APNS P12 File (in .p12 format)
APNS P12 password
OneSignal App ID. Setting this updates an existing app
OneSignal App Name. This is required when creating an app (in other words, when :app_id
is not set, and optional when updating an app
OneSignal Authorization Key
FCM Service Account JSON File (in .json format)
OneSignal Organization ID
Shape for optOutCrashReporting options argument
Shape for optOutUsage options argument
Shape for pem options argument
If the current certificate is active for less than this number of days, generate a new one
The bundle identifier of your app
Renew the development push certificate instead of the production one
Create a new push certificate, even if the current one is active for 30 (or PEM_ACTIVE_DAYS_LIMIT) more days
Generate a p12 file additionally to a PEM file
Block that is called if there is a new profile
The path to a directory in which all certificates and private keys should be stored
The password that is used for your p12 file
The file name of the generated .pem file
Set certificate's platform. Used for creation of production & development certificates. Supported platforms: ios, macos
Set to save the private RSA key
The ID of your Developer Portal team if you're in multiple teams
The name of your Developer Portal team if you're in multiple teams
Your Apple ID Username
Create a Website Push certificate
Shape for pilot options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The bundle identifier of the app to upload or manage testers (optional)
The platform to use (optional)
The version number of the application build to distribute. If the version number is not specified, then the most recent build uploaded to TestFlight will be distributed. If specified, the most recent build for the version number will be distributed
Apple ID property in the App Information section in App Store Connect
Provide the 'Beta App Description' when uploading a new build
Provide the beta app email when uploading a new build
Beta app review information for contact info and demo account
The build number of the application build to distribute. If the build number is not specified, the most recent build is distributed
Provide the 'What to Test' text when uploading a new build
Do you need a demo account when Apple does review?
The short ID of your team in the developer portal, if you're in multiple teams. Different from your iTC team ID!
Should the build be distributed to external testers? If set to true, use of groups
option is required
Distribute a previously uploaded build (equivalent to the fastlane pilot distribute
command)
The tester's email
Should expire previous builds?
The tester's first name
Associate tester to one group or more by group name / group id. E.g. -g "Team 1","Team 2"
This is required when distribute_external
option is set to true or when we want to add a tester to one or more external testing groups
Path to the ipa file to upload
The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off
. The short names of providers should be listed in the second column
The tester's last name
Localized beta app test info for description, feedback email, marketing url, and privacy policy
Localized beta app test info for what's new
Should notify external testers? (Not setting a value will use App Store Connect's default which is to notify)
Path to your pkg file
Expire previous if it's 'waiting for review'
Skip the distributing action of pilot and only upload the ipa file
If set to true, the distribute_external
option won't work and no build will be distributed to testers. (You might want to use this option if you are using this action on CI and have to pay for 'minutes used' on your CI plan). If set to true
and a changelog is provided, it will partially wait for the build to appear on AppStore Connect so the changelog can be set, and skip the remaining processing steps
Send the build for a beta review
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
Path to a CSV file of testers
DEPRECATED! Update build info immediately after validation. This is deprecated and will be removed in a future release. App Store Connect no longer supports setting build info until after build processing has completed, which is when build info is updated by default
Your Apple ID Username
Provide the 'Uses Non-Exempt Encryption' for export compliance. This is used if there is 'ITSAppUsesNonExemptEncryption' is not set in the Info.plist
DEPRECATED! No longer needed with the transition over to the App Store Connect API - Use version info from uploaded ipa file to determine what build to use for distribution. If set to false, latest processing or any latest build will be used
Interval in seconds to wait for App Store Connect processing
Timeout duration in seconds to wait for App Store Connect processing. If set, after exceeding timeout duration, this will force stop
to wait for App Store Connect processing and exit with exception
Shape for podLibLint options argument
Allow warnings during pod lint
Validate with the Xcode Static Analysis tool (available since cocoapods >= 1.6.1)
A Glob of additional ancillary podspecs which are used for linting via :podspec. If there are --include-podspecs, then these are removed from them (available since cocoapods >= 1.7)
Lint stops on the first failing platform or subspec
A Glob of additional ancillary podspecs which are used for linting via :path (available since cocoapods >= 1.7)
Lint leaves the build directory intact for inspection
Lint skips validation of subspecs
Lint against specific platforms (defaults to all platforms supported by the podspec). Multiple platforms must be comma-delimited (available since cocoapods >= 1.6)
Path of spec to lint
Lint skips checks that apply only to public specs
Lint skips checks that would require to download and build the spec
Lint skips validating that the pod can be imported (available since cocoapods >= 1.3)
Lint skips building and running tests during validation (available since cocoapods >= 1.3)
The sources of repos you want the pod spec to lint with, separated by commas
A specific subspec to lint instead of the entire spec
The SWIFT_VERSION that should be used to lint the spec. This takes precedence over a .swift-version file
Use bundle exec when there is a Gemfile presented
Lint uses static libraries to install the spec
Lint using modular libraries (available since cocoapods >= 1.6)
Allow output detail in console
Shape for podPush options argument
Allow warnings during pod push
Does not perform the step of pushing REPO to its remote
Disallow pushing that would overwrite an existing spec
The Podspec you want to push
The repo you want to push. Pushes to Trunk by default
Lint skips validating that the pod can be imported
Lint skips building and running tests during validation
The sources of repos you want the pod spec to lint with, separated by commas
The SWIFT_VERSION that should be used to lint the spec. This takes precedence over a .swift-version file
If validation depends on other recently pushed pods, synchronize
Use bundle exec when there is a Gemfile presented
Convert the podspec to JSON before pushing it to the repo
Allow lint to use static libraries to install the spec
Use modular headers option during validation
Show more debugging information
Shape for podioItem options argument
App ID of the app you intend to authenticate with (see https://developers.podio.com/authentication/app_auth)
App token of the app you intend to authenticate with (see https://developers.podio.com/authentication/app_auth)
Client ID for Podio API (see https://developers.podio.com/api-key)
Client secret for Podio API (see https://developers.podio.com/api-key)
String specifying the field key used for identification of an item
String uniquely specifying an item within the app
Dictionary of your app fields. Podio supports several field types, see https://developers.podio.com/doc/items
Shape for precheck options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The bundle identifier of your app
using a copyright date that is any different from this current year, or missing a date
including words that might be considered objectionable
mentioning any of the user-specified words passed to custom_text(data: [words])
The default rule level unless otherwise configured
using text indicating that your IAP is free
mentioning features or content that is not currently available in your app
Should check in-app purchases?
mentioning in a way that could be considered negative
mentioning other platforms, like Android or Blackberry
using placeholder text (e.g.:"lorem ipsum", "text here", etc...)
The platform to use (optional)
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
using text indicating this release is a test
unreachable URLs in app metadata
Should force check live app?
Your Apple ID Username
Shape for println options argument
Message to be printed out
Shape for produce options argument
App Identifier (Bundle ID, e.g. com.krausefx.app)
App Name
Initial version number (e.g. '1.0')
App Identifier Suffix (Ignored if App Identifier does not end with .*)
The name of your company. It's used to set company name on App Store Connect team's app pages. Only required if it's the first app you create
Array with Spaceship App Services (e.g. access_wifi: (on|off), app_attest: (on|off), app_group: (on|off), apple_pay: (on|off), associated_domains: (on|off), auto_fill_credential: (on|off), class_kit: (on|off), icloud: (legacy|cloudkit), custom_network_protocol: (on|off), data_protection: (complete|unlessopen|untilfirstauth), extended_virtual_address_space: (on|off), family_controls: (on|off), file_provider_testing_mode: (on|off), fonts: (on|off), game_center: (ios|mac), health_kit: (on|off), hls_interstitial_preview: (on|off), home_kit: (on|off), hotspot: (on|off), in_app_purchase: (on|off), inter_app_audio: (on|off), low_latency_hls: (on|off), managed_associated_domains: (on|off), maps: (on|off), multipath: (on|off), network_extension: (on|off), nfc_tag_reading: (on|off), personal_vpn: (on|off), passbook: (on|off), push_notification: (on|off), sign_in_with_apple: (on), siri_kit: (on|off), system_extension: (on|off), user_management: (on|off), vpn_configuration: (on|off), wallet: (on|off), wireless_accessory: (on|off), car_play_audio_app: (on|off), car_play_messaging_app: (on|off), car_play_navigation_app: (on|off), car_play_voip_calling_app: (on|off), critical_alerts: (on|off), hotspot_helper: (on|off), driver_kit: (on|off), driver_kit_endpoint_security: (on|off), driver_kit_family_hid_device: (on|off), driver_kit_family_networking: (on|off), driver_kit_family_serial: (on|off), driver_kit_hid_event_service: (on|off), driver_kit_transport_hid: (on|off), multitasking_camera_access: (on|off), sf_universal_link_api: (on|off), vp9_decoder: (on|off), music_kit: (on|off), shazam_kit: (on|off), communication_notifications: (on|off), group_activities: (on|off), health_kit_estimate_recalibration: (on|off), time_sensitive_notifications: (on|off))
DEPRECATED! Please use enable_services
instead - Array with Spaceship App Services
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
Array of App Store Connect users. If provided, you can limit access to this newly created app for users with the App Manager, Developer, Marketer or Sales roles
Primary Language (e.g. 'en-US', 'fr-FR')
The platform to use (optional)
The platforms to use (optional)
Skip the creation of the app on the Apple Developer Portal
Skip the creation of the app on App Store Connect
SKU Number (e.g. '1234')
The ID of your Developer Portal team if you're in multiple teams
The name of your Developer Portal team if you're in multiple teams
Your Apple ID Username
Shape for prompt options argument
Is that a boolean question (yes/no)? This will add (y/n) at the end
The default text that will be used when being executed on a CI service
Enable multi-line inputs by providing an end text (e.g. 'END') which will stop the user input
Is that a secure text (yes/no)?
The text that will be displayed to the user
Shape for pushGitTags options argument
Force push to remote
The remote to push tags to
The tag to push to remote
Shape for pushToGitRemote options argument
Force push to remote
Force push with lease to remote
The local branch to push from. Defaults to the current branch
Whether or not to use --no-verify
Array of strings to be passed using the '--push-option' option
The remote to push to
The remote branch to push to. Defaults to the local branch
Whether or not to use --set-upstream
Whether tags are pushed to remote
Shape for puts options argument
Message to be printed out
Shape for readPodspec options argument
Path to the podspec to be read
Shape for recreateSchemes options argument
The Xcode project
Shape for registerDevice options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
Provide the name of the device to register as
Provide the platform of the device to register as (ios, mac)
The ID of your Developer Portal team if you're in multiple teams
The name of your Developer Portal team if you're in multiple teams
Provide the UDID of the device to register as
Optional: Your Apple ID
Shape for registerDevices options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
A hash of devices, with the name as key and the UDID as value
Provide a path to a file with the devices to register. For the format of the file see the examples
The platform to use (optional)
The ID of your Developer Portal team if you're in multiple teams
The name of your Developer Portal team if you're in multiple teams
Optional: Your Apple ID
Shape for resetGitRepo options argument
Setting this to true will clean the whole repository, ignoring anything in your local .gitignore. Set this to true if you want the equivalent of a fresh clone, and for all untracked and ignore files to also be removed
You can pass a string, or array of, file pattern(s) here which you want to have survive the cleaning process, and remain on disk, e.g. to leave the artifacts
directory you would specify exclude: 'artifacts'
. Make sure this pattern is also in your gitignore! See the gitignore documentation for info on patterns
Array of files the changes should be discarded. If not given, all files will be discarded
Skip verifying of previously clean state of repo. Only recommended in combination with files
option
Skip 'git clean' to avoid removing untracked files like .env
Shape for resetSimulatorContents options argument
DEPRECATED! Use :os_versions
instead - Which OS versions of Simulators you want to reset content and settings, this does not remove/recreate the simulators
Which OS versions of Simulators you want to reset content and settings, this does not remove/recreate the simulators
Shape for resign options argument
Set new bundle ID during resign (CFBundleIdentifier
)
Bundle version to force resigned ipa to use (CFBundleVersion
)
Display name to force resigned ipa to use
Path to the entitlement file to use, e.g. myApp/MyApp.entitlements
Path to the ipa file to resign. Optional if you use the gym or xcodebuild action
Provide a path to a keychain file that should be used by /usr/bin/codesign
Path to your provisioning_profile. Optional if you use sigh
Short version string to force resigned ipa to use (CFBundleShortVersionString
)
Code signing identity to use. e.g. iPhone Distribution: Luka Mirosevic (0123456789)
Extract app bundle codesigning entitlements and combine with entitlements from new provisioning profile
Version number to force resigned ipa to use. Updates both CFBundleShortVersionString
and CFBundleVersion
values in Info.plist
. Applies for main app and all nested apps or extensions
Shape for restoreFile options argument
Original file name you want to restore
Shape for rocket options argument
Shape for rsync options argument
destination file/folder
Port
source file/folder
Shape for rubyVersion options argument
Shape for runTests options argument
Should the address sanitizer be turned on?
The bundle identifier of the app to uninstall (only needed when enabling reinstall_app)
App name to use in slack message and logfile name
Build for testing only, does not run tests
The directory where to store the raw log
Platform to build when using a Catalyst enabled app. Valid values are: ios, macos
Should the project be cleaned before building it?
Sets a custom path for Swift Package Manager dependencies
Should code coverage be generated? (Xcode 7 and up)
Specify the exact number of test runners that will be spawned during parallel testing. Equivalent to -parallel-testing-worker-count
The configuration to use when building the app. Defaults to 'Release'
DEPRECATED! Use --output_files
instead - Sets custom full report file name when generating a single report
Target version of the app being build or tested. Used to filter out simulator version
The directory where build products and other derived data will go
Use only if you're a pro, use the other options instead
The name of the simulator type you want to run tests on (e.g. 'iPhone 6' or 'iPhone SE (2nd generation) (14.5)')
Array of devices to run the tests on (e.g. ['iPhone 6', 'iPad Air', 'iPhone SE (2nd generation) (14.5)'])
Do not run test bundles in parallel on the specified destinations. Testing will occur on each destination serially. Equivalent to -disable-concurrent-testing
Prevents packages from automatically being resolved to versions other than those recorded in the Package.resolved
file
Enabling this option will disable the simulator from showing the 'Slide to type' prompt
DEPRECATED! Use output_style: 'raw'
instead - Disable xcpretty formatting of build, similar to output_style='raw'
but this will also skip the test results table
Should fail if devices not found
Should this step stop the build if the tests fail? Set this to false if you're using trainer
Enabling this option will automatically killall Simulator processes before the run
DEPRECATED! Use 'xcpretty_formatter' instead - A custom xcpretty formatter to use
If the logs generated by the app (e.g. using NSLog, perror, etc.) in the Simulator should be written to the output_directory
Constrain the number of simulator devices on which to test concurrently. Equivalent to -maximum-concurrent-test-simulator-destinations
The number of times a test can fail
Array of strings matching test plan configurations to run
Array of strings matching Test Bundle/Test Suite/Test Cases to run
Should the HTML report be opened when tests are completed?
The directory in which all reports will be stored
Comma separated list of the output files, corresponding to the types provided by :output_types (order should match). If specifying an output type of json-compilation-database with :use_clang_report_name enabled, that option will take precedence
Remove retry attempts from test results table and the JUnit report (if not using xcpretty)
Define how the output should look like. Valid values are: standard, basic, rspec, or raw (disables xcpretty during xcodebuild)
Comma separated list of the output types (e.g. html, junit, json-compilation-database)
Should provide additional copy of .xctestrun file (settings.xctestrun) and place in output path?
Path to the Swift Package
Optionally override the per-target setting in the scheme for running tests in parallel. Equivalent to -parallel-testing-enabled
Enabling this option will launch the first simulator prior to calling any xcodebuild command
Path to the project file
Enabling this option will automatically uninstall the application before running it
Enabling this option will automatically erase the simulator before running the application
Should an Xcode result bundle be generated in the output directory
Custom path for the result bundle, overrides result_bundle
Adds arch=x86_64 to the xcodebuild 'destination' argument to run simulator in a Rosetta mode
The project's scheme. Make sure it's marked as Shared
The SDK that should be used for building the application
Should zip the derived data build products and place in output path?
Should debug build be skipped before test build?
Should skip auto detecting of devices if none were specified
Skips resolution of Swift Package Manager dependencies
Don't publish to slack, even when an URL is given
Array of strings matching test plan configurations to skip
Array of strings matching Test Bundle/Test Suite/Test Cases to skip
#channel or @username
Specifies default payloads to include in Slack messages. For more info visit https://docs.fastlane.tools/actions/slack
Overrides the webhook's image property if slack_use_webhook_configured_username_and_icon is false
The message included with each message posted to slack
Only post on Slack if the tests fail
Create an Incoming WebHook for your Slack group to post results there
Use webhook's default username and icon settings? (true/false)
Overrides the webhook's username property if slack_use_webhook_configured_username_and_icon is false
Suppress the output of xcodebuild to stdout. Output is still saved in buildlog_path
Test without building, requires a derived data path
The testplan associated with the scheme that should be used for testing
Should the thread sanitizer be turned on?
The toolchain that should be used for building the application (e.g. com.apple.dt.toolchain.Swift_2_3, org.swift.30p620160816a
)
Generate the json compilation database with clang naming convention (compile_commands.json)
Lets xcodebuild use system's scm configuration
Path to the workspace file
Pass additional arguments to xcodebuild. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
Use an extra XCCONFIG file to build your app
Allows for override of the default xcodebuild
command
xcodebuild formatter to use (ex: 'xcbeautify', 'xcbeautify --quieter', 'xcpretty', 'xcpretty -test'). Use empty string (ex: '') to disable any formatter (More information: https://docs.fastlane.tools/best-practices/xcodebuild-formatters/)
Pass in xcpretty additional command line arguments (e.g. '--test --no-color' or '--tap --no-utf')
A custom xcpretty formatter to use
Run tests using the provided .xctestrun
file
Shape for s3 options argument
AWS Access Key ID
Uploaded object permissions e.g public_read (default), private, public_read_write, authenticated_read
AWS bucket name
zipped .dsym package for the build
uploaded html filename
html erb template path
.ipa file for the build
S3 'path'. Values from Info.plist will be substituted for keys wrapped in {}
uploaded plist filename
plist template path
AWS region (for bucket creation)
AWS Secret Access Key
Optional source directory e.g. ./build
Upload relevant metadata for this build
uploaded version filename
version erb template path
Shape for say options argument
If say should be muted with text printed out
Text to be spoken out loud (as string or array of strings)
Shape for scan options argument
Should the address sanitizer be turned on?
The bundle identifier of the app to uninstall (only needed when enabling reinstall_app)
App name to use in slack message and logfile name
Build for testing only, does not run tests
The directory where to store the raw log
Platform to build when using a Catalyst enabled app. Valid values are: ios, macos
Should the project be cleaned before building it?
Sets a custom path for Swift Package Manager dependencies
Should code coverage be generated? (Xcode 7 and up)
Specify the exact number of test runners that will be spawned during parallel testing. Equivalent to -parallel-testing-worker-count
The configuration to use when building the app. Defaults to 'Release'
DEPRECATED! Use --output_files
instead - Sets custom full report file name when generating a single report
Target version of the app being build or tested. Used to filter out simulator version
The directory where build products and other derived data will go
Use only if you're a pro, use the other options instead
The name of the simulator type you want to run tests on (e.g. 'iPhone 6' or 'iPhone SE (2nd generation) (14.5)')
Array of devices to run the tests on (e.g. ['iPhone 6', 'iPad Air', 'iPhone SE (2nd generation) (14.5)'])
Do not run test bundles in parallel on the specified destinations. Testing will occur on each destination serially. Equivalent to -disable-concurrent-testing
Prevents packages from automatically being resolved to versions other than those recorded in the Package.resolved
file
Enabling this option will disable the simulator from showing the 'Slide to type' prompt
DEPRECATED! Use output_style: 'raw'
instead - Disable xcpretty formatting of build, similar to output_style='raw'
but this will also skip the test results table
Should fail if devices not found
Should this step stop the build if the tests fail? Set this to false if you're using trainer
Enabling this option will automatically killall Simulator processes before the run
DEPRECATED! Use 'xcpretty_formatter' instead - A custom xcpretty formatter to use
If the logs generated by the app (e.g. using NSLog, perror, etc.) in the Simulator should be written to the output_directory
Constrain the number of simulator devices on which to test concurrently. Equivalent to -maximum-concurrent-test-simulator-destinations
The number of times a test can fail
Array of strings matching test plan configurations to run
Array of strings matching Test Bundle/Test Suite/Test Cases to run
Should the HTML report be opened when tests are completed?
The directory in which all reports will be stored
Comma separated list of the output files, corresponding to the types provided by :output_types (order should match). If specifying an output type of json-compilation-database with :use_clang_report_name enabled, that option will take precedence
Remove retry attempts from test results table and the JUnit report (if not using xcpretty)
Define how the output should look like. Valid values are: standard, basic, rspec, or raw (disables xcpretty during xcodebuild)
Comma separated list of the output types (e.g. html, junit, json-compilation-database)
Should provide additional copy of .xctestrun file (settings.xctestrun) and place in output path?
Path to the Swift Package
Optionally override the per-target setting in the scheme for running tests in parallel. Equivalent to -parallel-testing-enabled
Enabling this option will launch the first simulator prior to calling any xcodebuild command
Path to the project file
Enabling this option will automatically uninstall the application before running it
Enabling this option will automatically erase the simulator before running the application
Should an Xcode result bundle be generated in the output directory
Custom path for the result bundle, overrides result_bundle
Adds arch=x86_64 to the xcodebuild 'destination' argument to run simulator in a Rosetta mode
The project's scheme. Make sure it's marked as Shared
The SDK that should be used for building the application
Should zip the derived data build products and place in output path?
Should debug build be skipped before test build?
Should skip auto detecting of devices if none were specified
Skips resolution of Swift Package Manager dependencies
Don't publish to slack, even when an URL is given
Array of strings matching test plan configurations to skip
Array of strings matching Test Bundle/Test Suite/Test Cases to skip
#channel or @username
Specifies default payloads to include in Slack messages. For more info visit https://docs.fastlane.tools/actions/slack
Overrides the webhook's image property if slack_use_webhook_configured_username_and_icon is false
The message included with each message posted to slack
Only post on Slack if the tests fail
Create an Incoming WebHook for your Slack group to post results there
Use webhook's default username and icon settings? (true/false)
Overrides the webhook's username property if slack_use_webhook_configured_username_and_icon is false
Suppress the output of xcodebuild to stdout. Output is still saved in buildlog_path
Test without building, requires a derived data path
The testplan associated with the scheme that should be used for testing
Should the thread sanitizer be turned on?
The toolchain that should be used for building the application (e.g. com.apple.dt.toolchain.Swift_2_3, org.swift.30p620160816a
)
Generate the json compilation database with clang naming convention (compile_commands.json)
Lets xcodebuild use system's scm configuration
Path to the workspace file
Pass additional arguments to xcodebuild. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
Use an extra XCCONFIG file to build your app
Allows for override of the default xcodebuild
command
xcodebuild formatter to use (ex: 'xcbeautify', 'xcbeautify --quieter', 'xcpretty', 'xcpretty -test'). Use empty string (ex: '') to disable any formatter (More information: https://docs.fastlane.tools/best-practices/xcodebuild-formatters/)
Pass in xcpretty additional command line arguments (e.g. '--test --no-color' or '--tap --no-utf')
A custom xcpretty formatter to use
Run tests using the provided .xctestrun
file
Shape for scp options argument
Download
Hostname
Password
Port
Upload
Username
Shape for screengrab options argument
Configure the host used by adb to connect, allows running on remote devices farm
Path to the root of your Android SDK installation, e.g. ~/tools/android-sdk-macosx
The path to the APK for the app under test
The package name of the app under test (e.g. com.yourcompany.yourapp)
DEPRECATED! The Android build tools version to use, e.g. '23.0.2'
Enabling this option will automatically clear previously generated screenshots before running screengrab
Type of device used for screenshots. Matches Google Play Types (phone, sevenInch, tenInch, tv, wear)
DEPRECATED! Return the device to this locale after running tests
Whether or not to exit Screengrab on test failure. Exiting on failure will not copy screenshots to local machine nor open screenshots summary
Additional launch arguments
A list of locales which should be used
The directory where to store the screenshots
Enabling this option will automatically uninstall the application before running it
Don't open the summary after running screengrab
Use the device or emulator with the given serial number or qualifier
The fully qualified class name of your test instrumentation runner
The path to the APK for the tests bundle
The package name of the tests bundle (e.g. com.yourcompany.yourapp.test)
DEPRECATED! Restarts the adb daemon using adb root
to allow access to screenshots directories on device. Use if getting 'Permission denied' errors
Only run tests in these Java classes
Only run tests in these Java packages
Add timestamp suffix to screenshot filename
Shape for setBuildNumberRepository options argument
Use hg revision number instead of hash (ignored for non-hg repos)
explicitly specify which xcodeproj to use
Shape for setChangelog options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The bundle identifier of your app
Changelog text that should be uploaded to App Store Connect
The platform of the app (ios, appletvos, mac)
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
Your Apple ID Username
The version number to create/update
Shape for setGithubRelease options argument
Use a Bearer authorization token. Usually generated by GitHub Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable
Personal API Token for GitHub - generate one at https://github.com/settings/tokens
Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch (usually master)
Description of this release
Whether the release should be marked as draft
Whether the name and body of this release should be generated automatically
Whether the release should be marked as prerelease
Name of this release
The path to your repo, e.g. 'fastlane/fastlane'
The server url. e.g. 'https://your.internal.github.host/api/v3' (Default: 'https://api.github.com')
Pass in the tag name
Path to assets to be uploaded with the release
Shape for setInfoPlistValue options argument
Name of key in plist
Path to the output file you want to generate
Path to plist file you want to update
Name of subkey in plist
Value to setup
Shape for setPodKey options argument
The key to be saved with cocoapods-keys
The project name
Use bundle exec when there is a Gemfile presented
The value to be saved with cocoapods-keys
Shape for setupCi options argument
Force setup, even if not executed by CI
CI provider. If none is set, the provider is detected automatically
Set a custom timeout in seconds for keychain. Set 0
if you want to specify 'no time-out'
Shape for setupCircleCi options argument
Force setup, even if not executed by CircleCI
Shape for setupJenkins options argument
Add to keychain search list, valid values are true, false, :add, and :replace
Code signing identity
The directory where built products and other derived data will go
Force setup, even if not executed by Jenkins
Keychain password
Path to keychain
The directory in which the ipa file should be stored in
Produce the result bundle describing what occurred will be placed
Set code signing identity from CODE_SIGNING_IDENTITY environment
Set keychain as default
Unlocks keychain
Shape for setupTravis options argument
Force setup, even if not executed by travis
Shape for sh options argument
Shell command to be executed
A callback invoked with the command output if there is a non-zero exit status
Determines whether fastlane should print out the executed command itself and output of the executed command. If command line option --troubleshoot is used, then it overrides this option to true
Shape for sigh options argument
Setting this flag will generate AdHoc profiles instead of App Store Profiles
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The bundle identifier of your app
A list of cached bundle ids
A list of cached certificates
A list of cached devices
A list of cached bundle ids
The ID of the code signing certificate to use (e.g. 78ADL6LVAA)
The certificate name to use for new profiles, or to renew with. (e.g. "Felix Krause")
Setting this flag will generate Developer ID profiles instead of App Store Profiles
Renew the development certificate instead of the production one
Should the command fail if it was about to create a duplicate of an existing provisioning profile. It can happen due to issues on Apple Developer Portal, when profile to be recreated was not properly deleted first
Filename to use for the generated provisioning profile (must include .mobileprovision)
Renew provisioning profiles regardless of its state - to automatically add all devices for ad hoc profiles
Use in combination with :provisioning_name - when true only profiles matching this exact name will be downloaded
Include all matching certificates in the provisioning profile. Works only for the 'development' provisioning profile type
Include Apple Silicon Mac devices in provisioning profiles for iOS/iPadOS apps
Directory in which the profile should be stored
Set the provisioning profile's platform (i.e. ios, tvos, macos, catalyst)
The name of the profile that is used on the Apple Developer Portal
Only fetch existing profile, don't generate new ones
Skips the verification of the certificates for every existing profiles. This will make sure the provisioning profile can be used on the local machine
Skips the verification of existing profiles which is useful if you have thousands of profiles
By default, the certificate will be added to your local machine. Setting this flag will skip this action
The ID of your Developer Portal team if you're in multiple teams
The name of your Developer Portal team if you're in multiple teams
The name of provisioning profile template. If the developer account has provisioning profile templates (aka: custom entitlements), the template name can be found by inspecting the Entitlements drop-down while creating/editing a provisioning profile (e.g. "Apple Pay Pass Suppression Development")
Your Apple ID Username
Shape for skipDocs options argument
Shape for slack options argument
Merge additional properties in the slack attachment, see https://api.slack.com/docs/attachments
#channel or @username
Specifies default payloads to include. Pass an empty array to suppress all the default payloads
Should an error sending the slack notification cause a failure? (true/false)
Overrides the webhook's image property if use_webhook_configured_username_and_icon is false
Find and link channel names and usernames (true/false)
The message that should be displayed on Slack. This supports the standard Slack markup language
Add additional information to this post. payload must be a hash containing any key with any value
This is optional text that appears above the message attachment block. This supports the standard Slack markup language
Create an Incoming WebHook for your Slack group
Was this build successful? (true/false)
Use webhook's default username and icon settings? (true/false)
Overrides the webhook's username property if use_webhook_configured_username_and_icon is false
Shape for slather options argument
Specify which architecture the binary file is in. Needed for universal binaries
Basename of the binary file, this should match the name of your bundle excluding its extension (i.e. YourApp [for YourApp.app bundle])
Binary file name to be used for code coverage
The location of the build output
Tell slather that it is running on Buildkite
Tell slather that it is running on CircleCI
Tell slather that it should output results as Cobertura XML format
Configuration to use when calling slather (since slather-2.4.1)
Tell slather that it should post data to Coveralls
The amount of decimals to use for % coverage reporting
Tell slather that it is running on GitHub Actions
Tell slather that it should output results as Gutter JSON format
Tell slather that it should output results as static HTML pages
Tell slather to ignore files matching a path or any path from an array of paths
The input format that slather should look for
Tell slather that it is running on Jenkins
Tell slather that it should output results as static JSON report
Tell slather that it should output results as llvm-cov show format
Tell slather the location of for your output files
The project file that slather looks at
Scheme to use when calling slather
Tell slather that it should open static html pages automatically
Tell slather that it should output results to the terminal
Tell slather that it should output results as SonarQube Generic XML format
Tell slather the location of your source files
A Dir.glob compatible pattern used to limit the lookup to specific source files. Ignored in gcov mode
Tell slather that it is running on TeamCity
Tell slather that it is running on TravisCI
Tell slather that it is running on TravisCI Pro
Use bundle exec to execute slather. Make sure it is in the Gemfile
Tell slather to enable verbose mode
The workspace that slather looks at
Relative path to a file used in place of '.slather.yml'
Shape for snapshot options argument
A list of photos that should be added to the simulator before running the application
A list of videos that should be added to the simulator before running the application
The bundle identifier of the app to uninstall (only needed when enabling reinstall_app)
The directory where to store the build log
Should the project be cleaned before building it?
Enabling this option will automatically clear previously generated screenshots before running snapshot
Sets a custom path for Swift Package Manager dependencies
Take snapshots on multiple simulators concurrently. Note: This option is only applicable when running against Xcode 9
The configuration to use when building the app. Defaults to 'Release'
Enabling this option will configure the Simulator to be in dark mode (false for light, true for dark)
The directory where build products and other derived data will go
A list of devices you want to take the screenshots from
Prevents packages from automatically being resolved to versions other than those recorded in the Package.resolved
file
Disable the simulator from showing the 'Slide to type' prompt
Disable xcpretty formatting of build
Enabling this option will automatically erase the simulator before running the application
Enabling this option will prevent displaying the simulator window
A path to screenshots.html template
By default, the latest version should be used automatically. If you want to change it, do it here
A list of languages which should be used
A list of launch arguments which should be used
Enabling this option will configure the Simulator's system language
Separate the log files per device and per language
The number of times a test can fail before snapshot should stop retrying
Array of strings matching Test Bundle/Test Suite/Test Cases to run
The directory where to store the screenshots
If the logs generated by the app (e.g. using NSLog, perror, etc.) in the Simulator should be written to the output_directory
Enabling this option will automatically override the status bar to show 9:41 AM, full battery, and full reception (Adjust 'SNAPSHOT_SIMULATOR_WAIT_FOR_BOOT_TIMEOUT' environment variable if override status bar is not working. Might be because simulator is not fully booted. Defaults to 10 seconds)
Fully customize the status bar by setting each option here. Requires override_status_bar
to be set to true
. See xcrun simctl status_bar --help
Path to the project file
Enabling this option will automatically uninstall the application before running it
Should an Xcode result bundle be generated in the output directory
The scheme you want to use, this must be the scheme for the UI Tests
The SDK that should be used for building the application
Do not check for most recent SnapshotHelper code
Don't open the HTML summary after running snapshot
Skips resolution of Swift Package Manager dependencies
Array of strings matching Test Bundle/Test Suite/Test Cases to skip
Should snapshot stop immediately after the tests completely failed on one device?
Suppress the output of xcodebuild to stdout. Output is still saved in buildlog_path
The name of the target you want to test (if you desire to override the Target Application from Xcode)
Test without building, requires a derived data path
The testplan associated with the scheme that should be used for testing
Lets xcodebuild use system's scm configuration
Path to the workspace file
Pass additional arguments to xcodebuild for the test phase. Be sure to quote the setting names and values e.g. OTHER_LDFLAGS="-ObjC -lstdc++"
Use an extra XCCONFIG file to build your app
xcodebuild formatter to use (ex: 'xcbeautify', 'xcbeautify --quieter', 'xcpretty', 'xcpretty -test'). Use empty string (ex: '') to disable any formatter (More information: https://docs.fastlane.tools/best-practices/xcodebuild-formatters/)
DEPRECATED! Use xcodebuild_formatter: ''
instead - Additional xcpretty arguments
Shape for sonar options argument
Pass the branch name which is getting scanned
Comma-separated paths to directories to be excluded from the analysis
The path to your sonar project configuration file; defaults to sonar-project.properties
The key sonar uses to identify the project, e.g. name.gretzki.awesomeApp
. Must either be specified here or inside the sonar project configuration file
Language key, e.g. objc
The name of the project that gets displayed on the sonar report page. Must either be specified here or inside the sonar project configuration file
The project's version that gets displayed on the sonar report page. Must either be specified here or inside the sonar project configuration file
The long-lived branch into which the PR will be merged
The name of the branch that contains the changes to be merged
Unique identifier of your PR. Must correspond to the key of the PR in GitHub or TFS
DEPRECATED! Login and password were deprecated in favor of login token. See https://community.sonarsource.com/t/deprecating-sonar-login-and-sonar-password-in-favor-of-sonar-token/95829 for more details - Pass the Sonar Login Token (e.g: xxxxxxprivate_token_XXXXbXX7e)
Key of the organization on SonarCloud
Pass additional arguments to sonar-scanner. Be sure to provide the arguments with a leading -D
e.g. FL_SONAR_RUNNER_ARGS="-Dsonar.verbose=true"
Pass the Sonar Token (e.g: xxxxxxprivate_token_XXXXbXX7e)
Pass the url of the Sonar server
Used encoding of source files, e.g., UTF-8
Comma-separated paths to directories containing source files. Must either be specified here or inside the sonar project configuration file
Shape for sourcedocs options argument
Generate documentation for all modules in a Swift package
Delete output folder before generating documentation
Put methods, properties and enum cases inside collapsible blocks
The text to begin links with
The text to end links with (default: .md)
Access level to include in documentation [private, fileprivate, internal, public, open] (default: public)
Generate documentation for a Swift module
Include the module name as part of the output folder path
Output directory to clean (default: Documentation/Reference)
Generate documentation that is reproducible: only depends on the sources
Create documentation for specific scheme
Create documentation for specific sdk platform
Generate documentation for Swift Package Manager module
Generate a table of contents with properties and methods for each type
Shape for spaceshipLogs options argument
Copies the contents of the found Spaceship log file(s) to the clipboard
Copies the found Spaceship log file(s) to a directory
Finds only the latest Spaceshop log file if set to true, otherwise returns all
Prints the contents of the found Spaceship log file(s)
Prints the paths of the found Spaceship log file(s)
Shape for spaceshipStats options argument
Print all URLs requested
Shape for splunkmint options argument
Splunk MINT App API key e.g. f57a57ca
Splunk MINT API token e.g. e05ba40754c4869fb7e0b61
dSYM.zip file to upload to Splunk MINT
Proxy address
Proxy password
Proxy port
Proxy username
Show upload progress
Make detailed output
Shape for spm options argument
DEPRECATED! build_path
option is deprecated, use scratch_path
instead - Specify build/cache directory [default: ./.build]
The swift command (one of: build, test, clean, reset, update, resolve, generate-xcodeproj, init)
Build with configuration (debug|release) [default: debug]
Disable using the sandbox when executing subprocesses
Enables code coverage for the generated Xcode project when using the 'generate-xcodeproj' and the 'test' command
Change working directory before any other operation
Enables running tests in parallel when using the 'test' command
Specify build/cache directory [default: ./.build]
Specifies the simulator to pass for Swift Compiler (one of: iphonesimulator, macosx)
Specifies the architecture of the simulator to pass for Swift Compiler (one of: x86_64, arm64). Requires the simulator option to be specified also, otherwise, it's ignored
Increase verbosity of informational output
Use xcconfig file to override swift package generate-xcodeproj defaults
Pass in xcpretty additional command line arguments (e.g. '--test --no-color' or '--tap --no-utf'), requires xcpretty_output to be specified also
Specifies the output type for xcpretty. eg. 'test', or 'simple'
Shape for ssh options argument
Commands
Hostname
Log commands and output
Password
Port
Username
Shape for supply options argument
Path to the AAB file to upload
An array of paths to AAB files to upload
Must be set to true if the bundle installation may trigger a warning on user devices (e.g can only be downloaded over wifi). Typically this is required for bundles over 150MB
Path to the APK file to upload
An array of paths to APK files to upload
Indicates that the changes in this edit will not be reviewed until they are explicitly sent for review from the Google Play Console UI
DEPRECATED! Google Play does this automatically now - Check the other tracks for superseded versions and disable them
DEPRECATED! Google Play does this automatically now - When promoting to a new track, deactivate the binary in the origin track
In-app update priority for all the newly added apks in the release. Can take values between [0,5]
DEPRECATED! Use --json_key
instead - The issuer of the p12 file (email address of the service account)
The path to a file containing service account JSON, used to authenticate with Google
The raw service account JSON data used to authenticate with Google
DEPRECATED! Use --json_key
instead - The p12 File used to authenticate with Google
Path to the mapping file to upload (mapping.txt or native-debug-symbols.zip alike)
An array of paths to mapping files to upload (mapping.txt or native-debug-symbols.zip alike)
Path to the directory containing the metadata files
Size of 'main' expansion file in bytes
References version of 'main' expansion file
Size of 'patch' expansion file in bytes
References version of 'patch' expansion file
The package name of the application to use
Release status (used when uploading new apks/aabs) - valid values are completed, draft, halted, inProgress
Catches changes_not_sent_for_review errors when an edit is committed and retries with the configuration that the error message recommended
The percentage of the user fraction when uploading to the rollout track (setting to 1 will complete the rollout)
Root URL for the Google Play API. The provided URL will be used for API calls in place of https://www.googleapis.com/
Whether to skip uploading AAB
Whether to skip uploading APK
Whether to skip uploading changelogs
Whether to skip uploading images, screenshots not included
Whether to skip uploading metadata, changelogs not included
Whether to skip uploading SCREENSHOTS
Whether to use sha256 comparison to skip upload of images and screenshots that are already in Play Store
Timeout for read, open, and send (in seconds)
The track of the application to use. The default available tracks are: production, beta, alpha, internal
Promoted track release status (used when promoting a track) - valid values are completed, draft, halted, inProgress
The track to promote to. The default available tracks are: production, beta, alpha, internal
Only validate changes with Google Play rather than actually publish
The versionCode for which to download the generated APK
An array of version codes to retain when publishing a new APK
Version name (used when uploading new apks/aabs) - defaults to 'versionName' in build.gradle or AndroidManifest.xml
Shape for swiftlint options argument
Compiler log path when mode is :analyze
Custom configuration file of SwiftLint
Path to the swiftlint
executable on your machine
List of files to process
Format code when mode is :autocorrect
Ignore the exit status of the SwiftLint command, so that serious violations don't fail the build (true/false)
SwiftLint mode: :lint, :fix, :autocorrect or :analyze
Ignore the cache when mode is :autocorrect or :lint
Path to output SwiftLint result
Specify path to lint
Don't print status logs like 'Linting
Raises an error if swiftlint fails, so you can fail CI/CD jobs if necessary (true/false)
Choose output reporter. Available: xcode, json, csv, checkstyle, codeclimate, junit, html, emoji, sonarqube, markdown, github-actions-logging
Fail on warnings? (true/false)
Shape for syncCodeSigning options argument
Create additional cert types needed for macOS installers (valid values: mac_installer_distribution, developer_id_installer)
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The bundle identifier(s) of your app (comma-separated string or array of strings)
Select certificate by id. Useful if multiple certificates are stored in one place
Clone just the branch specified, instead of the whole repo. This requires that the branch already exists. Otherwise the command will fail
Enable this if you have the Mac Catalyst capability enabled and your project was created with Xcode 11.3 or earlier. Prepends 'maccatalyst.' to the app identifier for the provisioning profile mapping
Should the command fail if it was about to create a duplicate of an existing provisioning profile. It can happen due to issues on Apple Developer Portal, when profile to be recreated was not properly deleted first
Renew the provisioning profiles every time you run match
Renew the provisioning profiles if the certificate count on the developer portal has changed. Works only for the 'development' provisioning profile type. Requires 'include_all_certificates' option to be 'true'
Renew the provisioning profiles if the device count on the developer portal has changed. Ignored for profile types 'appstore' and 'developer_id'
Create a certificate type for Xcode 11 and later (Apple Development or Apple Distribution)
Use a basic authorization header to access the git repo (e.g.: access via HTTPS, GitHub Actions, etc), usually a string in Base64
Use a bearer authorization header to access the git repo (e.g.: access to an Azure DevOps repository), usually a string in Base64
Specific git branch to use
git user full name to commit
Use a private key to access the git repo (e.g.: access to GitHub repository via Deploy keys), usually a id_rsa named file or the contents hereof
URL to the git repo containing all the certificates
git user email to commit
GitLab Host (i.e. 'https://gitlab.com')
GitLab Project Path (i.e. 'gitlab-org/gitlab')
Name of the Google Cloud Storage bucket to use
Path to the gc_keys.json file
ID of the Google Cloud project to use for authentication
Include all matching certificates in the provisioning profile. Works only for the 'development' provisioning profile type
Include Apple Silicon Mac devices in provisioning profiles for iOS/iPadOS apps
GitLab CI_JOB_TOKEN
Keychain the items should be imported to
This might be required the first time you access certificates on a new mac. For the login/default keychain this is your macOS account password
Path in which to export certificates, key and profile
Set the provisioning profile's platform to work with (i.e. ios, tvos, macos, catalyst)
GitLab Access Token
A custom name for the provisioning profile. This will replace the default provisioning profile name if specified
Only fetch existing certificates and profiles, don't generate new ones
S3 access key
Name of the S3 bucket
Prefix to be used on all objects uploaded to S3
Name of the S3 region
S3 secret access key
Skip encryption of all objects uploaded to S3. WARNING: only enable this on S3 buckets with sufficiently restricted permissions and server-side encryption enabled. See https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingEncryption.html
Remove certs from repository during nuke without revoking them on the developer portal
Make a shallow clone of the repository (truncate the history to 1 revision)
Set to true if there is no access to Apple developer portal but there are certificates, keys and profiles provided. Only works with match import action
Disables confirmation prompts during nuke, answering them with yes
Skip generation of a README.md for the created git repository
Skips confirming to use the system google account
Skip syncing provisioning profiles
Skips setting the partition list (which can sometimes take a long time). Setting the partition list is usually needed to prevent Xcode from prompting to allow a cert to be used for signing
Define where you want to store your certificates
The ID of your Developer Portal team if you're in multiple teams
The name of your Developer Portal team if you're in multiple teams
The name of provisioning profile template. If the developer account has provisioning profile templates (aka: custom entitlements), the template name can be found by inspecting the Entitlements drop-down while creating/editing a provisioning profile (e.g. "Apple Pay Pass Suppression Development")
Define the profile type, can be appstore, adhoc, development, enterprise, developer_id, mac_installer_distribution, developer_id_installer
Your Apple ID Username
Print out extra information and all commands
Shape for teamId options argument
Shape for teamName options argument
Shape for testfairy options argument
API Key for TestFairy
Path to your APK file for Android
Allows an easy upgrade of all users to the current version. To enable set to 'on'
Additional release notes for this upload. This text will be added to email notifications
Array of custom options. Contact support@testfairy.com for more information
Path to your IPA file for iOS
Array of metrics to record (cpu,memory,network,phone_signal,gps,battery,mic,wifi)
Send email to testers
Array of options (shake,video_only_wifi,anonymous)
Symbols mapping file
Array of tester groups to be notified
Request timeout in seconds
API URL for TestFairy
Shape for testflight options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The bundle identifier of the app to upload or manage testers (optional)
The platform to use (optional)
The version number of the application build to distribute. If the version number is not specified, then the most recent build uploaded to TestFlight will be distributed. If specified, the most recent build for the version number will be distributed
Apple ID property in the App Information section in App Store Connect
Provide the 'Beta App Description' when uploading a new build
Provide the beta app email when uploading a new build
Beta app review information for contact info and demo account
The build number of the application build to distribute. If the build number is not specified, the most recent build is distributed
Provide the 'What to Test' text when uploading a new build
Do you need a demo account when Apple does review?
The short ID of your team in the developer portal, if you're in multiple teams. Different from your iTC team ID!
Should the build be distributed to external testers? If set to true, use of groups
option is required
Distribute a previously uploaded build (equivalent to the fastlane pilot distribute
command)
The tester's email
Should expire previous builds?
The tester's first name
Associate tester to one group or more by group name / group id. E.g. -g "Team 1","Team 2"
This is required when distribute_external
option is set to true or when we want to add a tester to one or more external testing groups
Path to the ipa file to upload
The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off
. The short names of providers should be listed in the second column
The tester's last name
Localized beta app test info for description, feedback email, marketing url, and privacy policy
Localized beta app test info for what's new
Should notify external testers? (Not setting a value will use App Store Connect's default which is to notify)
Path to your pkg file
Expire previous if it's 'waiting for review'
Skip the distributing action of pilot and only upload the ipa file
If set to true, the distribute_external
option won't work and no build will be distributed to testers. (You might want to use this option if you are using this action on CI and have to pay for 'minutes used' on your CI plan). If set to true
and a changelog is provided, it will partially wait for the build to appear on AppStore Connect so the changelog can be set, and skip the remaining processing steps
Send the build for a beta review
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
Path to a CSV file of testers
DEPRECATED! Update build info immediately after validation. This is deprecated and will be removed in a future release. App Store Connect no longer supports setting build info until after build processing has completed, which is when build info is updated by default
Your Apple ID Username
Provide the 'Uses Non-Exempt Encryption' for export compliance. This is used if there is 'ITSAppUsesNonExemptEncryption' is not set in the Info.plist
DEPRECATED! No longer needed with the transition over to the App Store Connect API - Use version info from uploaded ipa file to determine what build to use for distribution. If set to false, latest processing or any latest build will be used
Interval in seconds to wait for App Store Connect processing
Timeout duration in seconds to wait for App Store Connect processing. If set, after exceeding timeout duration, this will force stop
to wait for App Store Connect processing and exit with exception
Shape for trainer options argument
The extension for the newly created file. Usually .xml or .junit
Should this step stop the build if the tests fail? Set this to false if you're handling this with a test reporter
Directory in which the xml files should be written to. Same directory as source by default
Filename the xml file should be written to. Defaults to name of input file. (Only works if one input file is used)
Doesn't include retry attempts in the output
Path to the directory that should be converted
Silences all output
Produces class name and test name identical to xcpretty naming in junit file
Shape for tryouts options argument
API Token (api_key:api_secret) for Tryouts Access
Tryouts application hash
Path to your IPA or APK file. Optional if you use the gym or xcodebuild action
Release notes
Release notes text file path. Overrides the :notes parameter
Notify testers? 0 for no
2 to make your release public. Release will be distributed to available testers. 1 to make your release private. Release won't be distributed to testers. This also prevents release from showing up for SDK update
Shape for twitter options argument
Access Token
Access Token Secret
Consumer Key
Consumer Secret
The tweet
Shape for typetalk options argument
Shape for unlockKeychain options argument
Add to keychain search list, valid values are true, false, :add, and :replace
Keychain password
Path to the keychain file
Set as default keychain
Shape for updateAppGroupIdentifiers options argument
An Array of unique identifiers for the app groups. Eg. ['group.com.test.testapp']
The path to the entitlement file which contains the app group identifiers
Shape for updateAppIdentifier options argument
The app Identifier you want to set
Path to info plist, relative to your Xcode project
Path to your Xcode project
Shape for updateCodeSigningSettings options argument
Specify build_configurations you want to toggle the signing mech. (default to all configurations)
Application Product Bundle Identifier
Code signing identity type (iPhone Developer, iPhone Distribution)
Path to your entitlements file
Path to your Xcode project
Provisioning profile name to use for code signing
Provisioning profile UUID to use for code signing
Build target SDKs (iphoneos, macosx, iphonesimulator*)
Specify targets you want to toggle the signing mech. (default to all targets)
Team ID, is used when upgrading project
Defines if project should use automatic signing
Shape for updateFastlane options argument
DEPRECATED! Nightly builds are no longer being made available - Opt-in to install and use nightly fastlane builds
Don't update during this run. This is used internally
Shape for updateIcloudContainerIdentifiers options argument
The path to the entitlement file which contains the iCloud container identifiers
An Array of unique identifiers for the iCloud containers. Eg. ['iCloud.com.test.testapp']
Shape for updateInfoPlist options argument
The App Identifier of your app
A block to process plist with custom logic
The Display Name of your app
Path to info plist
Scheme of info plist
Path to your Xcode project
Shape for updateKeychainAccessGroups options argument
The path to the entitlement file which contains the keychain access groups
An Array of unique identifiers for the keychain access groups. Eg. ['your.keychain.access.groups.identifiers']
Shape for updatePlist options argument
A block to process plist with custom logic
Path to plist file
Shape for updateProjectCodeSigning options argument
Path to your Xcode project
DEPRECATED! Use :uuid
instead
The UUID of the provisioning profile you want to use
Shape for updateProjectProvisioning options argument
A filter for the build configuration name. Use a standard regex. Applied to all configurations if not specified
Legacy option, use 'target_filter' instead
Path to apple root certificate
Code sign identity for build configuration
Path to provisioning profile (.mobileprovision)
A filter for the target name. Use a standard regex
Path to your Xcode project
Shape for updateProjectTeam options argument
Path to your Xcode project
Name of the targets you want to update
The Team ID you want to use
Shape for updateUrbanAirshipConfiguration options argument
Automatically detect provisioning mode
The development app key
The development app secret
Path to Urban Airship configuration Plist
The production app key
The production app secret
Shape for updateUrlSchemes options argument
The Plist file's path
Block that is called to update schemes with current schemes passed in as parameter
The new URL schemes
Shape for uploadAppPrivacyDetailsToAppStore options argument
The bundle identifier of your app
Path to the app usage data JSON
Path to the app usage data JSON file generated by interactive questions
Whether to skip the saving of the JSON file
Whether to skip the publishing
Whether to skip the upload and only create the JSON file with interactive questions
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
Your Apple ID Username for App Store Connect
Shape for uploadSymbolsToCrashlytics options argument
Crashlytics API Key
Firebase Crashlytics APP ID
The path to the upload-symbols file of the Fabric app
Enable debug mode for upload-symbols
Path to the DSYM file or zip to upload
Paths to the DSYM files or zips to upload
The number of threads to use for simultaneous dSYM upload
Path to GoogleService-Info.plist
The platform of the app (ios, appletvos, mac)
Shape for uploadSymbolsToSentry options argument
API host url for Sentry
API key for Sentry
Authentication token for Sentry
Path to your symbols file. For iOS and Mac provide path to app.dSYM.zip
Path to an array of your symbols file. For iOS and Mac provide path to app.dSYM.zip
Organization slug for Sentry project
Project slug for Sentry
Shape for uploadToAppStore options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The (spaceship) app ID of the app you want to use/modify
DEPRECATED! Removed after the migration to the new App Store Connect API in June 2020 - Metadata: The path to the app icon
The bundle identifier of your app
Path to the app rating's config
Metadata: Path to the app review attachment file
Metadata: A hash containing the review information
The version that should be edited or created
Metadata: Localised Apple TV privacy policy text
DEPRECATED! Removed after the migration to the new App Store Connect API in June 2020 - Metadata: The path to the Apple Watch app icon
Date in milliseconds for automatically releasing on pending approval (Cannot be used together with automatic_release
)
Should the app be automatically released once it's approved? (Cannot be used together with auto_release_date
)
If set the given build number (already uploaded to iTC) will be used instead of the current built one
Metadata: The copyright notice
Metadata: The localised app description
The short ID of your Developer Portal team, if you're in multiple teams. Different from your iTC team ID!
The name of your Developer Portal team if you're in multiple teams
Modify live metadata, this option disables ipa upload and screenshot upload
Skip verification of HTML preview file
Ignore errors when invalid languages are found in metadata and screenshot directories
DEPRECATED! Removed after the migration to the new App Store Connect API in June 2020 - An array of localized metadata items to upload individually by language so that errors can be identified. E.g. ['name', 'keywords', 'description']. Note: slow
Path to your ipa file
The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off
. The short names of providers should be listed in the second column
Metadata: An array of localised keywords
Metadata: List of languages to activate
Metadata: Localised marketing url
Path to the folder containing the metadata files
Metadata: The localised app name
Clear all previously uploaded screenshots before uploading the new ones
Enable the phased release feature of iTC
Path to your pkg file
The platform to use (optional)
The default precheck rule level unless otherwise configured
Should precheck check in-app purchases?
The price tier of this application
Metadata: The english name of the primary category (e.g. Business
, Books
)
Metadata: The english name of the primary first sub category (e.g. Educational
, Puzzle
)
Metadata: The english name of the primary second sub category (e.g. Educational
, Puzzle
)
Metadata: Localised privacy url
Metadata: An array of localised promotional texts
Rejects the previously submitted build if it's in a state where it's possible
Metadata: Localised release notes for this version
Reset the summary rating when you release a new version of the application
Run precheck before submitting to app review
Timeout in seconds to wait before considering screenshot processing as failed, used to handle cases where uploads to the App Store are stuck in processing
Path to the folder containing the screenshots
Metadata: The english name of the secondary category (e.g. Business
, Books
)
Metadata: The english name of the secondary first sub category (e.g. Educational
, Puzzle
)
Metadata: The english name of the secondary second sub category (e.g. Educational
, Puzzle
)
Don’t create or update the app version that is being prepared for submission
Skip uploading an ipa or pkg to App Store Connect
Don't upload the metadata (e.g. title, description). This will still upload screenshots
Don't upload the screenshots
Extra information for the submission (e.g. compliance specifications, IDFA settings)
Submit the new version for Review after uploading everything
Metadata: The localised app subtitle
Metadata: Localised support url
Sync screenshots with local ones. This is currently beta option so set true to 'FASTLANE_ENABLE_BETA_DELIVER_SYNC_SCREENSHOTS' environment variable as well
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
DEPRECATED! This is no longer used by App Store Connect - Metadata: A hash containing the trade representative contact information
Force usage of live version rather than edit version
Your Apple ID Username
Verifies archive with App Store Connect without uploading
After submitting a new version, App Store Connect takes some time to recognize the new version and we must wait until it's available before attempting to upload metadata for it. There is a mechanism that will check if it's available and retry with an exponential backoff if it's not available yet. This option specifies how many times we should retry before giving up. Setting this to a value below 5 is not recommended and will likely cause failures. Increase this parameter when Apple servers seem to be degraded or slow
Shape for uploadToPlayStoreInternalAppSharing options argument
Path to the AAB file to upload
An array of paths to AAB files to upload
Path to the APK file to upload
An array of paths to APK files to upload
The path to a file containing service account JSON, used to authenticate with Google
The raw service account JSON data used to authenticate with Google
The package name of the application to use
Root URL for the Google Play API. The provided URL will be used for API calls in place of https://www.googleapis.com/
Timeout for read, open, and send (in seconds)
Shape for uploadToPlayStore options argument
Path to the AAB file to upload
An array of paths to AAB files to upload
Must be set to true if the bundle installation may trigger a warning on user devices (e.g can only be downloaded over wifi). Typically this is required for bundles over 150MB
Path to the APK file to upload
An array of paths to APK files to upload
Indicates that the changes in this edit will not be reviewed until they are explicitly sent for review from the Google Play Console UI
DEPRECATED! Google Play does this automatically now - Check the other tracks for superseded versions and disable them
DEPRECATED! Google Play does this automatically now - When promoting to a new track, deactivate the binary in the origin track
In-app update priority for all the newly added apks in the release. Can take values between [0,5]
DEPRECATED! Use --json_key
instead - The issuer of the p12 file (email address of the service account)
The path to a file containing service account JSON, used to authenticate with Google
The raw service account JSON data used to authenticate with Google
DEPRECATED! Use --json_key
instead - The p12 File used to authenticate with Google
Path to the mapping file to upload (mapping.txt or native-debug-symbols.zip alike)
An array of paths to mapping files to upload (mapping.txt or native-debug-symbols.zip alike)
Path to the directory containing the metadata files
Size of 'main' expansion file in bytes
References version of 'main' expansion file
Size of 'patch' expansion file in bytes
References version of 'patch' expansion file
The package name of the application to use
Release status (used when uploading new apks/aabs) - valid values are completed, draft, halted, inProgress
Catches changes_not_sent_for_review errors when an edit is committed and retries with the configuration that the error message recommended
The percentage of the user fraction when uploading to the rollout track (setting to 1 will complete the rollout)
Root URL for the Google Play API. The provided URL will be used for API calls in place of https://www.googleapis.com/
Whether to skip uploading AAB
Whether to skip uploading APK
Whether to skip uploading changelogs
Whether to skip uploading images, screenshots not included
Whether to skip uploading metadata, changelogs not included
Whether to skip uploading SCREENSHOTS
Whether to use sha256 comparison to skip upload of images and screenshots that are already in Play Store
Timeout for read, open, and send (in seconds)
The track of the application to use. The default available tracks are: production, beta, alpha, internal
Promoted track release status (used when promoting a track) - valid values are completed, draft, halted, inProgress
The track to promote to. The default available tracks are: production, beta, alpha, internal
Only validate changes with Google Play rather than actually publish
The versionCode for which to download the generated APK
An array of version codes to retain when publishing a new APK
Version name (used when uploading new apks/aabs) - defaults to 'versionName' in build.gradle or AndroidManifest.xml
Shape for uploadToTestflight options argument
Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-hash-option)
Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)
The bundle identifier of the app to upload or manage testers (optional)
The platform to use (optional)
The version number of the application build to distribute. If the version number is not specified, then the most recent build uploaded to TestFlight will be distributed. If specified, the most recent build for the version number will be distributed
Apple ID property in the App Information section in App Store Connect
Provide the 'Beta App Description' when uploading a new build
Provide the beta app email when uploading a new build
Beta app review information for contact info and demo account
The build number of the application build to distribute. If the build number is not specified, the most recent build is distributed
Provide the 'What to Test' text when uploading a new build
Do you need a demo account when Apple does review?
The short ID of your team in the developer portal, if you're in multiple teams. Different from your iTC team ID!
Should the build be distributed to external testers? If set to true, use of groups
option is required
Distribute a previously uploaded build (equivalent to the fastlane pilot distribute
command)
The tester's email
Should expire previous builds?
The tester's first name
Associate tester to one group or more by group name / group id. E.g. -g "Team 1","Team 2"
This is required when distribute_external
option is set to true or when we want to add a tester to one or more external testing groups
Path to the ipa file to upload
The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off
. The short names of providers should be listed in the second column
The tester's last name
Localized beta app test info for description, feedback email, marketing url, and privacy policy
Localized beta app test info for what's new
Should notify external testers? (Not setting a value will use App Store Connect's default which is to notify)
Path to your pkg file
Expire previous if it's 'waiting for review'
Skip the distributing action of pilot and only upload the ipa file
If set to true, the distribute_external
option won't work and no build will be distributed to testers. (You might want to use this option if you are using this action on CI and have to pay for 'minutes used' on your CI plan). If set to true
and a changelog is provided, it will partially wait for the build to appear on AppStore Connect so the changelog can be set, and skip the remaining processing steps
Send the build for a beta review
The ID of your App Store Connect team if you're in multiple teams
The name of your App Store Connect team if you're in multiple teams
Path to a CSV file of testers
DEPRECATED! Update build info immediately after validation. This is deprecated and will be removed in a future release. App Store Connect no longer supports setting build info until after build processing has completed, which is when build info is updated by default
Your Apple ID Username
Provide the 'Uses Non-Exempt Encryption' for export compliance. This is used if there is 'ITSAppUsesNonExemptEncryption' is not set in the Info.plist
DEPRECATED! No longer needed with the transition over to the App Store Connect API - Use version info from uploaded ipa file to determine what build to use for distribution. If set to false, latest processing or any latest build will be used
Interval in seconds to wait for App Store Connect processing
Timeout duration in seconds to wait for App Store Connect processing. If set, after exceeding timeout duration, this will force stop
to wait for App Store Connect processing and exit with exception
Shape for validatePlayStoreJsonKey options argument
The path to a file containing service account JSON, used to authenticate with Google
The raw service account JSON data used to authenticate with Google
Root URL for the Google Play API. The provided URL will be used for API calls in place of https://www.googleapis.com/
Timeout for read, open, and send (in seconds)
Shape for verifyBuild options argument
Required app name
Explicitly set the ipa, app or xcarchive path
Required bundle identifier
Explicitly set the ipa path
Required type of provisioning
Required UUID of provisioning profile
Required team identifier
Required team name
Shape for verifyPodKeys options argument
Shape for verifyXcode options argument
The path to the Xcode installation to test
Shape for versionBumpPodspec options argument
The type of this version bump. Available: patch, minor, major
You must specify the path to the podspec file to update
true by default, this is used for non CocoaPods version bumps only
Change version appendix to a specific value. For example 1.4.14.4.1 -> 1.4.14.5
Change to a specific version. This will replace the bump type value
Shape for versionGetPodspec options argument
You must specify the path to the podspec file
true by default, this is used for non CocoaPods version bumps only
Shape for xcarchive options argument
Shape for xcbuild options argument
Shape for xcclean options argument
Shape for xcexport options argument
Shape for xcodeInstall options argument
Number of times the download will be retried in case of failure
The ID of your team if you're in multiple teams
Your Apple ID Username
The version number of the version of Xcode to install
Shape for xcodeSelect options argument
Shape for xcodeServerGetAssets options argument
Name of the Bot to pull assets from
IP Address/Hostname of Xcode Server
Optionally you can override which integration's assets should be downloaded. If not provided, the latest integration is used
Whether to keep all assets or let the script delete everything except for the .xcarchive
Password for your Xcode Server
Relative path to a folder into which to download assets
Whether to trust self-signed certs on your Xcode Server
Username for your Xcode Server
Shape for xcodebuild options argument
Shape for xcodes options argument
Where the xcodes binary lives on your system (full path)
When true, it won't attempt to install an Xcode version, just find the installed Xcode version that best matches the passed version argument, and select it for the current build steps. It doesn't change the global Xcode version (e.g. via 'xcrun xcode-select'), which would require sudo permissions — when this option is true, this action doesn't require sudo permissions
Whether the list of available Xcode versions should be updated before running the install command
The version number of the version of Xcode to install. Defaults to the value specified in the .xcode-version file
Pass in xcodes command line arguments directly. When present, other parameters are ignored and only this parameter is used to build the command to be executed
Shape for xcov options argument
Shape for xctest options argument
Shape for xctool options argument
Shape for xcversion options argument
The version of Xcode to select specified as a Gem::Version requirement string (e.g. '~> 7.1.0'). Defaults to the value specified in the .xcode-version file
Shape for zip options argument
Array of paths or patterns to exclude
Array of paths or patterns to include
The name of the resulting zip file
Encrypt the contents of the zip archive using a password
Path to the directory or file to be zipped
Store symbolic links as such in the zip archive
Enable verbose output of zipped file
Generated using TypeDoc
Shape for adbDevices options argument