HotupdaterHot Updater
Guides

Deploy

This command is used to deploy the update to the specified platform.

Checklist

  1. Ensure hot-updater.config.ts is properly configured.
  2. Wrap your components using HotUpdater.wrap.
  3. Include the native code.

If you haven't completed these steps, refer to the Supabase Provider guide.

Options

Options:
  -p, --platform <platform>                    specify the platform (choices: "ios", "android")
  -t, --target-app-version <targetAppVersion>  specify the target app version (semver format e.g. 1.0.0, 1.x.x)
  -f, --force-update                           force update the app (default: false)
  -o, --bundle-output-path <bundleOutputPath>  the path where the bundle.zip will be generated
  -r, --rollout <percentage>                   specify the rollout percentage for the deployed bundle (0-100) (default: 100)
  -i, --interactive                            interactive mode (default: false)
  -c, --channel <channel>                      specify the channel to deploy (default: "production")
  -m, --message <message>                      Specify a custom message for this deployment. If not provided, the latest git commit message will be used as the deployment message
  -h, --help                                   display help for command

Usage

Interactive Mode

Interactive mode guides you through the deployment steps via keyboard inputs.

Execute the following command:

npx hot-updater deploy -i

The -i (or --interactive) flag enables interactive keyboard input.

  • This mode allows you to proceed through deployment steps interactively.

For Continuous Deployment (CD) Pipelines

Use this mode for automating deployment in CI/CD pipelines.

Run the following command:

npx hot-updater deploy -p <"ios" | "android">
  • This mode is suitable for Continuous Deployment (CD) pipelines.

Force Update

Deploy a forced update for emergency purposes. This will immediately apply the update.

Run the following command:

npx hot-updater deploy -p <"ios" | "android"> -f

The -f (or --force-update) flag enables force update.

Channel

The -c (or --channel) flag specifies the release channel.

Run the following command:

npx hot-updater deploy -p <"ios" | "android"> -c "<channel>"

The -c (or --channel) flag specifies the release channel. The default value is production.

For more details about default channels, refer to Default Channel Setup.

Rollout

The -r (or --rollout) flag sets the rollout percentage for the deployed bundle.

Run the following command:

npx hot-updater deploy -p <"ios" | "android"> -r 25

Use 1 to 99 for gradual rollout, 100 for a full rollout, and 0 when you want to keep the bundle deployed but unavailable to numeric rollout until you edit it later in the console.

Hot Updater maps rollout percentages to 1..1000 numeric cohorts internally. For example, -r 25 means 250 of 1000 numeric cohorts are eligible for that bundle.

If you omit -r, the default value is 100, so the bundle is deployed to the entire audience immediately.

For more on gradual rollout, current device cohorts, and cohort targeting from the console, see Rollout & Cohorts.

Message

The -m (or --message) flag specifies the message.

Run the following command:

npx hot-updater deploy -p <"ios" | "android"> -m "<message>"

Force Update Flag Difference

Update TypeWhen AppliedHow to Enable
DefaultDownloads the update bundle in the background and applies it when the user restarts the app.Default setting
Force UpdateDownloads the update bundle and applies it immediately.Use the --force-update flag or console.