---
title: Environment Variables Reference
description: Reference for Capawesome Cloud native build environment variables — the default CI_* variables and the reserved variables you can set.
---

# Environment Variables

This page lists the environment variables available during native builds. To set your own variables and secrets, see [Set Up Environments](environments.md).

## Default variables

These are set automatically by Capawesome Cloud for every build and cannot be overridden. Use them in your build scripts to access information about the build context.

| Name | Type | Description |
| --- | --- | --- |
| `CI` | `boolean` | Always `true` — indicates a CI environment. |
| `CI_APP_ID` | `string` | The ID of the application. |
| `CI_BUILD_ID` | `string` | Unique identifier for the build. |
| `CI_BUILD_NUMBER` | `string` | Sequential number of the build. |
| `CI_GIT_COMMIT_SHA` | `string` | The SHA of the Git commit. |
| `CI_GIT_COMMIT_MESSAGE` | `string` | The commit message. |
| `CI_GIT_REFERENCE` | `string` | The Git branch or tag name. |
| `CI_PLATFORM` | `string` | The target platform (`ios` or `android`). |

## Reserved variables

These configure platform-specific build behavior. Set them in a [custom environment](environments.md) or as ad-hoc variables.

| Name | Type | Description |
| --- | --- | --- |
| `ANDROID_BUILD_TYPE` | `string` | The Android build type. |
| `ANDROID_FLAVOR` | `string` | The Android product flavor. |
| `IOS_PROVISIONING_PROFILE_MAP` | `string` | JSON mapping bundle IDs to target names (see [Custom iOS provisioning profiles](custom-ios-provisioning-profiles.md)). |
| `IOS_SCHEME` | `string` | The iOS scheme name. |
| `NODE_VERSION` | `int` | The Node.js major version (e.g. `22`, `24`). |
| `JAVA_VERSION` | `int` | The Java major version (e.g. `17`, `21`). |
| `XCODE_VERSION` | `int` | The Xcode major version (e.g. `16`, `26`). |

!!! note "Tool versions"

    The supported versions for Node.js, Java, and Xcode depend on your build stack — see [Build stacks](build-stacks.md).
