Integración fluida de Microsoft Fabric con GitHub y Azure DevOps
By Mirko Peters · · Updated
Cuando gestionas cargas de trabajo modernas de datos y análisis, garantizar un control de versiones y una gobernanza sólidos no es negociable. Como responsables técnicos, constantemente nos encontramos equilibrando la velocidad de los desarrolladores con el cumplimiento de nivel empresarial. Por eso, conectar tus áreas de trabajo de Microsoft Fabric con repositorios externos como GitHub y Azure De
Automatically translated with AI from the original post. Read the English original
Cuando gestionas cargas de trabajo modernas de datos y análisis, garantizar un control de versiones y una gobernanza sólidos no es negociable. Como responsables técnicos, constantemente nos encontramos equilibrando la velocidad de los desarrolladores con el cumplimiento de nivel empresarial. Por eso, conectar tus áreas de trabajo de Microsoft Fabric con repositorios externos como GitHub y Azure DevOps se ha convertido en un cambio de juego para la ingeniería analítica. En este artículo, veremos cómo establecer integraciones fluidas, evaluar quién es responsable de las implementaciones y aprovechar las fortalezas únicas de cada plataforma.
Para profundizar aún más en este tema y escuchar análisis de expertos sobre cómo interactúan estos ecosistemas, no dejes de escuchar el episodio de podcast relacionado: GitHub vs Azure DevOps for Microsoft Fabric CI/CD.
GitHub vs Azure DevOps: 5 datos sorprendentes
- Orígenes distintos, funciones que convergen: Aunque ambos se orientan a CI/CD y a la colaboración, GitHub nació como una plataforma de programación social, mientras que Azure DevOps evolucionó a partir de las herramientas ALM empresariales de Microsoft (Team Foundation Server), por lo que sus flujos de trabajo e integraciones empresariales difieren de forma significativa.
- Portabilidad de canalizaciones: Las canalizaciones de Azure DevOps pueden ejecutar compilaciones basadas en YAML en muchas plataformas e incluso reutilizar tareas de sus canalizaciones clásicas, mientras que GitHub Actions ofrece un marketplace público más amplio de acciones creadas por la comunidad. Es decir, la portabilidad depende a menudo de las acciones disponibles en el marketplace frente a las bibliotecas de tareas integradas de Azure.
- Filosofía de Boards frente a Issues: Azure DevOps incluye un sistema completo de elementos de trabajo (Boards) con plantillas de proceso personalizables e informes orientados a la planificación empresarial, mientras que GitHub Issues es más sencillo y social. Resulta sorprendente para los equipos que esperan el mismo seguimiento de proyectos en una comparación de "github vs azure devops".
- Cumplimiento empresarial y opciones locales: Azure DevOps Server ofrece un alojamiento local maduro y controles de cumplimiento que suelen exigir las organizaciones reguladas, mientras que GitHub ofrece GitHub Enterprise Server, pero históricamente se ha centrado más en flujos de trabajo cloud-first. Por ello, ambas opciones son elecciones distintas para equipos con altos requisitos de cumplimiento.
- Diferencias de precios y modelo de usuario: El modelo de precios y de colaboradores de GitHub se centra en repositorios y organizaciones, con planes gratuitos generosos para código abierto, mientras que Azure DevOps aplica licencias por usuario a determinadas funciones (Test Plans, Artifacts) y puede resultar más predecible en costes para grandes acuerdos de licencia empresariales. Es un factor inesperado al comparar "github vs azure devops".
Explicación de la propiedad de las implementaciones

Qué es la propiedad de las implementaciones
La propiedad de las implementaciones significa que tienes el control de cada paso del proceso de DevOps. Decides cómo pasa tu código del desarrollo a la entrega. Gestionas quién puede acceder a tus herramientas de DevOps y cómo registras los cambios. Estableces las reglas de la automatización y te aseguras de que tu equipo las cumpla.
Código y artefactos
Gestionas el código fuente y los artefactos en las plataformas de DevOps. Estos componentes forman la base de tu canal de entrega. Estas son las partes principales que componen la propiedad de las implementaciones en las herramientas de DevOps modernas:
- Seguimiento del código fuente
- Pruebas
- Implementación
- Gestión de la infraestructura
- Seguimiento de compilaciones
- Gestión de secretos
- Gestión de versiones
Utilizas las herramientas de DevOps para automatizar estos pasos. La automatización te ayuda a entregar actualizaciones más rápido y reduce los errores. Mantienes tu código a salvo y te aseguras de que los artefactos coincidan con las versiones probadas. Registras las compilaciones y las versiones para mantener la coherencia en todos los entornos.
Acceso y gobernanza
Controlas el acceso a las herramientas de DevOps y defines las directivas de gobernanza. Decides quién puede ver, editar o implementar código. Usas la automatización para aplicar las reglas y supervisar la actividad. La gobernanza garantiza que tu equipo siga los estándares durante el desarrollo y la entrega. Registras las acciones y revisas los cambios para proteger tu proceso de desarrollo de software.
Por qué importa la propiedad
La propiedad te da poder sobre tu entorno de DevOps. Proteges tu canal de entrega frente a riesgos y mantienes seguro tu desarrollo. Mantienes el cumplimiento de las normativas y das soporte al control operativo.
Utilizas herramientas de DevOps para crear un marco de gobernanza sólido. Ganas autonomía y permites que los equipos trabajen de forma independiente. Gestionas los riesgos y mantienes fiable tu proceso de entrega. La automatización respalda estos objetivos al hacer que el desarrollo y la entrega sean más eficientes.
Consejo: Cuando eres propietario de tu canalización de DevOps, puedes responder rápidamente a los cambios y mantener tu desarrollo de software en el buen camino.
Necesitas entender la propiedad de las implementaciones para tomar decisiones acertadas sobre las herramientas de DevOps. Mejoras la velocidad de entrega, proteges tu código y mantienes el control de tu proceso de desarrollo.
Modelo de propiedad de GitHub
Almacenamiento de código y artefactos
Utilizas GitHub como lugar central para el control de código fuente. Cuando envías tu código a github.com, mantienes un historial claro de cada cambio. Esto te ayuda a saber quién realizó las actualizaciones y cuándo. Puedes almacenar tu código en repositorios públicos o privados, según tus necesidades. Si utilizas GitHub Enterprise, obtienes funciones adicionales para grandes organizaciones, como herramientas avanzadas de seguridad y cumplimiento.
Para los artefactos de implementación, GitHub ofrece GitHub Packages. Este servicio te permite almacenar resultados de compilación, imágenes de contenedor y otros archivos junto con tu código. Puedes acceder a estos artefactos directamente desde tus flujos de trabajo. Sin embargo, GitHub Packages solo proporciona metadatos básicos, como la fecha de creación y el número de descargas. No puedes añadir propiedades personalizadas ni usar consultas avanzadas para la gestión de artefactos. Otras plataformas, como JFrog, ofrecen más opciones de metadatos y consultas.
Acceso y permisos
Controlas quién puede ver y modificar tu código en github.com. Asignas roles a usuarios y equipos, asegurándote de que cada persona tenga solo el acceso que necesita. Esto sigue el principio de mínimo privilegio. Puedes crear equipos dentro de tu organización y establecer permisos diferentes para cada uno. Por ejemplo, podrías dar a los desarrolladores acceso de escritura, pero limitar los derechos de administrador a miembros de confianza.
Puedes automatizar la gestión de accesos conectando GitHub con tu sistema de gestión de identidades y accesos (IAM). Así es fácil agregar o quitar usuarios a medida que cambia tu equipo. También deberías establecer directivas de control de acceso claras y revisarlas con frecuencia. GitHub te permite auditar los registros de acceso para detectar cualquier actividad inusual.
- Asigna roles y permisos a nivel de repositorio, organización o empresa.
- Usa propietarios de código para exigir revisiones en los cambios de código importantes.
- Limita el acceso de administrador y úsalo solo cuando sea necesario.
- Revisa periódicamente los registros de auditoría para detectar acciones no autorizadas.
Gobernanza y cumplimiento
Necesitas una gobernanza sólida para mantener tus implementaciones seguras y conformes con la normativa. GitHub te ofrece varias herramientas para gestionarla. Puedes reutilizar flujos de trabajo en distintos proyectos, lo que ahorra tiempo y garantiza la coherencia. GitHub Actions te permite automatizar las implementaciones y aplicar reglas en cada entorno.
Puedes usar atestaciones de artefactos para verificar que tus archivos de implementación no han sido modificados. GitHub admite OpenID Connect (OIDC) para implementaciones seguras en plataformas en la nube. Puedes controlar las implementaciones estableciendo reglas sobre quién puede implementar y cuándo. GitHub también te permite ver el historial de implementaciones, lo que facilita las auditorías y las comprobaciones de cumplimiento.
Nota: GitHub Actions se integra con Microsoft Fabric, de modo que puedes automatizar las implementaciones y gestionar las soluciones analíticas con los mismos controles de gobernanza.
Consideraciones de seguridad
Debes prestar mucha atención a la seguridad cuando utilices GitHub en canalizaciones de implementación. Las amenazas de seguridad pueden aparecer en muchos puntos de tu flujo de trabajo. Los atacantes pueden intentar inyectar malware en tu código fuente o en los artefactos de compilación. Los datos sensibles, como las claves de acceso y las contraseñas, pueden quedar expuestos si no sigues las buenas prácticas. El acceso no autorizado puede dar a los atacantes el control de tu canalización y de tu entorno de producción. Las dependencias desactualizadas pueden introducir vulnerabilidades que pongan en riesgo todo tu sistema.
Debes proteger tus repositorios de GitHub mediante controles de acceso sólidos. Deberías habilitar la autenticación en dos fases para todos los usuarios. Puedes usar la gestión de secretos para mantener seguras las credenciales y los tokens. Debes evitar almacenar información confidencial directamente en tu código. Conviene revisar los permisos con frecuencia y eliminar el acceso de los usuarios que ya no lo necesitan.
Consejo: Puedes mejorar tu postura de seguridad combinando las herramientas integradas de GitHub con soluciones externas. Puedes usar analizadores de terceros o integrarte con plataformas de seguridad en la nube para obtener una protección adicional.
Empieza con GitHub como repositorio: lista de comprobación (GitHub frente a Azure DevOps)
Una lista de comprobación práctica para empezar a usar GitHub como repositorio de código.
- Crea o inicia sesión en tu cuenta de GitHub
- Decide si usarás una cuenta personal o una cuenta de organización para la propiedad del equipo
- Crea un repositorio nuevo (público o privado) y selecciona la visibilidad adecuada
- Asigna un nombre claro al repositorio y añade un README.md descriptivo
- Añade un archivo LICENSE que se ajuste a las necesidades de tu proyecto
- Añade un .gitignore adaptado a tu lenguaje o framework
- Inicializa el repositorio con una rama predeterminada (main) y reglas de protección de ramas
- Configura CODEOWNERS y las guías de contribución (CONTRIBUTING.md)
- Configura plantillas de issues y una plantilla de pull request
- Configura etiquetas, hitos y tableros de proyecto para el seguimiento de issues
- Configura flujos de trabajo de GitHub Actions para CI/CD o integra tus canalizaciones existentes
- Añade secretos del repositorio para CI, despliegues y servicios de terceros
- Configura las reglas de protección de ramas: revisiones obligatorias, comprobaciones de estado y commits firmados obligatorios si los necesitas
- Activa Dependabot para las actualizaciones de dependencias y las alertas de seguridad
- Activa las funciones de seguridad: análisis de código, análisis de secretos y alertas de vulnerabilidades
- Configura webhooks o integraciones para CI, ChatOps o servicios externos
- Invita a colaboradores o miembros del equipo y configura los permisos del repositorio
- Migra los repositorios e issues existentes (si vienes de Azure DevOps, planifica la migración y asigna los elementos de trabajo)
- Documenta la estructura del repositorio, el flujo de desarrollo y el proceso de publicación en el wiki o en la carpeta docs
- Configura la supervisión y las alertas para publicaciones, despliegues y flujos de trabajo importantes
- Revisa y compara los flujos de trabajo con las alternativas (GitHub frente a Azure DevOps) para optimizar tus decisiones de CI/CD y de gestión de proyectos
- Audita periódicamente el acceso a los repositorios, los secretos y la configuración de seguridad
Modelo de propiedad en Azure DevOps
Repositorios y canalizaciones
Cuando usas Azure DevOps, obtienes una plataforma unificada para gestionar tu código, tus artefactos y tus procesos de despliegue. Los servicios de Azure DevOps reúnen repositorios de código, seguimiento del trabajo, herramientas de pruebas y almacenamiento de artefactos. Esta integración te ayuda a controlar cada etapa del ciclo de vida de la entrega de software. Puedes rastrear cada ejecución de canalización hasta confirmaciones, pull requests o elementos de trabajo concretos, lo que te da una visibilidad clara de tu proceso de desarrollo.
Las canalizaciones de Azure DevOps usan identidades para acceder a los recursos. Estas identidades pueden configurarse a nivel de colección o de proyecto. Las identidades de nivel de proyecto te ayudan a limitar el acceso solo a los recursos que cada proyecto necesita, lo que aumenta la seguridad. También puedes añadir protección a los recursos del repositorio mediante comprobaciones y permisos de canalización. Así puedes gestionar la propiedad y los derechos de edición de tu código y de tus flujos de trabajo de despliegue.
Azure DevOps admite CI/CD optimizado, para que puedas automatizar compilaciones, pruebas y despliegues. Con Azure Pipelines obtienes integración continua y entrega continua, lo que te permite publicar actualizaciones de forma rápida y fiable. Microsoft diseñó Azure DevOps para funcionar bien con la computación en la nube, lo que facilita escalar tus proyectos a medida que crecen tus necesidades.
Control de acceso
Controlas quién puede acceder a tus servicios de Azure DevOps mediante control de acceso basado en roles. Este modelo te permite asignar permisos según los roles, de modo que cada usuario solo tenga el acceso que necesita. Puedes organizar a los usuarios en grupos de seguridad y asignar permisos a nivel de organización, de proyecto o de objeto. Microsoft recomienda seguir el principio de mínimo privilegio, lo que significa que concedes a los usuarios solo los permisos necesarios para sus tareas.
- Asigna roles a usuarios y grupos para un control de acceso preciso.
- Usa grupos de seguridad para gestionar los permisos en distintos niveles.
- Revisa y audita los permisos periódicamente para detectar usos inesperados.
Gobernanza y directivas
Una gobernanza sólida es esencial para despliegues seguros y fiables. Azure DevOps aplica la gobernanza mediante directivas de rama, controles de acceso y roles personalizados. Las directivas de rama te permiten establecer comprobaciones y requisitos antes de que el código se pueda combinar, de modo que solo llegue a producción código de calidad. Puedes asignar entidades de seguridad a roles según el principio de mínimo privilegio, lo que reduce el riesgo de acceso no autorizado.
- Configura directivas de rama para exigir revisiones de código y comprobaciones antes de combinar cambios.
- Asigna roles personalizados a las entidades de servicio para evitar acciones destructivas en producción.
- Usa controles de acceso para limitar quién puede desplegar en entornos críticos.
Consejo: revisa periódicamente la configuración de gobernanza en Azure DevOps para mantener tus despliegues seguros y conformes.
Seguridad y cumplimiento
Necesitas controles sólidos de seguridad y cumplimiento normativo al gestionar tus implementaciones. Azure DevOps te ofrece una amplia gama de herramientas para proteger tu código, tus datos y tus flujos de trabajo. Puedes usar las funciones de seguridad integradas para mantener tu proceso de desarrollo seguro y alineado con los estándares del sector.
Azure DevOps utiliza el control de acceso basado en roles para limitar quién puede ver o modificar tus recursos. Asignas permisos a usuarios y grupos, de modo que solo accedan las personas adecuadas. También puedes usar conexiones de servicio para controlar cómo interactúan tus canalizaciones con otros servicios de Azure. Esto te ayuda a reducir el riesgo de acciones no autorizadas.
Consejo: revisa con frecuencia la configuración de seguridad en Azure DevOps. Actualiza tus directivas y permisos a medida que crece tu equipo o cambian tus proyectos.
Empieza con Azure DevOps como repositorio: lista de comprobación (GitHub frente a Azure DevOps)
- Crea una organización de Azure DevOps o inicia sesión en una existente
- Crea un proyecto nuevo (elige la visibilidad: privada o pública) y selecciona Git como sistema de control de versiones
- Crea tu primer repositorio o importa un repositorio existente (desde GitHub o en local)
- Añade un README.md descriptivo y un archivo de licencia
- Añade un .gitignore adaptado al lenguaje o framework de tu proyecto
- Define la estrategia de ramas y las convenciones de nomenclatura (main, develop, feature/*, hotfix/*)
- Protege la rama main: habilita las directivas de rama, los revisores obligatorios y las comprobaciones de estado
- Crea plantillas de solicitudes de incorporación de cambios (pull requests) y guías para colaboradores
- Configura los permisos y grupos del repositorio (Lectores, Colaboradores, Administradores de proyecto)
- Configura conexiones de servicio para las implementaciones (Azure, AWS, registros de Docker, proveedores externos de Git)
- Crea canalizaciones de CI (Azure Pipelines en YAML o clásicas) y valida las compilaciones en las solicitudes de incorporación de cambios
- Crea canalizaciones de CD o de versiones para los entornos (desarrollo, preproducción y producción) y puertas de aprobación
- Integra Azure Boards: crea elementos de trabajo y vincula confirmaciones y solicitudes de incorporación de cambios a ellos
- Configura webhooks o enlaces de servicio para integraciones externas (Slack, Teams, Jenkins)
- Configura la retención de ramas del repositorio y las directivas de retención de compilaciones
- Habilita la auditoría y configura los controles de cumplimiento y seguridad necesarios
- Configura el análisis de código, el análisis de seguridad y las comprobaciones de dependencias (GitHub puede ofrecer herramientas adicionales; compáralas según tus necesidades)
- Configura un feed de artefactos si necesitas alojar paquetes (NuGet, npm, Maven)
- Crea una wiki o un sitio de documentación y mantén la documentación en el repositorio cuando sea conveniente
- Planifica los pasos de migración si te trasladas desde GitHub: asigna repositorios, incidencias, solicitudes de incorporación de cambios, CI/CD y cuentas de servicio
- Invita a los miembros del equipo y verifica el acceso desde sus cuentas
- Ejecuta una prueba inicial de extremo a extremo: clona, confirma, sube los cambios, abre una solicitud de incorporación de cambios, ejecuta la canalización e implementa en el entorno de prueba
- Supervisa el uso y las canalizaciones, y ajusta de forma iterativa las directivas y la automatización
Integración con Microsoft Fabric
Integración con Git
Puedes conectar directamente tu área de trabajo de Microsoft Fabric a un repositorio de GitHub. Esta conexión te ofrece un control de versiones sólido para tus proyectos analíticos. Vinculas tu área de trabajo a la rama develop de GitHub. Así puedes seguir cada cambio y revertirlo si es necesario. Puedes usar las canalizaciones de implementación de Microsoft Fabric para pasar el contenido de desarrollo a pruebas y, después, a producción. Este proceso te ayuda a evitar problemas de sincronización entre entornos.
Cuando quieras publicar funciones estables, creas una rama de versión. Usas las canalizaciones de implementación para enviar estos cambios a producción. Si necesitas corregir problemas urgentes, creas una rama de hotfix. Luego combinas esta rama con la rama main para su implementación. Debes usar bases de datos independientes para cada entorno. Esta práctica protege tus datos de producción frente a cambios accidentales durante las pruebas o el desarrollo.
CI/CD con Azure DevOps y GitHub
Puedes configurar canalizaciones de CI/CD en Microsoft Fabric con Azure DevOps o GitHub Actions. Estas herramientas te ayudan a automatizar los pasos de compilación, prueba e implementación. Conviene dar nombres claros y descriptivos a tus canalizaciones de implementación. Así es fácil identificar el propósito de cada una. Puedes usar áreas de trabajo existentes o crear nuevas para las distintas etapas de la canalización, como desarrollo, pruebas y producción.
Conviene comparar el contenido entre etapas con frecuencia. Esta comprobación garantiza que todos los elementos se han implementado correctamente. Puedes publicar aplicaciones desde cualquier área de trabajo de la canalización. Este paso permite a los usuarios finales probar las funciones antes de la implementación definitiva. Conviene mantener ramas independientes para cada desarrollador o función. Así evitas conflictos de combinación. Una estrategia de ramas sólida, como Gitflow, te ayuda a gestionar el desarrollo, las versiones y los hotfixes.
Gobernanza de datos
Microsoft Fabric integra la gobernanza en cada etapa del ciclo de vida de los datos. Puedes gestionar la recopilación, el almacenamiento y el análisis de datos en un único entorno. Microsoft Purview cataloga tus datos y realiza el seguimiento de su linaje. OneLake proporciona almacenamiento centralizado, lo que facilita aplicar directivas de gobernanza. Microsoft Entra ID te ofrece control de acceso basado en roles, para que decidas quién puede ver o modificar los datos.
Aplicas las directivas de gobernanza a nivel de OneLake. Estas reglas acompañan a tus datos en todos los espacios de trabajo y conjuntos de datos. Este enfoque mantiene coherente y ágil el tratamiento de tus datos. No necesitas configurar reglas independientes para cada espacio de trabajo. El diseño de Microsoft Fabric te ayuda a mantener el control y a cumplir los requisitos de cumplimiento normativo a medida que crecen tus datos.
Seguridad y cumplimiento
Necesitas controles sólidos de seguridad y cumplimiento al gestionar datos e implementaciones en Microsoft Fabric. La plataforma te ofrece herramientas avanzadas para proteger tu información y cumplir los requisitos normativos. Puedes clasificar y proteger los datos sensibles en tus canalizaciones de Data Factory. Esto te ayuda a mantener la información importante a salvo de accesos no autorizados.
Microsoft Fabric funciona con Microsoft Defender for Cloud Apps. Esta integración te ofrece mayor visibilidad y control sobre tus operaciones. Puedes supervisar actividades y configurar alertas para comportamientos de riesgo. También puedes hacer un seguimiento del linaje de los datos. Esta función te permite ver cómo se mueven los datos por tu sistema. Puedes usar esta información para verificar el cumplimiento y comprender el flujo de datos sensibles.
Consejo: revisa con frecuencia tu configuración de seguridad y cumplimiento. Las comprobaciones periódicas te ayudan a anticiparte a nuevos riesgos y a mantener tus datos protegidos.
GitHub vs Azure DevOps vs Fabric: comparativa de propiedad
Ubicación del repositorio
Necesitas saber dónde está tu código. En el debate GitHub vs Azure DevOps, este es un punto clave. GitHub almacena tus repositorios en la nube. Puedes elegir entre opciones públicas y privadas. Muchos proyectos de código abierto usan GitHub porque es fácil de compartir y de colaborar. Azure DevOps también almacena el código en la nube, pero se centra en proyectos privados de nivel empresarial. Tienes un mayor control sobre quién puede ver y modificar tu código. Microsoft Fabric se conecta tanto a GitHub como a Azure DevOps para el control de versiones. Gestionas tus proyectos analíticos en Fabric, pero el código real reside en el repositorio vinculado.
Debes elegir la plataforma que se ajuste a tus necesidades. Si quieres colaboración abierta, GitHub funciona bien. Si necesitas un control estricto, Azure DevOps te ofrece más opciones. Microsoft Fabric te permite usar cualquiera de las dos, así que puedes adaptarlo a tu flujo de trabajo.
Gestión de artefactos
La gestión de artefactos es la forma en que tratas los resultados de compilación, los paquetes y los archivos que generan tus proyectos. En la comparación GitHub vs Azure DevOps, se aprecian diferencias importantes. GitHub usa GitHub Packages para almacenar artefactos. Ofrece funciones básicas, como almacenar y compartir paquetes. Azure DevOps ofrece Azure Artifacts, que proporciona controles avanzados. Puedes gestionar versiones, configurar fuentes y hacer un seguimiento del uso. Microsoft Fabric se centra en los artefactos analíticos, como los informes de Power BI y los modelos semánticos. Se vincula a tu repositorio para el control de versiones y utiliza canalizaciones de implementación para mover los artefactos entre entornos.
Consejo: aplica el principio de privilegios mínimos. Concede a los usuarios solo el acceso que necesitan. Esto reduce el riesgo y te ayuda a mantener la seguridad.
Gobernanza y cumplimiento
Necesitas una gobernanza y un cumplimiento sólidos para proteger tus implementaciones y cumplir los estándares del sector. Cada plataforma (GitHub, Azure DevOps y Microsoft Fabric) ofrece herramientas y enfoques diferentes para estas necesidades.
GitHub ofrece una gobernanza flexible. Puedes configurar reglas de protección de ramas, exigir revisiones de código y usar archivos CODEOWNERS. Estas funciones te ayudan a controlar quién puede realizar cambios en tu código. También puedes usar registros de auditoría para hacer un seguimiento de las acciones en tus repositorios.
Azure DevOps se centra en la gobernanza empresarial. Puedes configurar directivas de rama, puertas de aprobación y roles personalizados. Estos controles te ayudan a aplicar estándares en todos tus proyectos. Azure DevOps también permite usar el seguimiento de elementos de trabajo para vincular los cambios de código con los requisitos de negocio.
Microsoft Fabric aporta gobernanza a tus flujos de trabajo de análisis de datos. Usas Microsoft Purview para catalogar los datos y hacer un seguimiento del linaje. Defines directivas a nivel de OneLake, que se aplican en todos los espacios de trabajo. Este enfoque unificado facilita la gestión del cumplimiento a medida que crecen tus datos.
Consejo: Revisa tu configuración de gobernanza con frecuencia. Una gobernanza sólida te ayuda a cumplir la normativa y mantiene tus implementaciones seguras.
Postura de seguridad
Debes proteger tu código, tus datos y tus implementaciones frente a las amenazas. Cada plataforma ofrece distintas funciones y controles de seguridad.
GitHub te ayuda a proteger tus repositorios con autenticación de dos factores, administración de secretos y protección de ramas. Puedes usar GitHub Actions para automatizar análisis de seguridad y comprobaciones de vulnerabilidades.
Azure DevOps ofrece controles de seguridad avanzados. Usas el acceso basado en roles para limitar los permisos. Azure DevOps almacena los secretos de forma segura y los vincula a tus canalizaciones.
Microsoft Fabric se centra en la seguridad de los datos. Puedes usar Microsoft Defender for Cloud Apps para supervisar la actividad y configurar alertas ante comportamientos de riesgo. También puedes clasificar y proteger los datos confidenciales en tus canalizaciones.
Nota: Debes combinar las funciones de seguridad de cada plataforma con las mejores prácticas. Forma a tu equipo, revisa la configuración y actualiza las directivas a medida que cambien las amenazas.
Escenarios reales de DevOps
Código abierto con GitHub
Cuando trabajas en proyectos de código abierto, GitHub te ofrece una forma sencilla de gestionar la propiedad de las implementaciones. Puedes automatizar el proceso de implementación y mantener tu proyecto activo con cada cambio de código. Así funciona la propiedad en un flujo de trabajo típico de DevOps de código abierto con GitHub:
- Subes código a un repositorio público de GitHub.
- Cada envío a la rama principal desencadena una implementación automática.
- No necesitas solicitar ni esperar una aprobación para implementar.
- Mantienes el control de tu infraestructura en la nube usando tu propia cuenta de AWS o servicios similares.
- Tu proyecto permanece activo en una infraestructura de nivel de producción en todo momento.
Empresa con Azure DevOps
En un entorno empresarial, a menudo usas Azure DevOps para gestionar proyectos complejos. Necesitas equilibrar la velocidad, la seguridad y el cumplimiento normativo. La propiedad en este entorno puede volverse complicada. Debes definir funciones y responsabilidades claras para tu equipo. Azure DevOps te ayuda a lograrlo permitiéndote asignar permisos y usar el control de acceso basado en roles.
Análisis de datos con Fabric
Cuando gestionas proyectos de análisis de datos, Microsoft Fabric te ofrece una sólida propiedad sobre las implementaciones. Controlas quién puede implementar, editar o ver cada elemento de tu área de trabajo. Obtienes un control claro sobre tus activos analíticos. Cuando implementas un elemento nuevo, te conviertes en su propietario. Si lo implementas en una fase donde el elemento ya existe, la propiedad se mantiene igual.
Consejo: Usa las canalizaciones de implementación de Microsoft Fabric y los permisos de área de trabajo para mantener tus datos seguros y a tu equipo productivo.
Implementaciones híbridas
A menudo necesitas usar más de una plataforma para gestionar tus implementaciones. Esto es habitual en grandes organizaciones o cuando quieres combinar las fortalezas de distintas herramientas. Las implementaciones híbridas te permiten usar GitHub para el control de código fuente, Azure DevOps para las canalizaciones y Microsoft Fabric para el análisis. Puedes conectar estas plataformas para crear un flujo de trabajo que se adapte a tus necesidades.
Consejo: Revisa los accesos y la configuración de gobernanza en cada plataforma. Asegúrate de que solo las personas adecuadas puedan implementar o modificar tu código. Así tu flujo de trabajo se mantiene seguro.
Elegir la plataforma de DevOps adecuada
Preguntas clave sobre la propiedad
Debes hacerte las preguntas adecuadas antes de elegir una plataforma de DevOps. Estas preguntas te ayudan a entender cómo gestiona cada herramienta la propiedad, la gobernanza y la integración. Ten en cuenta estos puntos:
- ¿Quién controla el acceso a tu código y a tus artefactos?
- ¿Cómo aplica la plataforma la gobernanza y el cumplimiento normativo?
- ¿Puedes automatizar recordatorios para los metadatos que faltan en las implementaciones?
- ¿La plataforma admite la integración con tus herramientas actuales?
- ¿Cómo gestiona la plataforma la propiedad del servicio y los metadatos?
Consejo: Plantea estas preguntas desde el principio. Así evitarás confusiones y sentarás una base sólida para tu flujo de trabajo de DevOps.
Fortalezas de cada plataforma
Cada plataforma de DevOps ofrece fortalezas únicas. Debes hacer coincidir estas fortalezas con las necesidades de tu proyecto. Puedes usar GitHub Actions para una adopción rápida y una integración sencilla. Azure DevOps ofrece controles avanzados para flujos de trabajo complejos. Microsoft Fabric aporta análisis y gobernanza unificados. Puedes vincular tu área de trabajo a GitHub o Azure DevOps para el control de versiones y la implementación.
Nota: Debes elegir una plataforma que se adapte a tu flujo de trabajo y a tus necesidades de gobernanza. Cada plataforma admite fortalezas distintas en la propiedad de DevOps.
Entender cómo GitHub, Azure DevOps y Microsoft Fabric gestionan el código, los artefactos, el acceso y la gobernanza te da una propiedad clara sobre tus despliegues. Elige una plataforma que se ajuste a tus necesidades de seguridad y cumplimiento. Define directivas de administración de endpoints, establece una responsabilidad compartida entre los equipos e identifica los controles de seguridad esenciales. Revisa las funciones de la plataforma con frecuencia para anticiparte a los riesgos. Alinea la elección de plataforma con las directivas de IA responsable, incluyendo equidad, fiabilidad y responsabilidad. Este enfoque te ayuda a proteger tus datos y a mantener una gobernanza sólida.
Para seguir aprendiendo y explorar más información sobre este tema, escucha directamente el episodio relacionado: GitHub vs Azure DevOps for Microsoft Fabric CI/CD.
Preguntas frecuentes
¿Qué significa la propiedad de los despliegues en las plataformas DevOps?
La propiedad de los despliegues significa que controlas tu código, tus artefactos, el acceso y la gobernanza. Tú decides quién puede desplegar, haces seguimiento de los cambios y aplicas las reglas. La propiedad te ayuda a proteger tus proyectos y a mantener el cumplimiento.
¿Cómo gestionan el control de acceso GitHub, Azure DevOps y Microsoft Fabric?
Defines los roles y permisos en cada plataforma. GitHub utiliza equipos y propietarios de código. Azure DevOps utiliza grupos de seguridad y acceso basado en roles. Microsoft Fabric se apoya en Microsoft Entra ID para los permisos de las áreas de trabajo.
¿Puedes automatizar los despliegues en las tres plataformas?
Sí, puedes automatizar los despliegues con GitHub Actions, Azure Pipelines o las canalizaciones de implementación de Microsoft Fabric. La automatización te permite entregar actualizaciones más rápido y reduce los errores.
¿Cómo se integra Microsoft Fabric con GitHub y Azure DevOps?
Conectas tu área de trabajo de Fabric a un repositorio de GitHub o Azure DevOps. Esta integración te ofrece control de versiones, despliegues automatizados y gobernanza unificada de la analítica.
¿Qué funciones de seguridad protegen tus despliegues?
Utilizas autenticación de dos factores, gestión de secretos y análisis de seguridad automatizados. Azure DevOps añade puertas de aprobación y Defender for Cloud. Microsoft Fabric ofrece Prevención de pérdida de datos y herramientas de gestión de la privacidad.
¿Cómo gestionas el cumplimiento normativo en estas plataformas?
Configuras directivas de ramas, registros de auditoría y reglas de gobernanza. Azure DevOps y Microsoft Fabric admiten marcos de cumplimiento como RGPD e ISO. GitHub Enterprise ofrece herramientas avanzadas de cumplimiento para las organizaciones.
¿Quién es el propietario de los elementos de análisis desplegados en Microsoft Fabric?
Te conviertes en propietario cuando despliegas un elemento nuevo. Si despliegas en una fase que ya contiene un elemento existente, la propiedad no cambia. Los roles y permisos del área de trabajo te ayudan a gestionar el acceso.
¿Cuáles son las diferencias principales entre Azure DevOps y GitHub?
Azure DevOps (ado) es un conjunto de herramientas para desarrolladores que ofrece Azure Boards, Pipelines, Repos, Test Plans y gestión de artefactos, centrado en la gestión de proyectos empresariales y en CI/CD. GitHub, en cambio, es una plataforma orientada a git que gira en torno a los repositorios git, las solicitudes de extracción (pull requests) y la comunidad de desarrolladores, con funciones como GitHub Repos, GitHub Enterprise Cloud y GitHub Actions. Azure DevOps suele preferirse por su seguimiento integrado de elementos de trabajo y por su herencia de Visual Studio Team Services (TFS), mientras que GitHub ofrece un amplio ecosistema de código abierto y funciones de colaboración modernas.
¿Qué herramienta debo usar para el control de versiones: Azure Repos o GitHub Repos?
Ambas admiten repositorios git y control de versiones. Azure Repos se integra estrechamente con Azure Boards y Azure Pipelines, lo que resulta atractivo para equipos que trabajan con flujos de Microsoft Azure DevOps. GitHub Repos (alojado en GitHub) destaca en repositorios públicos y privados, en la gestión de proyectos de código abierto, en las contribuciones de la comunidad y en funciones como los flujos de solicitudes de extracción. Elige en función de si prefieres Azure Boards integrado o de la plataforma y comunidad más amplias de GitHub.
¿Puedo migrar repositorios de Azure Repos a GitHub?
Sí, puedes trasladar repositorios de Azure Repos a GitHub. Muchos equipos exportan los repositorios git de Azure Repos e los importan en GitHub o utilizan herramientas de migración. La migración suele implicar conservar el historial de confirmaciones, gestionar los usuarios gestionados por la empresa para GitHub Enterprise Cloud y actualizar las integraciones de CI/CD de Azure Pipelines a GitHub Actions, si se desea.
¿Cómo se comparan Azure Boards y las incidencias de GitHub para la gestión de proyectos ágiles?
Azure Boards ofrece una gestión de proyectos ágil completa, con elementos de trabajo, backlogs, sprints e integración profunda con pipelines y Test Plans, lo que lo convierte en una herramienta sólida de gestión de proyectos para empresas. Las incidencias de GitHub (y los tableros de proyecto) son más sencillas y se adaptan mejor a los flujos de trabajo de código abierto y de comunidades de desarrolladores. Aun así, GitHub ha ampliado sus funciones de planificación de proyectos, y algunos equipos aprovechan lo mejor de ambos mundos conectando los repositorios de GitHub con Azure Boards.
¿Está GitHub Copilot disponible para los usuarios de Azure DevOps?
GitHub Copilot se integra principalmente con herramientas para desarrolladores como Visual Studio Code y Visual Studio, así que quienes usan Azure DevOps también pueden usar Copilot en sus IDE. El lanzamiento de GitHub Copilot y las funciones posteriores de copilot workspace hacen que sea accesible para los desarrolladores independientemente del CI/CD que utilicen en el backend. No obstante, algunos controles empresariales y las licencias dependen de si usas GitHub Enterprise Cloud o prefieres entornos gestionados con Azure DevOps.
¿Qué plataforma es mejor para usuarios gestionados por la empresa y para la seguridad: GitHub o Azure DevOps?
Ambas plataformas ofrecen capacidades empresariales. Microsoft Azure DevOps proporciona control de acceso detallado, integración con Azure AD y funciones avanzadas de cumplimiento, mientras que GitHub Enterprise Cloud incluye enterprise managed users y GitHub Advanced Security para Azure, que aporta análisis de código, detección de secretos y gestión de dependencias. La elección depende de las necesidades de la organización: Azure DevOps puede integrarse mejor con las herramientas de Microsoft que ya se usan, mientras que GitHub ofrece más fortalezas en código abierto y funciones de comunidad, además de opciones de seguridad avanzadas.
¿Cómo se comparan los pipelines de CI/CD de Azure Pipelines y GitHub Actions?
Azure Pipelines (parte de azure boards and pipelines) ofrece un CI/CD multiplataforma robusto, con una integración sólida con Azure DevOps y Visual Studio. GitHub Actions está estrechamente integrado con la plataforma de GitHub y proporciona flujos de trabajo flexibles que se activan con eventos del repositorio, además de una automatización de pull requests muy fluida. Ambos admiten contenedores, despliegues en la nube y runners autohospedados. Elige la herramienta de DevOps que mejor se adapte a tu flujo de trabajo, o aprovecha lo mejor de ambos mundos conectándolas.
¿Puedo usar Visual Studio y VS Code con las dos plataformas?
Sí, tanto Visual Studio como Visual Studio Code (VS Code) son compatibles con GitHub y Azure DevOps. Visual Studio cuenta con integraciones nativas para Azure Repos y ADO, mientras que VS Code funciona muy bien con los repositorios de GitHub, GitHub Copilot y los repositorios git en general. Los desarrolladores pueden usar estas herramientas en ambas plataformas para editar código, ejecutar pruebas e interactuar con pull requests o elementos de trabajo.
¿Y las pruebas? ¿Existe Azure Test Plans en GitHub?
Azure Test Plans es una solución de pruebas integrada en Azure DevOps que ofrece herramientas para pruebas manuales y exploratorias. GitHub no ofrece un producto de planes de prueba integrado idéntico, pero puedes integrar frameworks de pruebas, acciones y herramientas de gestión de pruebas de terceros con los repositorios de GitHub para lograr capacidades similares de automatización de pruebas e informes.
¿En qué se diferencian los precios y el alojamiento: alojado en GitHub frente a Microsoft Azure DevOps?
GitHub ofrece servicios alojados (GitHub.com, GitHub Enterprise Cloud) con planes por niveles para equipos y empresas, centrados en repositorios públicos y privados y en el acceso de la comunidad. Microsoft Azure DevOps Services también ofrece opciones de nube alojada con precios por usuario, además de variantes locales (antes TFS/Visual Studio Team Services). Al decidir el coste se tienen en cuenta los minutos de pipeline, el almacenamiento de artefactos, los enterprise managed users y si necesitas alojamiento local.
¿Pueden los equipos usar GitHub y Azure DevOps juntos?
Sí. Muchas organizaciones combinan GitHub para el alojamiento de código y la colaboración comunitaria con Azure DevOps para la gestión de proyectos, los pipelines o los planes de prueba. Este enfoque aprovecha lo mejor de ambos mundos: las fortalezas de la plataforma GitHub en repositorios y comunidad, y funciones de Azure DevOps como Azure Boards. Los integradores y conectores facilitan la sincronización de repositorios de Azure Repos a GitHub, o vincular los eventos de repositorios de GitHub con los tableros de ADO.
¿Qué herramienta prefieren los desarrolladores de la comunidad: GitHub o Azure DevOps?
Los contribuyentes de código abierto y muchos desarrolladores independientes prefieren GitHub porque fomenta la comunidad, ofrece repositorios públicos y privados y flujos de revisión integrados, mientras que los desarrolladores empresariales y los equipos que necesitan una gestión de proyectos completa suelen preferir Azure DevOps. Las preferencias también dependen de la inversión existente en Visual Studio y Microsoft Azure, y de si se priorizan funciones como GitHub Copilot o GitHub Advanced Security para Azure.
¿Qué aspectos debe tener en cuenta un equipo al decidir entre GitHub y Azure DevOps?
Considera tus necesidades de control de versiones, la integración con Visual Studio o VS Code, la necesidad de gestión ágil de proyectos (Azure Boards), los requisitos de seguridad y cumplimiento, la necesidad de Azure Test Plans, la visibilidad en la comunidad y el código abierto, y si quieres funciones como GitHub Copilot o el análisis de seguridad avanzado. Evalúa qué herramienta de DevOps se ajusta a tu flujo de trabajo, o adopta un modelo híbrido que aproveche los repositorios de Azure Repos o use repositorios de GitHub con Azure Boards y pipelines.