Skip to content

Release & Nightly CI Workflows

Cyndi Chin edited this page Nov 16, 2023 · 2 revisions

This document is meant as an information guide for delivering Firefox iOS nightly, betas and release workflow.

Nightly workflow

In order to deliver a build every night we leverage our main branch with a scheduled Bitrise setup that sends builds every day at 11PM and use SPM_Nightly_Beta_Only workflow to push out a build from the main branch.

Notes

Since builds are triggered from main, the Nightly workflow is not affected by how we keep our release branches i.e. tag them or make a new branch from main.

  • What’s new section has been updated, and it points to the build number that corresponds to BITRISE_NIGHTLY_VERSION in the Bitrise.yml file hence there is no need to manually update it in info.plist.
  • We have set a higher version 9000 for Nightly in the Bitrise environment variable BITRISE_NIGHTLY_VERSION. We did this because iOS beta approval for a new version takes time and approval for a higher version will only happens once and anyone can consume it who is part of our Nightly channel in App Store Connect Group.
  • Sentry has a specific DSN and environment for Nightly builds. In the Bitrise secrets tab we have SENTRY_NIGHTLY_DSN that contains the correct value for nightly builds which we consume in Firefox iOS. We can then find Nightly build logs filtering with the environment.
image

Release workflow

Release workflow is very similar to how Nightly works except there are minor changes. Release branches are cut from main when we enter soft code freeze mode.

Notes

Developers back port their own commits and get confirmation from the Product Manager before adding a particular commit past Soft / Hard code freeze.

More info about this workflow and how to proceed in the release checklist.

Screen Shot 2021-11-02 at 2 49 01 PM
Clone this wiki locally