Deploy a React Native Live Update
Use CodePushGo to update React Native JavaScript bundles and bundled assets without sending a new native binary through app review. Native code, permissions, entitlements, and native module changes still require an app-store release.
This guide assumes you completed the React Native quickstart and have already:
-
Created a CodePushGo account.
-
Connected your app with
npx @codepushgo/cli@latest init, using the detected native bundle ID by default. -
Installed
@codepushgo/react-native-updater.
Uploading a bundle
npx @codepushgo/cli@latest release --platform ios --version 1.0.1 --channel productionnpx @codepushgo/cli@latest upload --platform ios --version 1.0.1 --bundle-dir ./build/codepushgo/ios --channel productionname: CodePushGo release
on: push: branches: - main
jobs: release: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: 20 - run: npm install - run: npx @codepushgo/cli@latest release --platform ios --version ${{ github.sha }} --channel production --token ${{ secrets.CODEPUSHGO_TOKEN }}Troubleshooting uploads
If upload fails, check:
- The app ID in
codepushgo.config.jsonmatches the native bundle ID in the console. - You are running the command from the React Native app root.
--platformisiosorandroid.--versionis a strict semver value for public releases.- Your API token has access to the app or organization.
Receiving an update on a device
-
Install and open the native app build that includes the CodePushGo updater client.
-
Upload a compatible JavaScript release to the same channel used by the app.
-
Restart or resume the app according to the update behavior used by the updater client.
-
Check the console releases table to confirm the bundle is available for the native bundle ID.