dispatch publish
Export your Expo app and publish an OTA release to AppDispatch.
Usage
dispatch publish [OPTIONS]Options
| Flag | Default | Description |
|---|---|---|
--channel | production | Target channel (e.g. production, staging, canary) |
-m, --message | Latest git commit | Release message |
--platform | Both | Platform to build: ios, android, or both |
--rollout | 100 | Rollout percentage (0–100) |
--critical | false | Force immediate reload on devices |
--no-publish | false | Upload the build without publishing — publish later from the dashboard |
--runtime-version | Auto-detected | Override the runtime version (skips fingerprint computation) |
Examples
Publish to production
dispatch publishPublish to staging with a message
dispatch publish --channel staging -m "fix onboarding bug"Gradual rollout
dispatch publish --rollout 10 -m "testing new checkout flow"Then increase later from the dashboard, or publish again with a higher percentage.
Critical update
dispatch publish --critical -m "security patch"Critical releases force an immediate reload instead of waiting for the next app launch.
iOS only
dispatch publish --platform ios -m "iOS-specific fix"Upload without publishing
dispatch publish --no-publish -m "ready for QA review"The build will appear in the dashboard where it can be reviewed and published manually.
What it does
- Loads project config from
.dispatch/config.jsonand credentials from~/.dispatch/credentials.json - Computes a runtime fingerprint using
@expo/fingerprint - Runs
npx expo exportfor each platform - Uploads assets to AppDispatch via multipart upload
- Publishes the build to the target channel (unless
--no-publish)
iOS and Android builds are grouped together so they appear as a single release in the dashboard.
Last updated on