Skip to content
Arthur Alves edited this page Jan 26, 2021 · 1 revision

Variants Logo

Concept

Variants aims to facilitate the setup and usage of multiple deployment variants for a mobile application (iOS and Android) while also providing a fully working and rich Fastlane setup, with opt-in features for your pipelines. While achieving these goals, it also reduces the amount of sources of truth in your configuration, by relying only on the Variants Spec - a YAML configuration file generated by variants init.

Variants spec - by default located at ./variants.yml, relative to your project's base folder - becomes the sole source of truth and the main configuration file for your needs. This file is responsible for:

  • Specifying how many deployment variants you desire for this project and the differences between these variants (Name, Icon, Identifier, Version, and more with Custom Properties);
  • Which store do you want Fastlane to deploy each variant to;
  • Signing configuration, in case they differ per variant.
  • Custom properties. Both global (applies to all) and variant specific (overrides global). Custom properties have different destinations, so that certain properties aren't available to Fastlane but to Project and vice-versa. These can also be sourced from environment variables, perfect for secrets and tokens.
Clone this wiki locally