Las plataformas de bajo código, como Power Platform de Microsoft, están reescribiendo las reglas de la innovación, permitiendo a los desarrolladores ciudadanos crear aplicaciones a un ritmo más rápido. Pero con la velocidad llega el reto de gestionar la calidad del código, las actualizaciones sin fisuras y los despliegues eficientes. Ahí es donde entra en juego CI/CD. Ha revolucionado la entrega de software tradicional y ahora está desbloqueando nuevos niveles de fiabilidad, escalabilidad y velocidad para los creadores de código reducido. ¿Listo para ver cómo CI/CD transforma la Plataforma Power? Sumerjámonos y descubramos el futuro del desarrollo optimizado.
Thomas Goldberger y Gurpreet Bhadesh exploran CI/CD en el desarrollo de la Plataforma Power
en nuestro programa de entrevistas en vídeo "Hablemos de DevOps".
¿Qué es CI/CD?
CI/CD son las siglas de Integración Continua (CI) y Entrega/Despliegue Continuo (CD). CI/CD automatiza la integración, las pruebas, la creación de versiones, la construcción, el despliegue y el control de calidad en el desarrollo de software. Garantiza flujos de trabajo más fluidos, una resolución de problemas más rápida y aplicaciones de mayor calidad. Además, elimina la necesidad de intervención manual, por lo que los comentarios de los usuarios pueden incorporarse con mayor frecuencia y a un ritmo mucho más rápido, garantizando la satisfacción de los usuarios finales y los clientes. Aunque tradicionalmente se dirigía a los desarrolladores, CI/CD está adquiriendo cada vez más importancia en el espacio de bajo código, dado el aumento de la adopción de plataformas de bajo código.
¿Cómo funciona CI/CD?
CI en CI/CD se refiere a la integración continua, un proceso mediante el cual los desarrolladores pueden fusionar cambios de código en un repositorio compartido con mayor frecuencia. Cada vez que se realizan estas actualizaciones, se activan pasos de prueba automatizados para garantizar que el código confirmado es fiable.
Cuando se lleva a cabo con éxito, la CI permite fusionar los cambios realizados por los desarrolladores en una aplicación, validarlos automáticamente mediante la compilación de la aplicación y ejecutar pruebas automatizadas de distinto nivel para garantizar que los cambios no han roto la aplicación. Las pruebas típicas incluyen pruebas unitarias, pruebas de integración y el beneficio de esto se puede realizar a través del descubrimiento de conflictos entre códigos nuevos y existentes, lo que permite que las correcciones de errores se entreguen a un ritmo rápido. Además, se utiliza el análisis estático de código con herramientas como SonarQube para inspeccionar la calidad del código y detectar errores. Es importante asegurarse de que estas pruebas de bajo nivel no superen un tiempo de ejecución de 5 minutos, para que haya un rápido bucle de retroalimentación.
El CD en CI/CD se refiere a la entrega continua y / o despliegue continuo. Ambos términos se utilizan indistintamente, pero a veces se emplean por separado para ilustrar el grado de automatización. CI es un requisito previo para la entrega/despliegue continuos, ya que despliega todos los cambios de código en un entorno de pruebas y garantiza que los pasos posteriores puedan utilizar artefactos estables y de calidad garantizada.
La entrega continua puede interpretarse como una extensión de la integración continua, ya que despliega todos los cambios de código en un entorno de pruebas o de preproducción después de la fase de creación.
El despliegue continuo se basa en la entrega continua, ya que libera automáticamente todas las etapas del proceso de producción (siempre que hayan superado todas las etapas del proceso de producción) a los clientes. En última instancia, la elección entre entrega continua y despliegue continuo depende de la tolerancia al riesgo y de las necesidades de los equipos de desarrollo y operaciones.
La etapa final de un proceso CI/CD maduro es el despliegue continuo. Esto se refiere a la liberación automática de los cambios de un desarrollador desde el repositorio a la producción, por lo que los clientes pueden utilizarlo. Esto garantiza un circuito de retroalimentación más rápido y, combinado, hace que el proceso de despliegue sea menos arriesgado.
Figura 1 - ¿Qué es CI/CD?
¿Por qué es importante CI/CD?
Aunque en un principio pueda parecer que CI/CD añade complejidad a los desarrolladores ciudadanos, proporciona un marco de desarrollo escalable y automatizado que da cabida a nuevas funciones y a rápidas correcciones de errores. Con el tiempo, este proceso permite a los desarrolladores trabajar con más confianza y eficacia, con un riesgo reducido gracias a la retroalimentación y las pruebas continuas. Además, las partes interesadas de la C-Suite obtienen beneficios de alto nivel, como una comercialización más rápida, la habilitación para la innovación y la mitigación de riesgos.
Así, mientras los desarrolladores cosechan los beneficios a través de la mejora de los flujos de trabajo, la calidad y la colaboración, las partes interesadas de la C-suite obtienen ventajas estratégicas como una innovación más rápida, ahorro de costes y alineación con los objetivos empresariales. Ambos grupos se benefician de Power Platform CI/CD, pero de formas distintas y adaptadas a sus funciones y prioridades.
¿Cuáles son las opciones de CI/CD disponibles en Power Platform?
Mientras que CI/CD puede ser común en la mayoría de las opciones de entrega de software, es poco frecuente en plataformas de bajo código como la Plataforma Power. Teniendo en cuenta los beneficios que proporciona CI/CD, creemos que la Plataforma Power también debería aprovecharlos. Hay dos opciones de CI/CD que exploraremos dentro de esta serie de blogpost, que son las siguientes:
- Pipelines en Power Platform
- Herramientas de construcción de Microsoft Power Platform para Azure DevOps
Comencemos discutiendo los pipelines en Power Platform.
Pipelines en Power Platform
Aunque Power Platform siempre ha tenido una mentalidad de "compilación en producción", con el tiempo ha sido testigo de la introducción de soluciones y, más recientemente, de canalizaciones. Los pipelines en Power Platform tienen como objetivo permitir la gestión del ciclo de vida de las aplicaciones (ALM) proporcionando automatización ALM y capacidades CI/CD en el servicio de una manera que es mucho más accesible para los creadores, administradores y desarrolladores.
Requisitos previos para el enfoque de canalizaciones en Power Platform
- Uno o más pipelines deben ser creados y asociados con el entorno que se utilizó para el desarrollo
- El entorno de desarrollo debe disponer de Microsoft Dataverse
- El desarrollador debe tener acceso para ejecutar un pipeline
- Se requieren privilegios elevados para importar soluciones al entorno de destino
- La aplicación de pipelines de Power Platform debe estar instalada en su entorno host de pipelines.
¿Cómo funcionan los pipelines en el enfoque Power Platform?
Bueno, es muy sencillo y fácil de usar, pero eso también significa que su funcionalidad es limitada. El enfoque de pipelines en Power Platform sólo trasladará la solución no gestionada a otro entorno como solución gestionada. Por lo tanto, si desea realizar más mejoras o cambios esto no será posible con una solución gestionada. Guardará la solución como un archivo ZIP para el control de versiones y eso es todo. Esto significa que si quieres añadir automatización de pruebas, ramificaciones complejas o la aprobación del administrador antes de enviarlo a otro entorno, no será posible.
-Feb-04-2025-09-56-52-8608-AM.png?width=2248&height=1246&name=image%20(4)-Feb-04-2025-09-56-52-8608-AM.png)
Pipelines en Power Platform
Como se puede ver en la imagen de arriba, la actualización se realiza con el clic de un botón y el mantenimiento es mínimo.
Limitaciones del enfoque de los pipelines en Power Platform
Aunque a primera vista los pipelines de Power Platform parecen sencillos y fáciles de usar, es evidente que su funcionalidad es limitada. La primera limitación es que la funcionalidad sólo se aplica a entornos gestionados. Por lo tanto, los paquetes de soluciones no gestionadas deben cambiarse a soluciones gestionadas antes de utilizar las canalizaciones. En segundo lugar, no existe la posibilidad de restaurar el entorno a la versión previamente instalada. En tercer lugar, la canalización de versiones no puede conectarse al control de versiones, de ahí la necesidad de que los paquetes de soluciones sean soluciones gestionadas para que no se realicen más cambios. Por último, no existe la posibilidad de añadir flujos de trabajo propios al proceso de liberación (por ejemplo, recibos de aprobación de los probadores y, a continuación, liberación automática a producción).
Conclusión
En resumen, los pipelines de la Plataforma de Energía proporcionan un punto de entrada vital para llevar las capacidades de CI/CD a entornos de bajo código, permitiendo a los Desarrolladores Ciudadanos gestionar los despliegues con facilidad y eficiencia. Al reducir la necesidad de importar y exportar soluciones manualmente, estas canalizaciones facilitan la introducción de cambios en la producción, lo que resulta especialmente valioso para los equipos pequeños y medianos. Este enfoque accesible permite a los usuarios no técnicos participar en la gestión del ciclo de vida de las aplicaciones, facilitando ciclos de retroalimentación más rápidos y un despliegue de funciones más ágil. Sin embargo, para necesidades organizativas más complejas, las limitaciones de las canalizaciones de Power Platform -como la falta de integración con el control de versiones, las opciones de reversión y los flujos de trabajo de aprobación- pueden obligar a las organizaciones a buscar herramientas adicionales o configuraciones avanzadas.
A medida que crece la adopción de código reducido y las aplicaciones se vuelven cada vez más integrales para las operaciones empresariales, es probable que aumente la demanda de soluciones CI/CD más sólidas dentro de la plataforma Power. Las futuras mejoras de los pipelines de Power Platform y la incorporación de herramientas como ALM Accelerator señalan el compromiso de Microsoft de dar soporte a procesos ALM más sofisticados en la plataforma. Estos avances prometen abordar las carencias actuales y permitir una gama más amplia de escenarios de desarrollo, garantizando que tanto los Citizen Developers como los equipos empresariales puedan crear, desplegar y mantener aplicaciones con mayor fiabilidad y escalabilidad.
Haga clic aquí para leer la siguiente parte de este blogpost donde exploramos las herramientas de construcción de Microsoft Power Platform para Azure DevOps y cómo esto podría resolver las deficiencias de los pipelines de Power Platform.
Descubre a nuestros expertos en DevOps, Thomas y Gurpreet, en directo en las Jornadas Internacionales de Calidad del Software en Múnich el 22 de mayo de 2025 para profundizar en CI/CD para el desarrollo de bajo/ningún código.
Devops, Azure, Innovar, Código bajo, Aqt