El despliegue automático de soluciones entre entornos para Microsoft Dataverse implica la capacidad de transferir e implementar soluciones de manera automatizada de un entorno a otro. Un entorno, en este contexto, puede ser un espacio aislado de desarrollo, prueba o producción en el ecosistema de Microsoft Dataverse.
Esta funcionalidad permite a los profesionales de TI y desarrolladores simplificar el proceso de implementación de soluciones en diferentes fases del cliclo de vida del desarrollo. En lugar de realizar manualmente cada paso del despliegue, la automatización garantiza una coherencia eficiente y reduce la posibilidad de errores. Esto es crucial para mantener la consistencia y la calidad de las soluciones a medida que se trasladan entre diferentes entornos, facilitando así la gestión y evolución de las aplicaciones en el entorno Microsoft Dataverse.
Prerrequisitos
La solución completa requiere
realizar acciones en dos sistemas o plataformas diferentes:
- Azure: debemos tener creado previo a la implementación y ejecución del
pipeline un usuario de aplicación con permisos sobre Dataverse.
- DevOps:
Pipelines: se requieren permisos para crear y ejecutar pipelines. Con una
licencia de tipo Dev Essentials (Siempre y cuando no haya 5 usuarios con esa
licencia ya en el entorno de DevOps, en cuyo caso se requerirá una licencia MPN
o la profesional) o cualquiera superior.
También se requerirán permisos
de administración sobre el proyecto donde implementaremos nuestro pipeline o
que un usuario con los permisos necesarios para crear
el service connection que
utilizaremos.
Creación
de Service Connection
Iremos paso a paso para crear los service
connections requeridos para el despliegue de una solución.
Paso 1: Ir a Project Settings
Paso 2: Ir a la opción Service connections del apartado
Pipelines
Paso 3: En la parte superior a la derecha veremos un botón llamado “New service connection“

Paso 4: de la lista de opciones que nos aparece, seleccionamos “Power Platform“, y le damos a next.

Nos aparecerá un formulario solicitándonos los siguientes datos:
– Server URL: Aquí pondremos la
URL del Dataverse.
– Tenant Id: Aquí
pondremos el Identificador único del entorno de Dataverse. Este se puede obtener del portal de administración,
en los detalles del entorno.
– Application Id: Aquí pegaremos el Identificador de nuestro registro de aplicación con permisos sobre dataverse.
Lo podemos localizar en el apartado “Essentials”.
– Client Secret of Application Id: secreto del
usuario de la aplicación.
– Service connection
name: Nombramos la Conexión.
Antes de finalizar debemos asegurarnos de marcar el check del final para que nos permita utilizar
esta conexión desde el pipeline
Creación
del Pipeline de Exportación/Importación de soluciones
Para crear un pipeline tenemos 2 formas, programáticamente o mediante un configurador visual. En
este artículo lo realizaremos de forma programatica,
mediante el lenguaje YAML.
La construcción de nuestro
YAML utilizará 3 partes:
Variables: aquí definiremos las variables que
utilizaremos en nuestra implementación.
Name: el nombre que llevara cada ejecución
de pipeline
Job: La definición de procesamiento y pasos.
Variables: utilizaremos 3
variables.
Solution_Name: Nombre de la solución que se
importara del entorno origen
PowerPlatform_Environment_Export: Nombre de Service Connection del entorno donde exportaremos la solución.
PowerPlatform_Environment_Import: Nombre de Service Connection del entorno donde importaremos la solución.
Name:
Se puede colocar el nombre
que queramos, recomiendo utilizar como mínimo las
variables de date y rev, para que se puedan
diferenciar visualmente las diferentes ejecuciones del día.
Jobs:
Se divide en tres partes: Job, Pool y Steps.
Nos centraremos en los steps
que utilizaremos.
las tareas que utilizaremos seran
las siguientes:
– PowerPlatformToolInstaller: instalación de las herramientas de Power
Platform que utilizaremos en los siguientes Steps.
– PowerPlatformExportSolution:
paso que utilizaremos para exportarnos la solución de
nuestro Dataverse origen.
– PowerPlatformImportSolution: paso que utilizaremos para importarnos la solución de nuestro Dataverse destino.
– PowerPlatformPublishCustomizations: este
paso lo utilizaremos para publicar
todo.









