Tutorial: Automatizar la implementación de soluciones con acciones de GitHub para Microsoft Power Platform
En este tutorial, aprenderá a:
- Crear un nuevo repositorio en GitHub
- Crear dos flujos de trabajo de GitHub con acciones de GitHub para Microsoft Power Platform
Los flujos de trabajo pueden exportar su aplicación (como una solución no administrada) desde un entorno de desarrollo, generar un artefacto de compilación (solución administrada) e implementar la aplicación en su entorno de producción, todo ello automáticamente. Este tutorial utiliza la solución ALMLab que creó y los entornos que configuró en tutoriales anteriores.
Tutoriales relacionados: Empezar y Crear una aplicación basada en modelos.
Crear una cuenta de GitHub
Vaya a https://github.com y haga clic en Registrarse o Iniciar una prueba gratuita (o inicie sesión si ya tiene una cuenta).
Una vez que haya creado su cuenta, cree un repositorio seleccionando Crear repositorio o Nuevo.
Es posible que vea la siguiente pantalla de inicio alternativa:
Cree su nuevo repositorio y asígnele el nombre "poweractionslab". Asegúrese de seleccionar Agregar un archivo README para iniciar el repositorio y elegir Crear repositorio.
Crear un nuevo secreto para la autenticación de director de servicio
Vaya a su repositorio y haga clic en Configuración, luego expanda Secretos y luego haga clic en Acciones.
En la página Secretos, asigne el nombre ‘PowerPlatformSPN’ al secreto. Use el secreto de cliente del registro de la aplicación creado en Microsoft Entra y entre en el campo Valor y luego seleccione Agregar secreto. Se hará referencia al secreto del cliente en los archivos YML utilizados para definir los flujos de trabajo de GitHub más adelante en este laboratorio.
El secreto del cliente ahora se almacena de forma segura como un secreto de GitHub.
Crear un flujo de trabajo para exportar y descomprimir el archivo de la solución en una nueva rama
haga clic en Acciones y haga clic en Configurar un flujo de trabajo usted mismo o haga clic en Configurar en el cuadro Flujo de trabajo simple en la sección sugerido para este repositorio.
Esto iniciará un nuevo archivo YAML con un flujo de trabajo básico para ayudarle a comenzar con las acciones de GitHub.
Elimine el contenido creado previamente, pegue el contenido de archivo export-and-branch-solution-with-spn-auth.yml y luego cambie el nombre del archivo a export-and-branch-solution’.yml.
Actualice
<ENVIRONMENTURL>
con la URL del entorno de desarrollo desde el que desea exportar (por ejemplo:https://poweractionsdev.crm.dynamics.com
).Actualice
<APPID>
y<TENANT ID>
con sus valores.Si está utilizando credenciales, pegue el archivo export-and-branch-solution.yml en lugar del contenido del archivo export-and-branch-solution-with-spn-auth.yml. Actualizar
<USERNAME>
con el nombre de usuario que está utilizando para conectarse al entorno.
Propina
Si no está familiarizado con Acciones de GitHub y desea obtener más información, consulte la documentación oficial en https://docs.github.com/en/actions.
Ya está listo para confirmar los cambios. Seleccione Empezar a confirmar, escriba Crear exportación yml en el campo de título y, luego, agregue una descripción (opcional). A continuación, haga clic en Confirmar archivo nuevo.
Enhorabuena, acaba de crear su primer flujo de trabajo de GitHub con las siguientes acciones:
- ¿Quién soy yo?: garantiza que pueda exportar correctamente Conectar al ambiente desde el que está exportando.
- Exportar solución: exporta el archivo de solución desde su desarrollo ambiente.
- Descomprimir la solución: El archivo de solución que se exporta desde el servidor es un archivo comprimido (zip) con archivos de configuración consolidados. Estos archivos iniciales no son adecuados para la administración de código fuente, ya que no están estructurados para que sea factible que los sistemas de administración de código fuente realicen una diferenciación adecuada en los archivos y capturen los cambios que desea confirmar en el control de la fuente. Debe "descomprimir" los archivos de la solución para que sean adecuados para el almacenamiento y procesamiento de control de origen.
- Solución de rama: crea una nueva rama para almacenar la solución exportada.
Probar la exportación y descomprimir el flujo de trabajo
A continuación, pruebe que se ejecuta el flujo de trabajo. Navegue a Acciones, Ejecute el flujo de trabajo, y elija Ejecutar flujo de trabajo. Si tiene un nombre de solución diferente a 'ALMLab' entonces cambie el valor aquí pero deje los otros valores como están.
Después de 5 a 10 segundos, se iniciará el flujo de trabajo y podrá seleccionar el flujo de trabajo en ejecución para supervisar el progreso.
Una vez que se haya completado el flujo de trabajo, valide que se haya creado una nueva rama con la solución descomprimida en la carpeta solutions/ALMLab. Vaya a la pestaña Código y expanda el menú desplegable ramas .
Seleccione la rama que creó la acción.
Valide que la carpeta solutions/ALMLab se haya creado en la nueva rama y luego cree una solicitud de extracción para fusionar los cambios en la rama principal. Haga clic en Contribuir y en el menú desplegable haga clic en Abrir solicitud de extracción.
En la pantalla Abrir una solicitud de extracción, agregue un título y una descripción, según lo desee, luego hacer clic en Crear solicitud de extracción.
La pantalla se actualizará mostrando la solicitud de extracción recién creada. A medida que se crea la solicitud de extracción, se proporcionará una confirmación que muestra que nuestra rama no tiene ningún conflicto con la rama principal. Esta confirmación significa que los cambios se pueden combinar en la rama principal automáticamente. Haga clic en Fusionar solicitud de extracción y luego haga clic en Confirmar fusión. Opcionalmente, haga clic en Eliminar rama para limpiar la rama ahora desaparecida.
Vuelva a la rama predeterminada (principal) y valide que la solución ahora también esté disponible allí.
Crear un flujo de trabajo reutilizable para generar un artefacto de compilación e importarlo a producción
En esta sección, crearemos un flujo de trabajo adicional que:
- Crea un solución administrada y lo publica como un artefacto de GitHub
- Importa el artefacto de creación en entorno de producción
Navegue a Acciones y seleccione Nuevo flujo de trabajo.
Elija configurar un flujo de trabajo usted mismo.
Cambie el nombre del flujo de trabajo a 'release-solution-to-prod-with-inputs' y copie el contenido del archivo release-solution-to-prod-with-inputs.yml y péguelo en la pantalla Editar nuevo archivo.
Confirme los cambios. Elija Comenzar a confirmar y luego agregue un título y una descripción (opcional). A continuación, seleccione Confirmar archivo nuevo.
Llamar al flujo de trabajo reutilizable en el evento de lanzamiento
En esta sección, llamaremos al flujo de trabajo reutilizable en el evento de lanzamiento.
Navegue a Acciones y seleccione Nuevo flujo de trabajo.
Elija Configurar un flujo de trabajo usted mismo.
Cambie el nombre del flujo de trabajo a 'release-action-call' y copie el contenido del archivo release-action-call.yml y péguelo en la pantalla Editar nuevo archivo.
Actualice las siguientes variables en el nuevo archivo de flujo de trabajo:
- Actualizar
<BUILD_ENVIRONMENT>
con la URL del entorno de creación que está utilizando para generar la solución administrada. Por ejemplo:https://poweractionsbuild.crm.dynamics.com
. - Actualizar
<PROD_ENVIRONMENT>
con la URL del entorno de producción en el que está realizando la implementación. Por ejemplo: https://poweractionsprod.crm.dynamics.com. - Actualice
<APP_ID>
con el ID de la aplicación (cliente) que se puede encontrar en la Hoja de registros de aplicaciones del Portal de Microsoft Azure haciendo clic en el registro creado previamente en este tutorial. - Actualice
<TENANT_ID>
con el ID del directorio (inquilino) que se puede encontrar en la Hoja de registros de aplicaciones del Portal de Microsoft Azure haciendo clic en el registro creado previamente en este tutorial.
- Actualizar
Confirme los cambios. Elija Comenzar a confirmar y luego agregue un título (opcional) y una descripción (opcional). A continuación, seleccione Confirmar archivo nuevo.
Probar el flujo de trabajo de lanzamiento a producción
Ahora está listo para probar el último flujo de trabajo. Este flujo de trabajo se activa cuando se implementa un nuevo lanzamiento en producción.
Vaya a Lanzamientos.
Seleccione Seleccionar un nuevo lanzamiento.
Agregue una etiqueta de lanzamiento, un título y elija Publicar lanzamiento.
Seleccione Acciones para ver el flujo de trabajo en ejecución.
Elija el flujo de trabajo en ejecución para ver las acciones a medida que se ejecutan.
Esperar a que se complete cada acción.
Una vez que se haya completado el flujo de trabajo, inicie sesión en su entorno de producción y valide que la solución se haya implementado como solución administrada.
Implementar la actualización y revisar los cambios antes del lanzamiento de producción
Ahora probaremos el proceso completo y luego veremos cómo podemos ver y validar los cambios en una aplicación antes de implementarla en producción.
Navegue a la solución ALMLab en su entorno de desarrollo y elija Editar o haga clic en el nombre para mostrar de las soluciones.
Seleccione y vea la tabla Solicitud de indisponibilidad.
Haga clic en + Agregar columna y cree la nueva columna como se muestra en la siguiente figura.
Valores de campo actualizados:**
- nombre: Aprobado
- Tipo de datos: Sí/No
Haga clic en Listo.
Haga clic en Guardar tabla
Vuelve a la pestaña Acciones pestaña de los repositorios de GitHub, elija Ejecutar flujo de trabajo y seleccione el botón Ejecutar flujo de trabajo.
Después de 5 a 10 segundos, se iniciará el flujo de trabajo y podrá hacer clic en el flujo de trabajo en ejecución para supervisar su progreso.
Una vez que se completa el flujo de trabajo, navegue a la nueva rama seleccionando Código y, después, Ramas.
Seleccione la rama que fue creada por la expansión contribuir y haga clic en Abrir solicitud de extracción.
Agregue un título (opcional) y luego haga clic en Crear solicitud de extracción.
Después de que se actualice el contenido, haga clic en la pestaña Archivos cambiados.
Observe que los cambios en la solución están resaltados en verde para indicar que esta sección del archivo se agregó al compararla con el mismo archivo en la rama principal.
Vuelva a la pestaña Conversación. Seleccione Solicitudes de extracción y luego seleccione la solicitud de extracción creada anteriormente.
En la página Solicitud de extracción, seleccione Fusión mediante combinación con "squash" para combinar el archivo de la solución actualizado en su rama principal, elimine opcionalmente el que se está combinando ahora con el principal.
Siga los pasos de la sección Probar el flujo de trabajo de lanzamiento a producción para crear una nueva versión y validar que la solución actualizada se haya implementado en su entorno de producción.
Enhorabuena, ha configurado correctamente un flujo de trabajo de CI/CD de muestra utilizando acciones de GitHub.