Skip to main content

Auto-incrementing Build Numbers in Capacitor

Appflow provides an auto-incrementing environment variable (CI_BUILD_NUMBER) that can be used to automatically increment build numbers for your Capacitor app on iOS and Android after each build.

To do this, first install the @capacitor/configure project into your app:

npm install -D @capacitor/configure@1.0.28

Next, create a simple appflow.yml file with the following contents:

default: 1

buildNumber: $CI_BUILD_NUMBER
versionCode: $CI_BUILD_NUMBER

Finally, add the appflow:build script to your npm scripts in package.json to run this configuration during an Appflow build:

  "scripts": {
"appflow:build": "npx cap-config run appflow.yml -y && npm run build"

Make sure to keep your build command as the second part of the appflow:build script to ensure your app web assets build properly.

Setting Initial Build Number

If you'd like to start incrementing at a certain number, use the following appflow:build command instead, substituting your initial build number for the number 1234. All subsequent build numbers will be added to this number:

  "scripts": {
"appflow:build": "CI_BUILD_NUMBER=$(($CI_BUILD_NUMBER + 1234)) npx cap-config run appflow.yml -y && npm run build"

Learn more

The Capacitor Configure utility has a number of additional features that may be useful in your build pipeline. Explore the ionic-team/capacitor-configure repo to learn more.