0
votes

I have been playing with Fastlane, to automate common processes that we always go through when publishing app to the TestFlight for example. I have this lane (in Fastfile):

default_platform(:ios)

lane :beta do
 enable_automatic_code_signing
  increment_build_number
  gym
  # Use pilot to upload your app to testflight
  pilot(distribute_external: false)
end

and this is Gymfile

scheme("my-scheme")

output_directory("./fastlane/builds")

include_bitcode(true)

include_symbols(false)

export_xcargs("-allowProvisioningUpdates")

Now this allows me to send a build to a TestFlight.

But, what would be better is that I can use Jenkins along with Fastlane, so it each time, a commit is made on specific branch (say dev), makes a build and sends it to TestFlight. What would be a way, to perform all these Fastlane specific actions, eg. gym, pilot etc... with Jenkins?

1

1 Answers

1
votes

Fastlane:

The easiest way to build and release mobile apps. fastlane handles tedious tasks so you don’t have to. source

Jenkins:

The leading open source automation server, Jenkins provides hundreds of plugins to support building, deploying and automating any project. source

Fastlane is a tool to build and deploy an mobile app and Jenkins is automation suite to build, deploy any type of an app (web, mobile, desktop). With Jenkins you can achieve the same steps but it will take more time to set it up. Fastlane can't trigger actions as Jenkins can do. So, If you would like to have a night builds you should set it up via Cron Jobs or Jenkins.

Similar functionalities of Fastlane you can get in Jenkins via plugins like this one "Xcode Integration" https://plugins.jenkins.io/xcode-plugin

Fastlane has a CI integration document titled "Jenkins integration"