Microsoft Power Platform CLI ¿Qué es, cómo la consigo y cómo la uso?

A lo largo de esta entrada vamos a poder responder a las preguntas:

  • ¿Qué es PAC CLI?
  • ¿Cómo consigo PAC CLI?
  • ¿Cómo la uso?

De esta manera estaremos en posición de entender y saber usar esta potente herramienta.

¿Qué es PAC CLI?

PAC CLI es la herramienta que nos brinda Microsoft para gestionar el desarrollo dentro de Power Platform a través de una línea de comandos. Nos permite gestionar la autenticación, ciclo de vida del entorno y trabajar con los componentes de Dataverse como Soluciones o componentes de código personalizado.

En nuestro día a día como desarrolladores siempre estamos buscando la forma de hacer más fáciles las cosas, o buscar formas para realizar nuestro trabajo de una manera óptima. Con esta herramienta que nos brinda Microsoft podemos conseguirlo. Al tratarse de una línea de comandos, podemos construir Scripts que nos faciliten el día a día o incluso podemos utilizarla en alguna canalización de nuestra entrega continua (CI/CD). En resumen, permite tener un entorno de desarrollo más desacoplado de los portales de gestión y más en la línea de otras tecnologías.

¿Cómo consigo PAC CLI?

Para poder utilizar PAC CLI, Microsoft nos aporta dos caminos distintos. Por un lado, tenemos la instalación vía extensión de Visual Studio Code (Sólo nos permite ejecutar PAC CLI dentro del propio Visual Studio Code) o podemos instalar la línea de comandos como tal en nuestro equipo.

Extensión Visual Studio Code

Esta extensión funciona en Windows 10, Windows 11, Linux, and MacOS.

Dentro de Visual Studio Code nos dirigimos a la sección de Extensiones (Ctrl+Shift+X). Dentro de esta sección buscamos lo siguiente: “Power Platform Tools”. Seleccionamos la extensión y hacemos clic en instalar. 

Power Platform Extension en Visual Studio Code

Una vez que la extensión ya está instalada, tendremos que reiniciar Visual Studio Code.

Finalmente, ya tendremos a nuestra disposición en la ventana de terminal nuestro PAC CLI.
 

PAC CLI en Visual Studio Code

Importante: PAC CLI sólo funcionará dentro de Visual Studio Code.

Instalar PAC CLI en nuestro equipo

La instalación en nuestro equipo independiente sólo está disponible para Windows 10 y Windows 11.

Para descargar esta línea de comandos accederemos al siguiente enlace proporcionado por Microsoft.

Descarga Microsoft Power Platform CLI

Este enlace nos descargará un instalador tipo msi que nos guiará durante la instalación. Una vez instalado e incorporado a la variable de entorno PATH podremos usar la línea de comandos desde CMD o PowerShell.

PowerShell

Ahora ya estamos listos para poder empezar a utilizar nuestra herramienta para un flujo de trabajo de desarrollo.

¿Cómo uso PAC CLI?

En esta sección vamos a reproducir un flujo de trabajo básico de desarrollo con Power Platform.

Podemos encontrar más comandos y más detalle en la documentación oficial de Microsoft sobre:

Power Platform CLI

Este es el flujo que vamos a seguir:

Flujo de Desarrollo PAC CLI

Para poder utilizar esta línea de comandos, es necesario indicar un entorno de Dataverse con el que vayamos a interactuar. Para ello podemos usar el siguiente comando:

pac auth create -n {{nombre-perfil}} -u {{url-dynamics}}
 

Autenticación PAC CLI

Con estos parámetros nos saldrá una pantalla de login que nos pedirá el usuario, credenciales y doble factor para terminar de configurar el perfil.

Una vez realizado esto podemos confirmar que se ha creado el perfil utilizando el comando:

pac auth list

Solución Empaquetado PAC CLI

Como podemos ver, se marca con un * la conexión que hay activa en ese momento. Ahora que tenemos una conexión con nuestro entorno podemos continuar con nuestro flujo de trabajo.

Exportar una solución

Lo siguiente que necesitamos es exportar una solución de nuestro entorno que contenga lo que queremos cambiar, actualizar, modificar, etc.

Para este ejemplo hemos preparado una solución llamada IfGeekSLN que contiene un recurso web llamado webresource.js.

Para descargar la solución, ejecutaremos el comando:

pac solution export -p {{directorio-local}} -n {{nombre-solución-exportar}}

Exportar Solución PAC CLI

Una vez terminado el comando, podemos comprobar como en el directorio `{{directorio-local}}` se encuentra el zip de nuestra solución.

Desempaquetando una solución

Ahora ya tenemos la solución en el directorio elegido por nosotros, pero es un .zip, vamos a desempaquetarla usando PAC CLI para que tengamos una estructura con la que poder trabajar.

Para realizar esta acción vamos a utilizar el comando como sigue:

pac solution unpack -z {{ruta-fichero-zip}} - f {{directorio-local-desempaquetado}}

Desempaquetar PAC CLI

Con estos comandos tendremos una versión extraída de la solución que encontraremos en `{{directorio--local-desempaquetado}}`. Ahora podemos abrir este directorio con un editor de texto para ver el contenido y modificarlo.

Control de versión de solución

Una vez hayamos terminado de modificar el contenido de la solución, es una buena práctica indicar en un cambio de versión la magnitud de los cambios efectuados. En este caso vamos a indicar un cambio de build y de revisión.

pac solution version -bv {{valor-build}} 

pac solution version -rv {{valor-revision}}

Solución Empaquetado PAC CLI

Ahora nuestra solución tendrá como versión 2.45 y está lista para ser empaquetada de nuevo.

Empaquetando una solución

Ahora que nuestra solución está modificada y que hemos aumentado la versión de esta, estamos preparados para empaquetar la solución y dejarla lista para desplegarla en cualquier momento. Para realizar esta acción vamos a ejecutar el siguiente comando:

pac solution pack -z {{ruta-fichero-zip}} -f {{directorio-local- desempaquetado}}

PAC CLI Empaquetar una Solución

Con este comando se cogerán los datos que se encuentran en `{{directorio-local-desempaquetado}}`  y se creará un fichero de solución en `{{ruta-fichero-zip}}`.

Este fichero estará listo para ser importado de nuevo en nuestro entorno.

Importar una solución

Ya estamos a punto de culminar nuestro flujo de desarrollo con la importación de nuestros cambios en el entorno. Para realizar esta tarea usaremos el siguiente comando.

pac solution import -p {{directorio-local-empaquetado}}

Este comando tiene varios modificadores:

  • -f: Fuerza la sobre escritura de personalizaciones no administradas.
  • -ap: Activa complementos y flujos de trabajo.
  • -pc: Publica los cambios cuando la importación ha ido bien.
  • -cm: Convierte la solución en administrada 

Bonus

Una característica interesante es la capacidad para hacer un check de la solución y detectar posibles malas prácticas o recibir consejos por parte de Microsoft en las personalizaciones de nuestra solución.

Para ello podemos usar el comando:

Pac solution check -p {{directorio-local-empaquetado}}

Esto nos devuelve un fichero .zip con el resultado de nuestro análisis. Solo tenemos que desempaquetarlo y abrir el fichero .sarif que hay dentro (podemos encontrar la definición del schema aquí). Los errores están en formato JSON.

Solution Check PAC CLI

Este fichero se puede visualizar de forma dinámica desde Visual Studio Code con la extensión Sarif Viewer

Solution Check PAC CLI

En la parte de la derecha vemos como se ha interpretado el JSON de manera que podemos ver los avisos agrupados y segmentados por ficheros.

¡Y hasta aquí el tostón de hoy! Espero que os haya servido de ayuda y que os haya hecho aprender algo nuevo.

He leído y acepto la política de privacidad
Acepto recibir emails sobre actividades de recruiting NTT DATA