Skip to content
This repository has been archived by the owner on Jul 6, 2024. It is now read-only.

Deployment process

George Lim edited this page Aug 18, 2020 · 1 revision

Setup

  1. Install fastlane using this guide
  2. Install bundler by executing sudo gem install bundler
  3. Ensure that the file team/service-account-key.json exists. Please contact @george-lim for access to the team's existing service account key. Otherwise, you will need to create a service account key and copy the JSON file to the team directory.

Understanding fastlane

fastlane allows you to define lanes, which are just a sequence of steps to accomplish some objective. In Bruno, there are three lanes:

  1. The bump lane downloads all existing app metadata, increments the version, and creates a new default changelog for the updated version code
  2. The release lane releases a new internal build to Google Play. It automatically creates the Android App Bundle on release configuration, and uploads the bundle as well as all metadata under a new internal release to Google Play.
  3. The promote lane finds the latest internal build, and promotes it to the production track on Google Play

Bump Lane

Before you make a new release, execute the bump lane to bump the app version and update the app metadata (eg. changelog, screenshots). The bump lane supports a version parameter which allows you to specify either the bump version type or version number you would like to increment to. For instance, suppose the app version currently reads versionName 1.0.0 and versionCode 1.

# Bump only version code, but keep version name
bundle exec fastlane bump
# app version now reads `versionName 1.0.0` and `versionCode 2`
# Bump version code and bump version name to reflect patch update
bundle exec fastlane bump version:patch
# app version now reads `versionName 1.0.1` and `versionCode 2`
# Bump version code and bump version name to reflect minor update
bundle exec fastlane bump version:minor
# app version now reads `versionName 1.1.0` and `versionCode 2`
# Bump version code and bump version name to reflect major update
bundle exec fastlane bump version:major
# app version now reads `versionName 2.0.0` and `versionCode 2`
# Bump version code and bump version name to match parameter version number
bundle exec fastlane bump version:1.2.3
# app version now reads `versionName 1.2.3` and `versionCode 2`

Now, navigate to the fastlane/metadata folder to make any metadata changes before release. A default changelog is automatically generated for the new version code, but you may still want to edit the changelog.

Release Lane

When you are ready to make an internal release, execute bundle exec fastlane release to create a new release on the internal track of Google Play.

Promote Lane

After testing the latest internal release, execute bundle exec fastlane promote to promote that release to the production track of Google Play.

Clone this wiki locally