EAS CLI reference
Edit page
EAS CLI is a command-line tool that allows you to interact with Expo Application Services (EAS) from your terminal.
You can use EAS Command-Line Interface (CLI) to build, update, submit, deploy or use workflows in your Expo and React Native project from a terminal window.
Installation
You need to install the EAS CLI globally on your machine. You do this by running the following command:
- npm install --global eas-cli- yarn global add eas-cli- pnpm add -g eas-cli- bun add -g eas-cliAlternatively, you can use CLI tools provided by your package manager to run EAS CLI commands:
- npx eas-cli@latest- yarn dlx eas-cli@latest- pnpm dlx eas-cli@latest- bunx eas-cli@latestCommands
Use the EAS CLI by running one of the commands documented on this page, optionally followed by any flags or arguments. Flags customize the behavior of a command, and arguments are specific to the command.
eas account:login
Log in with your Expo account.
eas account:logout
Log out.
eas account:view
Show the username you are logged in as.
eas analytics [STATUS]
Display or change analytics settings.
eas autocomplete [SHELL]
Display autocomplete installation instructions.
eas branch:create [NAME]
Create a branch.
eas branch:delete [NAME]
Delete a branch.
eas branch:list
List all branches.
Flags
--jsonEnable JSON output, non-JSON messages will be printed tostderr.--limit=<value>The number of items to fetch each query. Defaults to 50 and is capped at 100.--non-interactiveRun the command in non-interactive mode.--offset=<value>Start queries from specified index. Use for paginating results. Defaults to 0.
eas branch:rename
Rename a branch.
eas branch:view [NAME]
View a branch.
Usage
- eas branch:view [NAME] [--offset <value>] [--limit <value>] [--json --non-interactive]Flags
--jsonEnable JSON output, non-JSON messages will be printed tostderr.--limit=<value>The number of items to fetch each query. Defaults to 25 and is capped at 50.--non-interactiveRun the command in non-interactive mode.--offset=<value>Start queries from specified index. Use for paginating results. Defaults to 0.
eas build
Start a build.
Usage
- eas build [-p android|ios|all] [-e <value>] [--local] [--output <value>] [--wait] [--clear-cache] [-s |--auto-submit-with-profile <value>] [--what-to-test <value>] [-m <value>] [--build-logger-leveltrace|debug|info|warn|error|fatal] [--freeze-credentials] [--verbose-logs] [--json --non-interactive]Flags
-e, --profile=PROFILE_NAMEName of the build profile from eas.json. Defaults to "production" if defined in eas.json.-m, --message=<value>A short message describing the build.-p, --platform=(android|ios|all)-s, --auto-submitSubmit on build complete using the submit profile with the same name as the build profile.--auto-submit-with-profile=PROFILE_NAMESubmit on build complete using the submit profile with provided name.--build-logger-level=(trace|debug|info|warn|error|fatal)The level of logs to output during the build process. Defaults to "info".--clear-cacheClear cache before the build.--freeze-credentialsPrevent the build from updating credentials in non-interactive mode.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--localRun build locally [experimental].--non-interactiveRun the command in non-interactive mode.--output=<value>Output path for local build.--verbose-logsUse verbose logs for the build process.--[no-]waitWait for build(s) to complete.--what-to-test=<value>Specify the "What to Test" information for the build in TestFlight (iOS-only). To be used with theauto-submitflag.
eas build:cancel [BUILD_ID]
Cancel a build.
eas build:configure
Configure the project to support EAS Build.
eas build:delete [BUILD_ID]
Delete a build.
eas build:dev
Run dev client simulator/emulator build with matching fingerprint or create a new one.
eas build:download
Download simulator/emulator builds for a given fingerprint hash.
eas build:inspect
Inspect the state of the project at specific build stages, useful for troubleshooting.
Usage
- eas build:inspect -p android|ios -s archive|pre-build|post-build -o <value> [-e <value>] [--force] [-v]Flags
-e, --profile=PROFILE_NAMEName of the build profile from eas.json. Defaults to "production" if defined in eas.json.-o, --output=OUTPUT_DIRECTORY(required) Output directory.-p, --platform=(android|ios)(required).-s, --stage=(archive|pre-build|post-build)(required) Stage of the build you want to inspect.archiveBuilds the project archive that would be uploaded to EAS when building.pre-buildPrepares the project to be built with Gradle/Xcode. Does not run the native build.post-buildBuilds the native project and leaves the output directory for inspection.
-v, --verbose--forceDelete OUTPUT_DIRECTORY if it already exists.
eas build:list
List all builds for your project.
Usage
- eas build:list [-p android|ios|all] [--statusnew|in-queue|in-progress|pending-cancel|errored|finished|canceled] [--distribution store|internal|simulator][--channel <value>] [--app-version <value>] [--app-build-version <value>] [--sdk-version <value>] [--runtime-version<value>] [--app-identifier <value>] [-e <value>] [--git-commit-hash <value>] [--fingerprint-hash <value>] [--offset<value>] [--limit <value>] [--json --non-interactive] [--simulator]Flags
-e, --build-profile=<value>Filter only builds created with the specified build profile.-p, --platform=(android|ios|all)--app-build-version=<value>Filter only builds created with the specified app build version.--app-identifier=<value>Filter only builds created with the specified app identifier.--app-version=<value>Filter only builds created with the specified main app version.--channel=<value>--distribution=(store|internal|simulator)Filter only builds with the specified distribution type.--fingerprint-hash=<value>Filter only builds with the specified fingerprint hash.--git-commit-hash=<value>Filter only builds created with the specified git commit hash.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--limit=<value>The number of items to fetch each query. Defaults to 10 and is capped at 50.--non-interactiveRun the command in non-interactive mode.--offset=<value>Start queries from specified index. Use for paginating results. Defaults to 0.--runtime-version=<value>Filter only builds created with the specified runtime version.--sdk-version=<value>Filter only builds created with the specified Expo SDK version.--simulatorFilter only iOS simulator builds. Can only be used with--platformflag set to "ios".--status=(new|in-queue|in-progress|pending-cancel|errored|finished|canceled)Filter only builds with the specified status.
eas build:resign
Re-sign a build archive.
Usage
- eas build:resign [-p android|ios] [-e <value>] [--source-profile <value>] [--wait] [--id <value>] [--offset<value>] [--limit <value>] [--json --non-interactive]Flags
-e, --target-profile=PROFILE_NAMEName of the target build profile from eas.json. Credentials and environment variables from this profile will be used when re-signing. Defaults to "production" if defined in eas.json.-p, --platform=(android|ios)--id=<value>ID of the build to re-sign.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--limit=<value>The number of items to fetch each query. Defaults to 50 and is capped at 100.--non-interactiveRun the command in non-interactive mode.--offset=<value>Start queries from specified index. Use for paginating results. Defaults to 0.--source-profile=PROFILE_NAMEName of the source build profile from eas.json. Used to filter builds eligible for re-signing.--[no-]waitWait for build(s) to complete.
eas build:run
Run simulator/emulator builds from eas-cli.
Usage
- eas build:run [--latest | --id <value> | --path <value> | --url <value>] [-p android|ios] [-e <value>][--offset <value>] [--limit <value>]Flags
-e, --profile=PROFILE_NAMEName of the build profile used to create the build to run. When specified, only builds created with the specified build profile will be queried.-p, --platform=(android|ios)--id=<value>ID of the simulator/emulator build to run.--latestRun the latest simulator/emulator build for specified platform.--limit=<value>The number of items to fetch each query. Defaults to 50 and is capped at 100.--offset=<value>Start queries from specified index. Use for paginating results. Defaults to 0.--path=<value>Path to the simulator/emulator build archive or app.--url=<value>Simulator/Emulator build archive url.
eas build:submit
Submit app binary to App Store and/or Play Store.
Usage
- eas build:submit [-p android|ios|all] [-e <value>] [--latest | --id <value> | --path <value> | --url <value>][--what-to-test <value>] [--verbose] [--wait] [--verbose-fastlane] [-g <value>] [--non-interactive]Flags
-e, --profile=<value>Name of the submit profile from eas.json. Defaults to "production" if defined in eas.json.-g, --groups=<value>...Internal TestFlight testing groups to add the build to (iOS only). Learn more: https://developer.apple.com/help/app-store-connect/test-a-beta-version/add-internal-testers.-p, --platform=(android|ios|all)--id=<value>ID of the build to submit.--latestSubmit the latest build for specified platform.--non-interactiveRun command in non-interactive mode.--path=<value>Path to the .apk/.aab/.ipa file.--url=<value>App archive url.--verboseAlways print logs from EAS Submit.--verbose-fastlaneEnable verbose logging for the submission process.--[no-]waitWait for submission to complete.--what-to-test=<value>Sets the "What to test" information in TestFlight (iOS only).
eas build:version:get
Get the latest version from EAS servers.
eas build:version:set
Update version of an app.
eas build:version:sync
Update a version in native code with a value stored on EAS servers.
eas build:view [BUILD_ID]
View a build for your project.
eas channel:create [NAME]
Create a channel.
eas channel:delete [NAME]
Delete a channel.
eas channel:edit [NAME]
Point a channel at a new branch.
eas channel:list
List all channels.
Flags
--jsonEnable JSON output, non-JSON messages will be printed tostderr.--limit=<value>The number of items to fetch each query. Defaults to 10 and is capped at 25.--non-interactiveRun the command in non-interactive mode.--offset=<value>Start queries from specified index. Use for paginating results. Defaults to 0.
eas channel:pause [NAME]
Pause a channel to stop it from sending updates.
eas channel:resume [NAME]
Resume a channel to start sending updates.
eas channel:rollout [CHANNEL]
Roll a new branch out on a channel incrementally.
Usage
- eas channel:rollout [CHANNEL] [--action create|edit|end|view] [--percent <value>] [--outcomerepublish-and-revert|revert] [--branch <value>] [--runtime-version <value>] [--private-key-path <value>] [--json--non-interactive]Flags
--action=(create|edit|end|view)Rollout action to perform.--branch=<value>Branch to roll out. Use with--action=create.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--non-interactiveRun the command in non-interactive mode.--outcome=(republish-and-revert|revert)End outcome of rollout. Use with--action=end.--percent=<value>Percent of users to send to the new branch. Use with--action=editor--action=create.--private-key-path=<value>File containing the PEM-encoded private key corresponding to the certificate in expo-updates' configuration. Defaults to a file named "private-key.pem" in the certificate's directory. Only relevant if you are using code signing: https://docs.expo.dev/eas-update/code-signing/.--runtime-version=<value>Runtime version to target. Use with--action=create.
eas channel:view [NAME]
View a channel.
Usage
- eas channel:view [NAME] [--json --non-interactive] [--offset <value>] [--limit <value>]Flags
--jsonEnable JSON output, non-JSON messages will be printed tostderr.--limit=<value>The number of items to fetch each query. Defaults to 50 and is capped at 100.--non-interactiveRun the command in non-interactive mode.--offset=<value>Start queries from specified index. Use for paginating results. Defaults to 0.
eas config
Display project configuration (app.json + eas.json).
eas credentials
Manage credentials.
eas credentials:configure-build
Set up credentials for building your project.
eas deploy [options]
Deploy your Expo Router web build and API Routes.
Flags
--alias=nameCustom alias to assign to the new deployment.--dry-runOutputs a tarball of the new deployment instead of uploading it.--environment=<value>Environment variable's environment, for example, 'production', 'preview', 'development'.--export-dir=dir[default: dist] Directory where the Expo project was exported.--id=xyz123Custom unique identifier for the new deployment.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--non-interactiveRun the command in non-interactive mode.--prodCreate a new production deployment.
eas deploy:alias
Assign deployment aliases.
Usage
- eas deploy:alias [--prod] [--alias <value>] [--id <value>] [--json --non-interactive]Flags
--alias=nameCustom alias to assign to the existing deployment.--id=xyz123Unique identifier of an existing deployment.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--non-interactiveRun the command in non-interactive mode.--prodPromote an existing deployment to production.
eas deploy:alias:delete [ALIAS_NAME]
Delete deployment aliases.
eas deploy:delete [DEPLOYMENT_ID]
Delete a deployment.
eas deploy:promote
Assign deployment aliases.
Usage
- eas deploy:promote [--prod] [--alias <value>] [--id <value>] [--json --non-interactive]Flags
--alias=nameCustom alias to assign to the existing deployment.--id=xyz123Unique identifier of an existing deployment.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--non-interactiveRun the command in non-interactive mode.--prodPromote an existing deployment to production.
eas device:create
Register new Apple Devices to use for internal distribution.
eas device:delete
Remove a registered device from your account.
eas device:list
List all registered devices for your account.
Usage
- eas device:list [--apple-team-id <value>] [--offset <value>] [--limit <value>] [--json --non-interactive]Flags
--apple-team-id=<value>--jsonEnable JSON output, non-JSON messages will be printed tostderr.--limit=<value>The number of items to fetch each query. Defaults to 50 and is capped at 100.--non-interactiveRun the command in non-interactive mode.--offset=<value>Start queries from specified index. Use for paginating results. Defaults to 0.
eas device:rename
Rename a registered device.
eas device:view [UDID]
View a device for your project.
eas diagnostics
Display environment info.
eas env:create [ENVIRONMENT]
Create an environment variable for the current project or account.
Usage
- eas env:create [ENVIRONMENT] [--name <value>] [--value <value>] [--force] [--type string|file] [--visibilityplaintext|sensitive|secret] [--scope project|account] [--environment <value>] [--non-interactive]Argument
ENVIRONMENTEnvironment to create the variable in. Default environments are 'production', 'preview', and 'development'.
Flags
--environment=<value>...Environment variable's environment, for example, 'production', 'preview', 'development'.--forceOverwrite existing variable.--name=<value>Name of the variable.--non-interactiveRun the command in non-interactive mode.--scope=(project|account)[default: project] Scope for the variable.--type=(string|file)The type of variable.--value=<value>Text value or the variable.--visibility=(plaintext|sensitive|secret)Visibility of the variable.
eas env:delete [ENVIRONMENT]
Delete an environment variable for the current project or account.
Usage
- eas env:delete [ENVIRONMENT] [--variable-name <value>] [--variable-environment <value>] [--scopeproject|account] [--non-interactive]eas env:exec ENVIRONMENT BASH_COMMAND
Execute a command with environment variables from the selected environment.
eas env:get [ENVIRONMENT]
View an environment variable for the current project or account.
Usage
- eas env:get [ENVIRONMENT] [--variable-name <value>] [--variable-environment <value>] [--formatlong|short] [--scope project|account] [--non-interactive]eas env:list [ENVIRONMENT]
List environment variables for the current project or account.
Usage
- eas env:list [ENVIRONMENT] [--include-sensitive] [--include-file-content] [--environment <value>][--format long|short] [--scope project|account]Argument
ENVIRONMENTEnvironment to list the variables from. Default environments are 'production', 'preview', and 'development'.
Flags
--environment=<value>...Environment variable's environment, for example, 'production', 'preview', 'development'.--format=(long|short)[default: short] Output format.--include-file-contentDisplay files content in the output.--include-sensitiveDisplay sensitive values in the output.--scope=(project|account)[default: project] Scope for the variable.
eas env:pull [ENVIRONMENT]
Pull environment variables for the selected environment to .env file.
Usage
- eas env:pull [ENVIRONMENT] [--non-interactive] [--environment <value>] [--path <value>]eas env:push [ENVIRONMENT]
Push environment variables from .env file to the selected environment.
eas env:update [ENVIRONMENT]
Update an environment variable on the current project or account.
Usage
- eas env:update [ENVIRONMENT] [--variable-name <value>] [--variable-environment <value>] [--name <value>][--value <value>] [--type string|file] [--visibility plaintext|sensitive|secret] [--scope project|account][--environment <value>] [--non-interactive]Argument
ENVIRONMENTCurrent environment of the variable to update. Default environments are 'production', 'preview', and 'development'.
Flags
--environment=<value>...Environment variable's environment, for example, 'production', 'preview', 'development'.--name=<value>New name of the variable.--non-interactiveRun the command in non-interactive mode.--scope=(project|account)[default: project] Scope for the variable.--type=(string|file)The type of variable.--value=<value>New value or the variable.--variable-environment=<value>Current environment of the variable to update.--variable-name=<value>Current name of the variable.--visibility=(plaintext|sensitive|secret)Visibility of the variable.
eas fingerprint:compare [HASH1] [HASH2]
Compare fingerprints of the current project, builds, and updates.
Usage
- eas fingerprint:compare [HASH1] [HASH2] [--build-id <value>] [--update-id <value>] [--open] [--environment <value>][--json --non-interactive]Arguments
HASH1If provided alone, HASH1 is compared against the current project's fingerprint.HASH2If two hashes are provided, HASH1 is compared against HASH2.
Flags
--build-id=<value>...Compare the fingerprint with the build with the specified ID.--environment=<value>If generating a fingerprint from the local directory, use the specified environment.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--non-interactiveRun the command in non-interactive mode.--openOpen the fingerprint comparison in the browser.--update-id=<value>...Compare the fingerprint with the update with the specified ID.
Examples
- eas fingerprint:compare # Compare fingerprints in interactive mode- eas fingerprint:compare <FINGERPRINT-HASH> # Compare fingerprint against local directory- eas fingerprint:compare <FINGERPRINT-HASH-1> <FINGERPRINT-HASH-2> # Compare provided fingerprints- eas fingerprint:compare --build-id <BUILD-ID> # Compare fingerprint from build against local directory- eas fingerprint:compare --build-id <BUILD-ID> --environment production # Compare fingerprint from build against local directory with the "production" environment- eas fingerprint:compare --build-id <BUILD-ID-1> --build-id <BUILD-ID-2> # Compare fingerprint from a build against another build- eas fingerprint:compare --build-id <BUILD-ID> --update-id <UPDATE-ID> # Compare fingerprint from build against fingerprint from update- eas fingerprint:compare <FINGERPRINT-HASH> --update-id <UPDATE-ID> # Compare fingerprint from update against provided fingerprinteas fingerprint:generate
Generate fingerprints from the current project.
Usage
- eas fingerprint:generate [-p android|ios] [--environment <value> | -e <value>] [--json --non-interactive]Flags
-e, --build-profile=<value>Name of the build profile from eas.json.-p, --platform=(android|ios)--environment=<value>Environment variable's environment, for example, 'production', 'preview', 'development'.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--non-interactiveRun the command in non-interactive mode.
Examples
- eas fingerprint:generate # Generate fingerprint in interactive mode- eas fingerprint:generate --build-profile preview # Generate a fingerprint using the "preview" build profile- eas fingerprint:generate --environment preview # Generate a fingerprint using the "preview" environment- eas fingerprint:generate --json --non-interactive --platform android # Output fingerprint json to stdouteas help [COMMAND]
Display help for eas.
eas init
Create or link an EAS project.
eas init:onboarding [TARGET_PROJECT_DIRECTORY]
Continue onboarding process started on the https://expo.new website.
eas login
Log in with your Expo account.
eas logout
Log out.
eas metadata:lint
Validate the local store configuration.
eas metadata:pull
Generate the local store configuration from the app stores.
eas metadata:push
Sync the local store configuration to the app stores.
eas new [PATH]
Create a new project configured with Expo Application Services (EAS).
eas onboarding [TARGET_PROJECT_DIRECTORY]
Continue onboarding process started on the https://expo.new website.
eas open
Open the project page in a web browser.
eas project:info
Information about the current project.
eas project:init
Create or link an EAS project.
eas project:new [PATH]
Create a new project configured with Expo Application Services (EAS).
eas project:onboarding [TARGET_PROJECT_DIRECTORY]
Continue onboarding process started on the https://expo.new website.
eas submit
Submit app binary to App Store and/or Play Store.
Usage
- eas submit [-p android|ios|all] [-e <value>] [--latest | --id <value> | --path <value> | --url <value>][--what-to-test <value>] [--verbose] [--wait] [--verbose-fastlane] [-g <value>] [--non-interactive]Flags
-e, --profile=<value>Name of the submit profile from eas.json. Defaults to "production" if defined in eas.json.-g, --groups=<value>...Internal TestFlight testing groups to add the build to (iOS only). Learn more: https://developer.apple.com/help/app-store-connect/test-a-beta-version/add-internal-testers.-p, --platform=(android|ios|all)--id=<value>ID of the build to submit.--latestSubmit the latest build for specified platform.--non-interactiveRun command in non-interactive mode.--path=<value>Path to the .apk/.aab/.ipa file.--url=<value>App archive url.--verboseAlways print logs from EAS Submit.--verbose-fastlaneEnable verbose logging for the submission process.--[no-]waitWait for submission to complete.--what-to-test=<value>Sets the "What to test" information in TestFlight (iOS only).
eas update
Publish an update group.
Usage
- eas update [--branch <value>] [--channel <value>] [-m <value>] [--input-dir <value>] [--skip-bundler][--clear-cache] [--emit-metadata] [--rollout-percentage <value>] [-p android|ios|all] [--auto] [--private-key-path<value>] [--environment <value>] [--json --non-interactive]Flags
-m, --message=<value>A short message describing the update.-p, --platform=(android|ios|all)[default: all].--autoUse the current git branch and commit message for the EAS branch and update message.--branch=<value>Branch to publish the update group on.--channel=<value>Channel that the published update should affect.--clear-cacheClear the bundler cache before publishing.--emit-metadataEmit "eas-update-metadata.json" in the bundle folder with detailed information about the generated updates.--environment=<value>Environment to use for the server-side defined EAS environment variables during command execution, for example, "production", "preview", "development".--input-dir=<value>[default: dist] Location of the bundle.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--non-interactiveRun the command in non-interactive mode.--private-key-path=<value>File containing the PEM-encoded private key corresponding to the certificate in expo-updates' configuration. Defaults to a file named "private-key.pem" in the certificate's directory. Only relevant if you are using code signing: https://docs.expo.dev/eas-update/code-signing/.--rollout-percentage=<value>Percentage of users this update should be immediately available to. Users not in the rollout will be served the previous latest update on the branch, even if that update is itself being rolled out. The specified number must be an integer between 1 and 100. When not specified, this defaults to 100.--skip-bundlerSkip running Expo CLI to bundle the app before publishing.
eas update:configure
Configure the project to support EAS Update.
Usage
- eas update:configure [-p android|ios|all] [--environment <value>] [--non-interactive]Flags
-p, --platform=(android|ios|all)[default: all] Platform to configure.--environment=<value>Environment to use for the server-side defined EAS environment variables during command execution, for example, "production", "preview", "development".--non-interactiveRun the command in non-interactive mode.
eas update:delete GROUPID
Delete all the updates in an update group.
eas update:edit [GROUPID]
Edit all the updates in an update group.
Usage
- eas update:edit [GROUPID] [--rollout-percentage <value>] [--branch <value>] [--json --non-interactive]Flags
--branch=<value>Branch for which to list updates to select from.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--non-interactiveRun the command in non-interactive mode.--rollout-percentage=<value>Rollout percentage to set for a rollout update. The specified number must be an integer between 1 and 100.
eas update:list
View the recent updates.
Usage
- eas update:list [--branch <value> | --all] [--offset <value>] [--limit <value>] [--json --non-interactive]Flags
--allList updates on all branches.--branch=<value>List updates only on this branch.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--limit=<value>The number of items to fetch each query. Defaults to 25 and is capped at 50.--non-interactiveRun the command in non-interactive mode.--offset=<value>Start queries from specified index. Use for paginating results. Defaults to 0.
eas update:republish
Roll back to an existing update.
Usage
- eas update:republish [--channel <value> | --branch <value> | --group <value>] [--destination-channel <value> |--destination-branch <value>] [-m <value>] [-p android|ios|all] [--private-key-path <value>] [--rollout-percentage<value>] [--json --non-interactive]Flags
-m, --message=<value>Short message describing the republished update group.-p, --platform=(android|ios|all)[default: all].--branch=<value>Branch name to select an update group to republish from.--channel=<value>Channel name to select an update group to republish from.--destination-branch=<value>Branch name to republish to if republishing to a different branch.--destination-channel=<value>Channel name to select a branch to republish to if republishing to a different branch.--group=<value>Update group ID to republish.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--non-interactiveRun the command in non-interactive mode.--private-key-path=<value>File containing the PEM-encoded private key corresponding to the certificate in expo-updates' configuration. Defaults to a file named "private-key.pem" in the certificate's directory. Only relevant if you are using code signing: https://docs.expo.dev/eas-update/code-signing/.--rollout-percentage=<value>Percentage of users this update should be immediately available to. Users not in the rollout will be served the previous latest update on the branch, even if that update is itself being rolled out. The specified number must be an integer between 1 and 100. When not specified, this defaults to 100.
eas update:revert-update-rollout
Revert a rollout update for a project.
Usage
- eas update:revert-update-rollout [--channel <value> | --branch <value> | --group <value>] [-m <value>] [--private-key-path<value>] [--json --non-interactive]Flags
-m, --message=<value>Short message describing the revert.--branch=<value>Branch name to select an update group to revert the rollout update from.--channel=<value>Channel name to select an update group to revert the rollout update from.--group=<value>Rollout update group ID to revert.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--non-interactiveRun the command in non-interactive mode.--private-key-path=<value>File containing the PEM-encoded private key corresponding to the certificate in expo-updates' configuration. Defaults to a file named "private-key.pem" in the certificate's directory. Only relevant if you are using code signing: https://docs.expo.dev/eas-update/code-signing/.
eas update:roll-back-to-embedded
Roll back to the embedded update.
Usage
- eas update:roll-back-to-embedded [--branch <value>] [--channel <value>] [--runtime-version <value>] [--message <value>] [-pandroid|ios|all] [--private-key-path <value>] [--json --non-interactive]Flags
-p, --platform=(android|ios|all)[default: all].--branch=<value>Branch to publish the rollback to embedded update group on.--channel=<value>Channel that the published rollback to embedded update should affect.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--message=<value>A short message describing the rollback to embedded update.--non-interactiveRun the command in non-interactive mode.--private-key-path=<value>File containing the PEM-encoded private key corresponding to the certificate in expo-updates' configuration. Defaults to a file named "private-key.pem" in the certificate's directory. Only relevant if you are using code signing: https://docs.expo.dev/eas-update/code-signing/.--runtime-version=<value>Runtime version that the rollback to embedded update should target.
eas update:rollback
Roll back to an embedded update or an existing update. Users wishing to run this command non-interactively should instead execute "eas update:republish" or "eas update:roll-back-to-embedded".
Flag
--private-key-path=<value>File containing the PEM-encoded private key corresponding to the certificate in expo-updates' configuration. Defaults to a file named "private-key.pem" in the certificate's directory. Only relevant if you are using code signing: https://docs.expo.dev/eas-update/code-signing/.
eas update:view GROUPID
Update group details.
eas upload
Upload a local build and generate a sharable link.
eas webhook:create
Create a webhook.
eas webhook:delete [ID]
Delete a webhook.
eas webhook:list
List webhooks.
eas webhook:update
Update a webhook.
Usage
- eas webhook:update --id <value> [--event BUILD|SUBMIT] [--url <value>] [--secret <value>] [--non-interactive]Flags
--event=(BUILD|SUBMIT)Event type that triggers the webhook.--id=<value>(required) Webhook ID.--non-interactiveRun the command in non-interactive mode.--secret=<value>Secret used to create a hash signature of the request payload, provided in the 'Expo-Signature' header.--url=<value>Webhook URL.
eas webhook:view ID
View a webhook.
eas whoami
Show the username you are logged in as.
eas worker:alias
Assign deployment aliases.
Usage
- eas worker:alias [--prod] [--alias <value>] [--id <value>] [--json --non-interactive]Flags
--alias=nameCustom alias to assign to the existing deployment.--id=xyz123Unique identifier of an existing deployment.--jsonEnable JSON output, non-JSON messages will be printed tostderr.--non-interactiveRun the command in non-interactive mode.--prodPromote an existing deployment to production.
eas worker:alias:delete [ALIAS_NAME]
Delete deployment aliases.
eas worker:delete [DEPLOYMENT_ID]
Delete a deployment.
eas workflow:cancel
Cancel one or more workflow runs. If no workflow run IDs are provided, you will be prompted to select IN_PROGRESS runs to cancel.
eas workflow:create [NAME]
Create a new workflow configuration YAML file.
eas workflow:logs [ID]
View logs for a workflow run, selecting a job and step to view. You can pass in either a workflow run ID or a job ID. If no ID is passed in, you will be prompted to select from recent workflow runs for the current project.
eas workflow:run [FILE]
Run an EAS workflow. The entire local project directory will be packaged and uploaded to EAS servers for the workflow run, unless the --ref flag is used.
eas workflow:runs
List recent workflow runs for this project, with their IDs, statuses, and timestamps.
Usage
- eas workflow:runs [--workflow <value>] [--status ACTION_REQUIRED|CANCELED|FAILURE|IN_PROGRESS|NEW|SUCCESS][--json] [--limit <value>]Flags
--jsonEnable JSON output, non-JSON messages will be printed tostderr.--limit=<value>The number of items to fetch each query. Defaults to 10 and is capped at 100.--status=(ACTION_REQUIRED|CANCELED|FAILURE|IN_PROGRESS|NEW|SUCCESS)If present, filter the returned runs to select those with the specified status.--workflow=<value>If present, the query will only return runs for the specified workflow file name.
eas workflow:status [WORKFLOW_RUN_ID]
Show the status of an existing workflow run. If no run ID is provided, you will be prompted to select from recent workflow runs for the current project.
eas workflow:validate PATH
Validate a workflow configuration yaml file.
eas workflow:view [ID]
View details for a workflow run, including jobs. If no run ID is provided, you will be prompted to select from recent workflow runs for the current project.