WhoBuilt

Automate your React Native world with fastlane

Sep 14, 2018· 24 min· 21K views·Watch on YouTube

Speaker

Philippe Trepanier, a full-stack developer at Montreal software agency Osedea, explains how to automate React Native app builds and deployments with Fastlane at a Callstack event.

Why Fastlane helps

Trepanier describes deployment as a recurring source of inconvenience for mobile teams. Fastlane is a Ruby toolchain that simplifies common iOS and Android development and release tasks, and it can be set up in both platform folders with `fastlane init`.

Streamline iOS signing and releases

Match stores shared, encrypted signing certificates and provisioning profiles in a private Git repository, making it easier to onboard developers. Gym builds iOS apps, Pilot manages TestFlight builds and testers, and Deliver uploads app metadata, screenshots, and binaries. Snapshot automates localized screenshots, while Precheck flags possible metadata issues before submission.

Automate Android builds and store uploads

Gradle builds Android apps and supports dependencies and custom build logic. Screengrab creates localized screenshots across device types, which Trepanier also suggests using for QA. Supply uploads Android builds and store assets, and keeps metadata locally so teams can version and share it.

Connect tasks with lanes

Fastlane lanes combine actions in a Fastfile into repeatable release processes. Trepanier recommends separate beta and release lanes for iOS; his beta example uses Gym and Pilot. Teams can also use individual tools or non-deployment lanes, and should check for existing actions before writing Bash scripts.

What automation can and cannot change

A demonstration shows an iOS build, signing, and TestFlight deployment taking about 14 minutes, compared with around 17 minutes for the manual process. Trepanier says compilation remains the longest step, while automation helps repeat deployment steps consistently. Fastlane cannot remove Apple or Google account setup or Apple’s app review wait.

Takeaways

  • Use Match to share signing assets across a team and simplify developer setup.
  • Automate repeatable release steps with Fastfile lanes that fit each deployment path.
  • Use Snapshot and Screengrab to generate localized screenshots and support QA.
  • Run Precheck to catch potential metadata problems before App Store submission.
  • Expect automation to reduce manual deployment work, while build time and store review still take time.

Mentioned in this talk

Search inside this talk

What was claimed 16

  • role at
    Philippe Trepanier is full-stack developer at Osedea
    “I'm a full-stack developer at Osedea”
    YouTube
    Unverified1 source· Talk
  • built
    “it's developed mainly by Felix Krause”
    YouTube
    Unverified1 source· Talk
  • feature
    Fastlane: Supports iOS and Android applications
    “you can also use Fastlane for any iOS or Android application”
    YouTube
    Unverified1 source· Talk
  • feature
    Fastlane: Ruby toolchain for automating mobile app development and deployment
    “It's a toolchain that contains very useful development tools”
    YouTube
    Unverified1 source· Talk
  • feature
    Match: Creates and centrally stores shared iOS signing identities, certificates, and provisioning profiles
    “Match is used to create a single identity and store it in a central place”
    YouTube
    Unverified1 source· Talk
  • feature
    gym: Builds and packages iOS apps
    “fastlane gym to build and package iOS apps”
    YouTube
    Unverified1 source· Talk
  • feature
    Pilot: uploads and distributes builds and manages testers
    uploads and distributes builds and manages testers
    “It also lets you upload and distribute builds, add or remove testers”
    YouTube
    Unverified1 source· Talk
  • feature
    ExaSnapshot: Generates localized iOS screenshots for different device types and languages
    “It automates the generation of localized iOS screenshots”
    YouTube
    Unverified1 source· Talk
  • feature
    Precheck: Checks app metadata for potential reasons Apple may reject a build
    “it attempts to reduce the number of reasons Apple rejects your builds”
    YouTube
    Unverified1 source· Talk
  • feature
    Deliver: uploads screenshots, metadata, and binaries and can submit apps for review
    uploads screenshots, metadata, and binaries and can submit apps for review
    “It uploads screenshots, metadata, and binaries to iTunes Connect”
    YouTube
    Unverified1 source· Talk
  • integrates with
    Supply integrates with Gradle
    wraps Gradle functionality for use through fastlane
    “Fastlane Supply is a Gradle wrapper”
    YouTube
    Unverified1 source· Talk
  • feature
    Screengrab: generates screenshots of Android applications for different device types and languages
    generates screenshots of Android applications for different device types and languages
    “Screengrab generates screenshots of Android applications for different device types and languages for Google Play”
    YouTube
    Unverified1 source· Talk
  • feature
    Supply: uploads Android metadata, screenshots, and binaries
    uploads Android metadata, screenshots, and binaries
    “Supply uploads metadata, screenshots, and binaries to Google Play”
    YouTube
    Unverified1 source· Talk
  • feature
    Fastlane: Lanes combine reusable release actions in a Fastfile
    “Lanes are Fastlane release processes controlled in the Fastfile”
    YouTube
    Unverified1 source· Talk
  • feature
    Sigh: Manages iOS code signing profiles
    “it allows for easier management of code signing on iOS”
    YouTube
    Unverified1 source· Talk
  • metric
    Fastlane: IOS build and TestFlight deployment took 14 minutes, compared with about 17 minutes manually; speaker estimates about 40% time saved
    “This takes 14 minutes, so you’re saving about 40 percent of your time”
    YouTube
    Unverified1 source· Talk

Related talks