Las migraciones a Enterprise Cloud incluyen migraciones entre cuentas en .com y, si estás adoptando diferente residencia, migraciones al subdominio de tu empresa de GHE.com.
Puedes ejecutar la migración con la CLI o la API.
La CLI simplifica el proceso de migración y se recomienda para la mayoría de los clientes. Los clientes avanzados con necesidades de personalización intensivas pueden usar la API para crear sus propias integraciones con Enterprise Importer.
- Se recomienda encarecidamente realizar una ejecución de prueba de la migración y completar la migración de producción poco después. Para más información sobre las ejecuciones de prueba, consulta Introducción a una migración entre productos de .
- Asegúrate de comprender los datos que se migrarán y las limitaciones de compatibilidad conocidas del importador. Para obtener más información, consulta Acerca de las migraciones entre productos de .
- Aunque no es necesario, se recomienda detener el trabajo durante la migración de producción. Importer no admite migraciones diferenciales, por lo que los cambios que se produzcan durante la migración no se migrarán. Si decides no detener el trabajo durante la migración de producción, tendrás que migrar manualmente estos cambios.
- Para la organización de origen, debes ser propietario de la organización o tener el rol de migrador. Para más información, consulta Administración del acceso para una migración entre productos de .
- Para la cuenta empresarial de destino, debes ser propietario de la empresa.
Para realizar consultas de GraphQL, tendrás que escribir scripts propios, o bien usar un cliente HTTP como Insomnia.
Para más información sobre cómo empezar a trabajar con GraphQL API de , incluido cómo autenticarse, consulta Formar llamados con GraphQl.
Enviarás todas las consultas de GraphQL al destino de tu migración. Si vas a migrar a Nube de Enterprise con residencia de datos, asegúrate de enviar consultas al punto de conexión del subdominio de la empresa de GHE.com.
Como propietario de la empresa en .com, usa la siguiente consulta para devolver el identificador de la cuenta empresarial a la que deseas que pertenezca la organización migrada. Necesitarás el identificador empresarial para identificar el destino de la migración.
query(
$slug: String!
){
enterprise (slug: $slug)
{
slug
id
}
}
Variable de consulta | Descripción |
---|---|
slug | El slug de aplicación de la cuenta empresarial, que puedes identificar examinando la dirección URL de tu empresa, https://.com/enterprises/SLUG o https://SLUG.ghe.com . |
Cuando inicias la migración, una única organización y sus datos adjuntos se migran a una nueva organización dentro de la empresa de destino que especifiques.
mutation startOrganizationMigration (
$sourceOrgUrl: URI!,
$targetOrgName: String!,
$targetEnterpriseId: ID!,
$sourceAccessToken: String!,
$targetAccessToken: String!
){
startOrganizationMigration( input: {
sourceOrgUrl: $sourceOrgUrl,
targetOrgName: $targetOrgName,
targetEnterpriseId: $targetEnterpriseId,
sourceAccessToken: $sourceAccessToken,
targetAccessToken: $targetAccessToken
}) {
orgMigration {
id
}
}
}
Variable de consulta | Descripción |
---|---|
sourceOrgUrl | Dirección URL de la organización de origen, como https://.com/octo-org . |
targetOrgName | El nombre que quiere que tenga la nueva organización. No se puede compartir por otra organización en la plataforma de destino. |
targetEnterpriseId | Identificador de la empresa en la que deseas crear la nueva organización, devuelto en el paso 2. |
sourceAccessToken | Tu personal access token (classic) para la organización de origen. Para saber los requisitos, consulta Administración del acceso para una migración entre productos de . |
targetAccessToken | Tu personal access token (classic) para la empresa de destino. |
En el paso siguiente, usarás el id. de migración devuelto por la mutación startOrganizationMigration
para comprobar el estado de la migración.
Para detectar errores de migración y asegurarte de que la migración funciona, puedes consultar los elementos OrganizationMigration
que has creado para ver el estado de migración mediante la consulta getMigration
.
La consulta devolverá un estado para informarte de si la migración es queued
, in progress``failed
o completed
, aparte de información sobre cuántos repositorios están esperando para migrarse. Si se ha producido un error en la migración, en Importer se proporcionará un motivo para el error.
query (
$id: ID!
){
node( id: $id ) {
... on OrganizationMigration {
id
sourceOrgUrl
targetOrgName
state
failure_reason
remaining_repositories_count
total_repositories_count
}
}
}
Variable de consulta | Descripción |
---|---|
id | id de tu migración. |
Si se trata de la primera migración, tendrás que instalar la GEI extension of the CLI. Para más información sobre CLI, consulta Acerca del CLI de .
Instala la CLI. A fin de obtener instrucciones de instalación para CLI, vea el repositorio de CLI.
Nota:
Necesitas la versión 2.4.0 o posterior de CLI. Puedes comprobar la versión instalada con el comando
gh --version
.Instalación de la GEI extension.
Shell gh extension install /gh-gei
gh extension install /gh-gei
Cada vez que necesites ayuda con la GEI extension, puedes usar la marca --help
con un comando. Por ejemplo, gh gei --help
enumerará todos los comandos disponibles y gh gei migrate-repo --help
todas las opciones disponibles para el comando migrate-repo
.
La GEI extension se actualiza semanalmente. Para asegurarte de que usas la versión más reciente, actualiza la extensión.
gh extension upgrade /gh-gei
Para poder usar la GEI extension para migrar a Enterprise Cloud, debes crear personal access tokens (classic) que puedan acceder a la organización de origen y a la empresa de destino y luego establecer los personal access tokens (classic) como variables de entorno.
Crea y registra un personal access token que cumpla todos los requisitos para autenticarse en la organización de origen para las migraciones de la organización. Para más información, consulta Administración del acceso para una migración entre productos de .
Crea y registra un personal access token (classic) que cumpla todos los requisitos para autenticarse en la empresa de destino para las migraciones de la organización.
Establece variables de entorno para personal access tokens (classic), y reemplaza TOKEN en los comandos siguientes por los valores personal access tokens (classic) que has registrado antes. Usa
GH_PAT
para la empresa de destino yGH_SOURCE_PAT
para la organización de origen.Si usas Terminal, utiliza el comando
export
.Shell export GH_PAT="TOKEN" export GH_SOURCE_PAT="TOKEN"
export GH_PAT="TOKEN" export GH_SOURCE_PAT="TOKEN"
Si usas PowerShell, utiliza el comando
$env
.Shell $env:GH_PAT="TOKEN" $env:GH_SOURCE_PAT="TOKEN"
$env:GH_PAT="TOKEN" $env:GH_SOURCE_PAT="TOKEN"
Si vas a migrar a Nube de Enterprise con residencia de datos, para mayor comodidad, establece una variable de entorno para la dirección URL de la API base para tu empresa.
Si usas Terminal, utiliza el comando
export
.Shell export TARGET_API_URL="https://api.octocorp.ghe.com"
export TARGET_API_URL="https://api.octocorp.ghe.com"
Si usas PowerShell, utiliza el comando
$env
.Shell $env:TARGET_API_URL="https://api.octocorp.ghe.com"
$env:TARGET_API_URL="https://api.octocorp.ghe.com"
Usarás esta variable con la opción
--target-api-url
en los comandos que ejecutes con la CLI.
Para migrar una organización, usa el comando gh gei migrate-org
.
gh gei migrate-org ---source-org SOURCE ---target-org DESTINATION ---target-enterprise ENTERPRISE
gh gei migrate-org ---source-org SOURCE ---target-org DESTINATION ---target-enterprise ENTERPRISE
Nota:
Si vas a migrar a GHE.com, agrega --target-api-url TARGET-API-URL
, donde TARGET-API-URL es la dirección URL de la API base para el subdominio de la empresa. Por ejemplo: https://api.octocorp.ghe.com
.
Reemplaza los marcadores de posición del comando anterior por los valores siguientes.
Marcador de posición | Value |
---|---|
SOURCE | Nombre de la organización de origen |
DESTINO | El nombre que quieres que tenga la nueva organización. No se puede compartir por otra organización en la plataforma de destino. |
EMPRESA | El slug de aplicación de la empresa de destino, que puedes identificar examinando la dirección URL de tu cuenta empresarial, https://.com/enterprises/SLUG o https://SLUG.ghe.com . |
Una vez finalizada la migración, se recomienda comprobar el repositorio de registros de migración. Para más información, consulta Acceso a los registros de migración para Enterprise Importer.
Por último, se recomienda realizar una comprobación de idoneidad de la organización y los repositorios migrados.