Skip to main content

Enterprise Live Migrations CLI reference

Detailed usage information for the ELM CLI tool.

Installation

gh extension install github/gh-elm

The extension requires GitHub CLI (gh) version 2.0 or later.

Setup commands

CommandDescription
gh elm configInteractively configure the endpoints and tokens for ELM use
gh elm config resetRemove stored configuration and credentials
gh elm config showShow the current configuration, with tokens redacted
gh elm completionGenerate a shell autocompletion script for the specified shell

Migration commands

CommandDescription
gh elm migration listList migrations
gh elm migration createCreate a new migration
gh elm migration start MIGRATION-IDStart a previously created migration
gh elm migration status MIGRATION-IDGet the status and details of a migration
gh elm migration watch MIGRATION-IDWatch migration progress with a live-updating display
gh elm migration pause MIGRATION-IDPause a running migration
gh elm migration resume MIGRATION-IDResume a paused migration
gh elm migration cancel MIGRATION-IDCancel and terminate a migration
gh elm migration target-id MIGRATION-IDLook up the target (destination) migration ID for a migration
gh elm migration cutover MIGRATION-IDInitiate a cutover to the destination for a migration
gh elm migration cutover status MIGRATION-IDGet the cutover status and progress for a migration
gh elm migration cutover revert MIGRATION-IDRevert the effects of a cutover so the source repository can be migrated again

Some of these commands can take additional options. See the later sections in this article.

Target commands

CommandDescription
gh elm target mannequin reclaimClaim (reclaim) one or more mannequins on the target organization
gh elm target mannequin listList a target organization's mannequins as CSV
gh elm target report requestRequest a node report for a migration
gh elm target report statusQuery the status of a migration's node report
gh elm target report urlGet a signed download URL for a finished report
gh elm target resourcesList a migration's resources from the target

gh elm migration create options

Create a new migration to prepare for repository export and import.

FlagRequiredDefaultDescription
--source-orgYesN/ASlug of the source organization on GitHub Enterprise Server
--source-repoYesN/AName of the source repository
--target-orgYesN/ASlug of the destination organization on GHE.com
--target-repoYesN/AName of the destination repository
--target-visibilityNointernalVisibility of the destination repository. Must be private or internal. Public repositories are not supported.
--startNofalseAutomatically starts the migration after creating it
--jsonNofalseOutput the API's raw JSON response instead of human-readable text

gh elm migration list options

FlagRequiredDefaultDescription
--statusNoN/AFilters results by migration status. Valid values: created, queued, in_progress, paused, completed, failed, terminated.
--page-sizeNoN/ANumber of results per page
--afterNoN/ACursor for pagination, from a previous response
--jsonNofalseOutput the API's raw JSON response instead of human-readable text

gh elm migration cutover options

FlagRequiredDefaultDescription
--migration-idYesN/AThe ID of a migration that is ready for cutover.
--forceNofalseBy default, the command checks whether the migration target reports readiness before proceeding. Use --force to bypass this check when you are certain the migration state is correct.
--watchNofalseAfter triggering cutover, enter live watch mode