Determina cuánto tienes que migrar
Define tu cronograma, que en gran medida determinará tu enfoque. El primer paso para determinar la escala de tiempo consiste en obtener un inventario de lo que necesitas migrar.
- Número de repositorios
- Número de solicitudes de incorporación de cambios
Nota:
El tiempo de migración se basa principalmente en el número de solicitudes de incorporación de cambios en un repositorio. Si quiere migrar 1000 repositorios y cada repositorio tiene 100 solicitudes de incorporación de cambios en promedio, es probable que la migración sea muy rápida. Si solo quiere migrar 100 repositorios, pero cada uno tiene 75 000 solicitudes de incorporación de cambios en promedio, la migración tardará mucho más y requerirá más planeación y pruebas.
Se recomienda el inventory-report comando en ADO2GH extension of the GitHub CLI. Este comando se conectará con la API de Azure DevOps y, a continuación, creará varios archivos CSV.
repos.csv contiene información sobre tus repositorios, incluyendo el número de pull requests.
Para generar los archivos CSV, use el siguiente comando, reemplazando YOUR_ADO_ORG por su organización en Azure DevOps.
gh ado2gh inventory-report --ado-org YOUR_ADO_ORG
gh ado2gh inventory-report --ado-org YOUR_ADO_ORG
Después de realizar el inventario de los repositorios que necesita migrar, compara los datos del inventario contra tu cronograma deseado.
- Si la organización puede soportar un mayor grado de cambio, es posible que puedas migrar todos los repositorios a la vez, y completar los esfuerzos de migración en unos días.
- Si tiene equipos que no pueden migrar al mismo tiempo, es posible que quiera procesar por lotes y escalonar las migraciones para que se ajusten a las escalas de tiempo de los equipos, lo que amplía el esfuerzo de migración.
Determinar la estructura organizativa de GitHub
A continuación, planifica la estructura organizativa que crearás en GitHub. ADO y GitHub tienen diferentes formas de organizar el trabajo de una empresa.
- ADO: Organización > proyectos de equipo > repositorios
- GitHub: Enterprise > organización > repositorios
Después de realizar la migración a GitHub, solo debes tener una cuenta empresarial y un número reducido de organizaciones propiedad de esa empresa. Cada organización de ADO debería corresponderse a una sola organización en GitHub.
Nota:
El concepto de proyecto de equipo, que se usa para agrupar repositorios en ADO, no existe en GitHub. No se recomienda crear una organización en GitHub para cada proyecto de equipo en ADO, ya que esto puede dar lugar a una gran lista de repositorios sin agrupar dentro de cada organización. Pero puedes administrar el acceso a grupos de repositorios mediante la creación de equipos.
Si desea dividir el esfuerzo de migración en lotes, la nueva estructura puede ayudarle a determinarlos. Si tienes más de una organización en ADO y los repositorios de cada organización tienen un tamaño razonable, considera la posibilidad de procesar por lotes por organización.
- Decide cuál será la nueva organización estructural.
- Decida si necesitas dividir el esfuerzo de migración en lotes más pequeños.
- Si es así, decide cómo quieres dividir las migraciones.
Configuración de permisos de repositorio
Como los permisos funcionan de forma diferente en GitHub que en ADO, GitHub Enterprise Importer no intenta migrar permisos de repositorio desde ADO.
Al usar la CLI de ADO2GH, GitHub Enterprise Importer creará dos equipos en GitHub para cada proyecto de equipo de ADO. A cada equipo se le concede un nivel de acceso diferente a todos los repositorios que se han originado en el proyecto de equipo.
| Equipo | Acceso a los repositorios migrados |
|---|---|
| TEAM-PROJECT-Mantenedores | Responsable de mantenimiento |
| TEAM-PROJECT-Admins | Admin |
Para conceder acceso a los repositorios migrados, puedes agregar personas a estos equipos. Puedes hacerlo manualmente en GitHub, o si decides vincular los equipos a grupos de Azure Active Directory (AAD) durante la migración, mediante la administración de la pertenencia a grupos en AAD. Para más información sobre cómo administrar manualmente la pertenencia a equipos, consulta Agregar miembros de la organización a un equipo.
Pasos siguientes
En la siguiente fase, realizará una ejecución en seco y, a continuación, migrará los repositorios. Consulta Fase 5. Migración de repositorios de Azure DevOps a GitHub.