Implementar paquetes mediante Package Deployer y Windows PowerShell

Microsoft Dynamics CRM Package Deployer permite a los administradores implementar paquetes en un entorno.

Nota

Package Deployer también funciona con organizaciones de Dynamics 365 Customer Engagement (on-premises).

Un "paquete" puede estar compuesto por cualquiera de estos elementos o por todos ellos:

  • Uno o varios archivos de solución de Dataverse.

  • Archivos sin formato o archivos de datos exportados desde la herramienta Configuration Migration. Para obtener más información acerca de la herramienta Configuration Migration, consulte Administrar los datos de configuración.

  • El código personalizado que puede ejecutarse durante o después del paquete se implementa en un entorno.

  • Contenido HTML específico del paquete que mostrarse al principio y al final del proceso de implementación del paquete. Puede resultar útil para proporcionar una descripción de las soluciones y los archivos que se implementan en el paquete.

    Los programadores crean los paquetes utilizando la plantilla de implementación de paquete en Visual Studio. Más información: Crear paquetes para Package Deployer

    Una vez creado el paquete, puede implementarlo ejecutando CRM Package Deployer o con los cmdlets de Windows PowerShell para la herramienta.

Importante

Antes de importar y ejecutar un paquete en una organización de producción, pruebe el paquete en una imagen reflejada de la organización de producción.

Realice siempre una copia de seguridad de la organización de producción antes de implementar un paquete.


Implementar paquetes mediante la herramienta Package Deployer

Puede usar la herramienta Package Deployer (packagedeployer.exe) para implementar paquetes de las siguientes formas.

Uso de CRM Package Deployer para implementar paquetes

Use CRM Package Deployer en la línea de comandos

Uso de Package Deployer para implementar paquetes

La herramienta Package Deployer solo puede procesar un paquete cada vez. Sin embargo, proporciona a los usuarios la capacidad de seleccionar un paquete para implementar desde varios paquetes disponibles en el directorio de la herramienta Package Deployer. Algunas de las pantallas y acciones de la herramienta difieren en función de la definición del paquete. No es necesario que instale la herramienta Package Deployer. Sólo descárguela y ejecútela.

  1. Obtenga el paquete que se va a implementar. Un paquete es una colección de archivos y carpetas que se crea en la carpeta del proyecto de Visual Studio (<Project>\Bin\Debug) al generar el paquete del proyecto en Visual Studio. Copie lo siguiente de la carpeta de depuración del proyecto:

    • <Carpeta PackageName>: Esta carpeta contiene las soluciones, la configuración de importación, y el contenido para el paquete.

    • <PackageName>.dll: El ensamblado contiene el código para el paquete. De forma predeterminada, el nombre del ensamblado es el mismo que el nombre del proyecto de Visual Studio.

      Para obtener información detallada sobre la creación de un paquete utilizando Visual Studio, vea Crear un paquete para la herramienta Package Deployer.

      Para este tema, supondremos que la carpeta y el ensamblado del paquete de la carpeta de depuración del proyecto de Visual Studio (<Project>\Bin\Debug) se copian en la carpeta c:\DeployPackage.

  2. Obtener la herramienta Package Deployer. La herramienta Package Deployer está disponible en forma de paquete NuGet. Para usar Package Deployer, debe descargarlo y extraerlo en su equipo local mediante nuget.exe.

    Descargue nuget.exe de https://www.nuget.org/downloads y guárdelo en su equipo; por ejemplo, en d:\. A continuación, ejecute el siguiente comando en el símbolo del sistema para extraer el contenido del paquete en una carpeta (por ejemplo, PD) del equipo:
    d:\nuget install Microsoft.CrmSdk.XrmTooling.PackageDeployment.Wpf -Version [VERSION] -O d:\PD

    Cuando haya extraído los archivos de la herramienta Package Deployer, vaya a la carpeta [ExtractedLocation]\tools para buscar el archivo PackageDeployer.exe.

  3. Copie la carpeta y el ensamblado del paquete del c:\DeployPackage en la carpeta [ExtractedLocation]\tools.

  4. Después de copiar los archivos, ejecute la herramienta haciendo doble clic en el archivo PackageDeployer.exe en la carpeta [ExtractedLocation]\tools.

  5. Haga clic en Continuar en la pantalla principal de la herramienta.

  6. En la pantalla Conectarse a Microsoft Dynamics 365 for Customer Engagement, proporcione los detalles de autenticación para conectarse a su Dynamics 365 server donde desea implementar el paquete. Si tiene varias organizaciones, y desea seleccionar la organización donde desea implementar el paquete, active la casilla Mostrar siempre la lista de organizaciones disponibles. Haga clic en Iniciar sesión.

  7. Si tiene varias organizaciones en Dynamics 365 server, seleccione una organización de aplicaciones Dynamics 365 con la que desea conectarse.

  8. Seleccione el paquete que desea implementar y haga clic en Siguiente.

    Seleccione el paquete en la herramienta Package Deployer.

  9. Siga las instrucciones de las pantallas posteriores para completar la implementación del paquete.

    Las pantallas aparecen según la definición del paquete que seleccionó para implementación. Para una implementación de extremo a extremo del paquete que use la herramienta Package Deployer, vea el tema acerca de la implementación de los paquetes de Unified Service Desk: Implementar las aplicaciones de Unified Service Desk de ejemplo al Servidor de CRM con Package Deployer

Usar la herramienta Package Deployer en la línea de comandos

Los administradores y personalizadores del sistema pueden pasar parámetros, como un código de idioma regional a packagedeployer.exe desde la línea de comandos. Estos parámetros pueden configurarse únicamente ejecutando la herramienta Package Deployer en la línea de comandos.

Nota

Esta característica se introdujo primero en Dynamics CRM Online 2016 Update 0.1.

En esta tabla se indican los parámetros disponibles.

Parámetro Description Valor predeterminado
RuntimePackageSettings Indica a packagedeployer.exe que acepte parámetros de línea de comandos como LCID y SkipChecks. No disponible
LCID=localeID Especifica el Id. de configuración regional, como 1033 es para Inglés-Estados Unidos o 1036 para Francés-Francia, desde los Id. de configuración regional disponibles en el paquete. Si no se especifica, el idioma predeterminado se usará. Use el idioma predeterminado
SkipChecks=true/false Use este parámetro solo cuando el entorno de destino no contiene no otras soluciones o personalizaciones. Cuando se establece como true, la importación de la solución omitirá algunas pruebas de seguridad, lo que puede mejorar el rendimiento de la importación. False

El siguiente ejemplo indica a CRM Package Deployer que omita algunas pruebas de seguridad y configure el idioma para importar como polaco.

packagedeployer.exe /Settings:"SkipChecks=true|lcid=1045"

Nota

Use el carácter de barra vertical | para separar los parámetros al ejecutar packagedeployer.exe en la línea de comandos con varios parámetros.

Para obtener más información acerca de los parámetros y los valores que se pueden pasar a packagedeployer.exe, vea Crear paquetes para CRM Package Deployer.

Utilice Windows PowerShell para implementar paquetes

La herramienta Package Deployer también proporciona soporte de Windows PowerShell para implementar paquetes. Más información: Comenzar a utilizar el módulo de implementación de paquetes

Solucione problemas de implementación de paquetes utilizando archivos de registro

La herramienta Package Deployer proporciona soporte de registro para obtener información detallada sobre los errores que se puedan producir cuando un usuario inicia sesión en la instancia de Microsoft Dynamics 365 for Customer Engagement utilizando la herramienta e implementando paquetes. Por defecto, la herramienta genera tres archivos de registro que estén disponibles en la siguiente ubicación en el equipo donde se ejecuta la herramienta: c:\Users\<UserName>\AppData\Roaming\Microsoft\Microsoft Dynamics CRM Package Deployer\<version>. Para especificar otra carpeta, use el parámetro cmdlet de PowerShell -LogWriteDirectory. Más información: Use el cmdlet para recuperar paquetes

  • Login_ErrorLog.log: Proporciona información sobre los problemas que se han producido cuando se usa la herramienta para iniciar sesión en la instancia de Dynamics 365. Si hay un problema al iniciar sesión, aparecerá un mensaje en la pantalla de inicio de sesión de la herramienta con un vínculo a este archivo de registro. El mensaje indica que se ha producido un error al procesar la solicitud de inicio de sesión y el usuario puede ver el registro de error. Puede hacer clic en el vínculo del mensaje para ver este archivo de registro. El archivo de registro se crea la primera vez que se encuentran problemas de inicio de sesión en la herramienta. Después de eso, el archivo de registro se usa para registrar información sobre un problema de inicio de sesión, siempre que aparece.

  • PackageDeployer.log: Proporciona información detallada sobre cada tarea realizada en la herramienta durante la implementación de paquetes. Puede ver el archivo de registro desde la herramienta haciendo clic en el vínculo Ver registro en la parte inferior de la pantalla.

  • ComplexImportDetail.log: Proporciona información detallada sobre los datos importados en la última implementación utilizando la herramienta. Cada vez que implementa un paquete utilizando esta herramienta, los detalles existentes del archivo de registro pasan a un archivo denominado ComplexImportDetail._old.log en el mismo directorio, y el archivo ComplexImportDetail.log muestra información sobre la última importación realizada utilizando la herramienta.

Recomendaciones para implementar paquetes

Mientras implementa paquetes, los administradores de Dynamics 365 deben:

  • Insistir en un ensamblado de paquete firmado de modo que pueda realizar el seguimiento de un ensamblado hasta su origen.

  • Comprobar el paquete en una instancia de preproducción (preferiblemente una imagen reflejada de la instancia de producción) antes de ejecutarlo en un servidor de producción.

  • Realizar una copia de seguridad de la instancia de producción antes de implementar un paquete.

Vea también

Crear paquetes para el CRM Package Deployer