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

  1. Vaya a https://github.com y haga clic en Registrarse o Iniciar una prueba gratuita (o inicie sesión si ya tiene una cuenta).

    Crear cuenta

  2. Una vez que haya creado su cuenta, cree un repositorio seleccionando Crear repositorio o Nuevo.

    Crear un repositorio

    Es posible que vea la siguiente pantalla de inicio alternativa:

    Crear un nuevo repositorio

  3. 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.

    Iniciar repositorio.

Crear un nuevo secreto para la autenticación de director de servicio

  1. Navegue hasta su repositorio y haga clic en Configuración, luego expanda Secretos y luego haga clic en Acciones.

  2. 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.

    Crear el secreto de entidad de servicio

    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

  1. 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.

    Configurar flujo de trabajo.

  2. Esto iniciará un nuevo archivo YAML con un flujo de trabajo básico para ayudarle a comenzar con las acciones de GitHub.

    Archivo YML de ejemplo

  3. 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.

    Cambiar el nombre y reemplazar el contenido.

  4. Actualice <ENVIRONMENTURL> con la URL del entorno de desarrollo desde el que desea exportar (por ejemplo: https://poweractionsdev.crm.dynamics.com).

  5. 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.

      Cambiar el nombre y reemplazar el contenido

    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.

  6. 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.

    Empezar a confirmar.

Enhorabuena, acaba de crear su primer flujo de trabajo de GitHub con las siguientes acciones:

  • Quién soy: garantiza que puede conectarse correctamente al entorno desde del que está exportando.
  • Exportar solución: exporta el archivo de la solución desde su entorno de desarrollo.
  • Desempaquetar la solución: el archivo de la 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.
  • Crear rama para: crea una nueva rama para almacenar la solución exportada.

Probar la exportación y descomprimir el flujo de trabajo

  1. 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.

    Ejecutar flujo de trabajo.

  2. 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.

    Hacer clic para ver el flujo de trabajo.

    Seleccionar y ver flujo de trabajo.

  3. 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. Navegue a la pestaña Código y amplíe la lista desplegable sucursales.

  4. Seleccione la rama que creó la acción.

  5. 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 control flotante haga clic en Abrir solicitud de extracción.

  6. 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.

  7. 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 Combinar solicitud de extracción y luego haga clic en Confirmar combinación. Opcionalmente, haga clic en Eliminar rama para limpiar la rama ahora desaparecida.

    Ver ramas

  8. 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
  1. Navegue a Acciones y seleccione Nuevo flujo de trabajo.

    Crear un flujo de trabajo nuevo.

  2. Elija configurar un flujo de trabajo usted mismo.

    Configurar un flujo de trabajo.

  3. 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.

    Cambiar el nombre y pegar el código.

  4. 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.

    Confirmar cambios.

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.

  1. Navegue a Acciones y seleccione Nuevo flujo de trabajo.

    Crear un flujo de trabajo nuevo.

  2. Elija Configurar un flujo de trabajo usted mismo.

    Configurar un flujo de trabajo.

  3. 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.

    Cambiar el nombre y pegar el código.

  4. Actualice las siguientes variables en el nuevo archivo de flujo de trabajo:

  5. 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.

    Confirmar cambios.

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.

  1. Vaya a Lanzamientos.

    Ir a lanzamientos.

  2. Seleccione Seleccionar un nuevo lanzamiento.

  3. Agregue una etiqueta de lanzamiento, un título y elija Publicar lanzamiento.

  4. Seleccione Acciones para ver el flujo de trabajo en ejecución.

    Seleccionar para ver flujo de trabajo.

  5. Elija el flujo de trabajo en ejecución para ver las acciones a medida que se ejecutan.

    Ver flujo de trabajo.

  6. Esperar a que se complete cada acción.

    Ver ramas.

  7. 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.

  1. 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.

    Editar solución.

  2. Seleccione y vea la tabla Solicitud de indisponibilidad.

    Ver la tabla.

  3. Haga clic en + Agregar columna y cree la nueva columna como se muestra en la siguiente figura.

    Agregue una columna.

    Valores de campos actualizados::**

    • Nombre para mostrar: aprobado
    • Tipo de datos: Sí/No
  4. Haga clic en Listo.

  5. Haga clic en Guardar tablaAgregue una columna.

  6. 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.

    Ejecutar el flujo de trabajo.

  7. 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.

    Seleccionar flujo de trabajo.

    Ver el flujo de trabajo.

  8. Una vez que se completa el flujo de trabajo, navegue a la nueva rama seleccionando Código y, después, Ramas.

    Ir a la rama.

  9. Seleccione la rama que fue creada por la expansión contribuir y haga clic en Abrir solicitud de extracción.

  10. Agregue un título (opcional) y luego haga clic en Crear solicitud de extracción.

  11. Después de que se actualice el contenido, haga clic en la pestaña Archivos cambiados.

  12. 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.

  13. Vuelva a la pestaña Conversación. Seleccione Solicitudes de extracción y luego seleccione la solicitud de extracción creada anteriormente.

  14. 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.

    Abra la solicitud de extracción para la nueva rama, vea los cambios y combine con la rama predeterminada

  15. 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.

Consulte también

Automatizar su flujo de trabajo desde la idea hasta la producción