Improving Fastlane runtime for scanning & # 8594; Gym & # 8594; Deployment

I am trying to enable Fastlane in a CI environment where the following should happen:

  • any commit in the master branch should run a test run and then build in Testflight .
  • any commit in the development branch should run a test run and then build in Fabric Beta .
  • any other commit or pull request should trigger a test run.

Bands work with all code signed through match .

To avoid a double build, I build through Gym and then Scan with skip_build: true and clean: false , as indicated in # 3353 .

Although this seems to help with build time, due to the number of cocoapods dependencies, it goes over the 50-minute limit at travis-ci.org . (Remember to check the build logs)

How can this be improved in terms of runtime? (Besides fixing the slow compilation of Swift functions mentioned in # 3 )

For reference, here is the Fastfile .

+7
swift travis-ci fastlane
source share
2 answers

One way to speed up the build phase is to use off-the-shelf frameworks . This is similar to importing AVFoundation or any other Apple toolkit into your project.

Try to determine which dependency slows down the work time and moves it to a previously created framework.

Carthage is a good tool that allows you to use ready-made frameworks and manage dependencies. You can cache Carthage on your CI. Check out this great post on how you can achieve caching.

+1
source share

I donโ€™t know how to reuse pre-built data for scanning, gym and snapshot. The main reason for this is that they are assemblies for different architectures, with potentially different xcconfigs.

0
source share

All Articles