Skip to content

bitrise-steplib/steps-fastlane

fastlane

Step changelog

Runs your fastlane lane on bitrise.io.

Description

fastlane is an open-source app automation tool for iOS, Android and for most cross-platform frameworks, for example, React Native, Xamarin and Flutter. fastlane Step helps you integrate your lane to your Bitrise Workflow and runs your lane based on the fastlane actions with minimal configuration. If your Apple Developer Portal account is connected to Bitrise, the FASTLANE_SESSION Environment Variable will pass on the session data to fastlane.

Configuring the Step

Before you start configuring the Step, make sure you've connected to Apple services either by API key, Apple ID or through Fastlane Step's input fields.

  1. Add the fastlane Step to your Workflow after the Git Clone Repository Step or any other dependency Step.
  2. Based on your project's fastlane setup, you can add your project's default lane or a custom lane in the fastlane lane input.
  3. If your fastlane directory is not available in your repository's root, then you can add the parent directory of fastlane directory in the Working directory input.
  4. If your project doesn't contain a fastlane gem in your project's Gemfile, you can use the Should update fastlane gem before run input. Set this input to true so that the Step can install the latest fastlane version to your project. If a gem lockfile (Gemfile.lock or gems.locked) includes the fastlane gem in the working directory, that specific fastlane version will be installed.
  5. Select yes in the Enable verbose logging input if you wish to run your build in debug mode and print out error additional debug logs.
  6. Select yes in the Enable collecting files to be included in the build cache to cache pods, Carthage and Android dependencies.

Troubleshooting

If you run your lane on Bitrise and your build fails on the fastlane Step, the logs won't reveal too much about the error since it's most likely related to the fastlane file's configuration. We recommend you swap your fastlane actions for Bitrise Steps which will bring out the problem.

Useful links

Related Steps

🧩 Get started

Add this step directly to your workflow in the Bitrise Workflow Editor.

You can also run this step directly with Bitrise CLI.

⚙️ Configuration

Inputs
Key Description Flags Default
lane fastlane lane to run $ fastlane [lane] required
work_dir Use this option if the fastlane directory is not in your repository's root. Working directory should be the parent directory of your Fastfile's directory. For example: * If the Fastfile path is ./here/is/my/fastlane/Fastfile * Then the Fastfile's directory is ./here/is/my/fastlane * So the Working Directory should be ./here/is/my $BITRISE_SOURCE_DIR
connection The input determines the method used for Apple Service authentication. By default, any enabled Bitrise Apple Developer connection is used and other authentication-related Step inputs are ignored. There are two types of Apple Developer connection you can enable on Bitrise: one is based on an API key of the App Store Connect API, the other is the session-based authentication with an Apple ID. You can choose which type of Bitrise Apple Developer connection to use or you can tell the Step to only use the Step inputs for authentication: - automatic: Use any enabled Apple Developer connection, either based on Apple ID authentication or API key authentication. Step inputs are only used as a fallback. API key authentication has priority over Apple ID authentication in both cases. - api_key: Use the Apple Developer connection based on API key authentication. Authentication-related Step inputs are ignored. - apple_id: Use the Apple Developer connection based on Apple ID authentication and the Application-specific password Step input. Other authentication-related Step inputs are ignored. - off: Do not use any already configured Apple Developer Connection. Only authentication-related Step inputs are considered. required automatic
api_key_path Specify the path in an URL format where your API key is stored. For example: https://URL/TO/AuthKey_[KEY_ID].p8 or file:///PATH/TO/AuthKey_[KEY_ID].p8. NOTE: The Step will only recognize the API key if the filename includes the KEY_ID value as shown on the examples above. You can upload your key on the Generic File Storage tab in the Workflow Editor and set the Environment Variable for the file here. For example: $BITRISEIO_MYKEY_URL
api_issuer Issuer ID. Required if API Key: URL (api_key_path) is specified.
apple_id Email for Apple ID login. sensitive
password Password for the specified Apple ID. sensitive
app_password Use this input if TFA is enabled on the Apple ID but no app-specific password has been added to the used Bitrise Apple ID connection. NOTE: Application-specific passwords can be created on the AppleID Website. It can be used to bypass two-factor authentication. sensitive
update_fastlane Should update fastlane gem before run? This option will be skipped if you have a Gemfile in the work_dir directory. true
verbose_log Enable/disable verbose logging. required no
enable_cache If enabled the step will add the following cache items (if they exist): - Pods -> Podfile.lock - Carthage -> Cartfile.resolved - Android dependencies required yes
Outputs There are no outputs defined in this step

🙋 Contributing

We welcome pull requests and issues against this repository.

For pull requests, work on your changes in a forked repository and use the Bitrise CLI to run step tests locally.

Learn more about developing steps:

About

No description or website provided.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages