I'm getting an SSL error
If your output contains something like
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
that usually means you are using an outdated version of OpenSSL. Make sure to install the latest one using homebrew.
brew update && brew upgrade openssl
If you use
rvm, try the following
rvm osx-ssl-certs update all
fastlane is slow (to start)
If you experience slow launch times of fastlane, there are 2 solutions to solve this problem:
Uninstall unused gems
[sudo] gem cleanup
Error when running fastlane with Jenkins
This is usually caused when running Jenkins as its own user. While this is possible, you'll have to take care of creating a temporary Keychain, filling it and then using it when building your application.
For more information about the recommended setup with Jenkins open the Jenkins Guide.
Code signing issues
Multiple targets of the same underlying app
If you have one code base, but multiple branded applications
.env files for each environment and reference those environment variables in the
Example: Create a
.env.app3. Define each of these like the following...
DLV_FIRST_NAME=Josh DLV_LAST_NAME=Holtz DLV_PRIM_CATG=Business DLV_SCND_CATG=Games
Now your Deliver file should look something like this:
app_review_information( first_name: ENV['DLV_FIRST_NAME'], last_name: ENV['DLV_LAST_NAME'] ) primary_category ENV['DLV_PRIM_CATG'] secondary_category ENV['DLV_SCND_CATG']
Now to run this, all you need to do is specify the environment argument when running fastlane and it will pull from the
.env file that matches the same name...
fastlane build --env app1 will use
fastlane build --env app2 will use
You can also references these environment variables almost anywhere in fastlane.
You can even define a lane to perform actions on multiple targets:
desc "Deploy both versions" lane :deploy_all do sh "fastlane deploy --env paid" sh "fastlane deploy --env free" end
And you can combine multiple envs in one go
fastlane build --env app1,env1,env2 will use
More on the
.env file can be found here.
Disable colored output
FASTLANE_DISABLE_COLORS environment variable to disable ANSI colors (e.g. for CI machines)
Enable bash/zsh tab completion for fastlane lane names
Follow the on screen prompt to add a line to your bash/zsh profile.
"User interaction is not allowed" when using fastlane via SSH
This error can occur when you run fastlane via SSH. To fix it check out this reply on StackOverflow.