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:
vars:
CI_BUILD_NUMBER:
default: 1
platforms:
ios:
buildNumber: $CI_BUILD_NUMBER
android:
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.