Condividi tramite


Distribuzione di pacchetti tramite CRM Package Deployer e Windows PowerShell

 

Data di pubblicazione: novembre 2016

Si applica a: Dynamics CRM 2015

Package Deployer per Microsoft Dynamics CRM consente agli amministratori di distribuire pacchetti in un'istanza di Microsoft Dynamics CRM (locale) o di Microsoft Dynamics CRM Online. Un "pacchetto" può essere dato da uno o tutti i seguenti elementi:

  • Uno o più file di soluzione di Dynamics 365.

  • File flat o file di dati esportati dallo Strumento di migrazione configurazione. Per informazioni sullo Strumento di migrazione configurazione, vedere Gestione dei dati di configurazione.

  • Codice personalizzato che può essere eseguito durante o dopo la distribuzione del pacchetto in Microsoft Dynamics 365.

  • Contenuto HTML specifico del pacchetto che può essere visualizzato all'inizio e alla fine del processo di distribuzione del pacchetto. Può essere utile per fornire una descrizione delle soluzioni e dei file distribuiti nel pacchetto.

Gli sviluppatori possono creare pacchetti utilizzando il modello di distribuzione del pacchetto in Microsoft Visual Studio.Ulteriori informazioni:MSDN: Creare pacchetti per Package Deployer per CRM

Dopo essere stato creato, un pacchetto può essere distribuito eseguendo Package Deployer CRM o utilizzando i cmdlet Windows PowerShell dello strumento.

In questo argomento

Utilizzare lo strumento di distribuzione del pacchetto CRM per distribuire pacchetti

Utilizzare Windows PowerShell per distribuire i pacchetti

Risolvere i problemi di distribuzione del pacchetto utilizzando file di registro

Procedure consigliate per la distribuzione di pacchetti

Utilizzare lo strumento di distribuzione del pacchetto CRM per distribuire pacchetti

Lo Strumento Package Deployer può elaborare un solo pacchetto alla volta. Offre tuttavia agli utenti la possibilità di selezionare un pacchetto da distribuire tra più pacchetti disponibili nella directory Strumento Package Deployer. Alcune delle schermate e delle azioni dello strumento variano in base alla definizione del pacchetto. Non è necessario installare lo Strumento Package Deployer. È sufficiente scaricarlo ed eseguirlo.

  1. Ottenere il pacchetto da distribuire. Un pacchetto è una raccolta di file e cartelle che viene creato nella cartella del progetto di Visual Studio (<Project>\Bin\Debug) quando si compila il progetto del pacchetto in Visual Studio. Copiare la procedura seguente dalla cartella di debug di progetto:

    • cartella <PackageName>: Questa cartella include le soluzioni, la configurazione di importazione e i contenuti per il pacchetto.

    • <PackageName>.dll: L'assembly include il codice del pacchetto. Per impostazione predefinita, il nome dell'assembly è uguale al nome del progetto Visual Studio.

    Per informazioni dettagliate sulla creazione di un pacchetto utilizzando Visual Studio, vedere MSDN: Creare un pacchetto per lo strumento Package Deployer.

    Per questo argomento, si presuppone che la cartella del pacchetto e l'assembly della cartella di debug del progetto di Visual Studio (<Project>\Bin\Debug) vengono copiati nella cartella c:\DeployPackage.

  2. Scarica il pacchetto SDK di Microsoft Dynamics CRM. Quindi, eseguire il file eseguibile scaricato per estrarre il contenuto del pacchetto.

  3. Passare alla cartella SDK\Tools\PackageDeployer e copiare la cartella del pacchetto e l'assembly da c:\DeployPackage alla cartella SDK\Tools\PackageDeployer.

  4. Una volta copiati i file, eseguire lo strumento facendo clic sul file PackageDeployer.exe nella cartella SDK\Tools\PackageDeployer.

  5. Fare clic su Continua nella schermata principale dello strumento.

  6. Nella schermata Connessione a Microsoft Dynamics CRM fornire i dettagli di autenticazione per connettersi al server Dynamics 365 in cui si desidera distribuire il pacchetto. Se si dispone di più organizzazioni e si desidera selezionare l'organizzazione in cui si desidera distribuire il pacchetto, selezionare la casella di controllo Visualizza sempre l'elenco delle organizzazioni disponibili. Fare clic su Accesso.

  7. Se si dispone di più organizzazioni nel server Dynamics 365 ed è stata selezionata la casella di controllo Visualizza sempre l'elenco delle organizzazioni disponibili, nella schermata successiva sarà possibile scegliere l'organizzazione a cui connettersi. Selezione un'organizzazione di Dynamics 365 a cui connettersi.

  8. Nella schermata successiva verrà richiesto di selezionare un pacchetto da distribuire. Selezionare il nome del pacchetto e fare clic su Avanti.

    Selezionare il package nello strumento Package Deployer

  9. Seguire le istruzioni nelle schermate successive per completare la distribuzione del pacchetto.

    Le schermate verranno visualizzate in base alla definizione del pacchetto selezionato per la distribuzione. Per una distribuzione end-to-end del pacchetto che utilizza lo Strumento Package Deployer, vedere l'argomento relativo alla distribuzione di pacchetti di Unified Service Desk: Distribuire le applicazioni Unified Service Desk di esempio al server CRM utilizzando Package Deployer

Utilizzare Windows PowerShell per distribuire i pacchetti

Lo Strumento Package Deployer fornisce il supporto per Windows PowerShell per la distribuzione dei pacchetti.

Eseguire la procedura seguente per utilizzare i cmdlet di PowerShell per la distribuzione di pacchetti:

Prerequisiti

Registrare i cmdlet

Utilizzare il cmdlet per recuperare i pacchetti

Utilizzare il cmdlet per connettersi al server CRM

Utilizzare il cmdlet per distribuire i pacchetti

Ottenere una guida dettagliata sui cmdlet

Prerequisiti

Di seguito sono riportati i prerequisiti per l'utilizzo dei cmdlet di PowerShell:

  • È necessario PowerShell 3.0 o versioni successive per distribuire un pacchetto utilizzando PowerShell. Per controllare la versione di PowerShell, eseguire una finestra di PowerShell, quindi eseguire il comando $Host

  • Impostare i criteri di esecuzione per eseguire gli script PowerShell con firma. A tale scopo, eseguire una finestra di PowerShell come amministratore, quindi eseguire il comando: Set-ExecutionPolicy -ExecutionPolicy AllSigned

Registrare i cmdlet

È necessario registrare i cmdlet di Windows PowerShell per lo Strumento Package Deployer prima di poterlo utilizzare. Per registrare i cmdlet:

  1. Se non è ancora stato fatto, scaricare il pacchetto Dynamics 365 SDK dall'Area download Microsoft, quindi eseguire il file del pacchetto per estrarne il contenuto. Si supponga di aver estratto il pacchetto nella cartella c:\CRM nel computer. Lo Strumento Package Deployer e gli altri file necessari diventano disponibili nel percorso seguente: c:\CRM\SDK\Tools\PackageDeployer.

  2. Avviare Windows PowerShell nel computer con privilegi elevati (esegui come amministratore).

  3. Al prompt della finestra di Windows PowerShell cambiare la directory sulla cartella di Windows PowerShell della cartella PackageDeployer. In questo caso:

    cd c:\CRM\SDK\Tools\PackageDeployer\PowerShell
    
  4. Eseguire lo script RegisterXRMTooling.ps1 per registrare l'assembly Windows PowerShell di Package Deployer (DLL) e installare lo snap-in di Windows PowerShell per lo Strumento Package Deployer. A tale scopo, digitare il comando seguente e premere INVIO:

    .\RegisterXRMTooling.ps1
    
  5. Aggiungere lo snap-in Windows PowerShell per gli strumenti XRM. Verranno registrati i seguenti cmdlet: Get-CrmConnection e Get-CrmOrganizations.

    Add-PSSnapin Microsoft.Xrm.Tooling.Connector
    
  6. Aggiungere lo snap-in Windows PowerShell per Package Deployer. Verranno registrati i seguenti cmdlet: Get-CrmPackages e Import-CrmPackage.

    Add-PSSnapin Microsoft.Xrm.Tooling.PackageDeployment
    

È ora possibile utilizzare questi cmdlet di Windows PowerShell. Per elencare i cmdlet registrati, eseguire il comando seguente al prompt nella finestra di Windows PowerShell:

Get-Help “Crm”

Utilizzare il cmdlet per recuperare i pacchetti

Prima di poter utilizzare il cmdlet, assicurarsi di aver copiato il pacchetto nella cartella PackageDeployer (in questo caso c:\CRM\SDK\Tools\PackageDeployer). Un pacchetto è una raccolta di file e cartelle che viene creato nella cartella del progetto di Visual Studio (<Project>(\Bin\Debug) quando si compila il progetto in Visual Studio. Copiare l'intero contenuto della cartella debug del progetto nella cartella PackageDeployer. Per informazioni dettagliate sulla compilazione di un pacchetto utilizzando Visual Studio, vedere MSDN: Creare pacchetti per Package Deployer per CRM.

  1. Nella finestra di PowerShell, utilizzare il cmdlet seguente per restituire un elenco dei pacchetti disponibili per l'importazione nella directory specificata (in questo caso, c:\CRM\SDK\Tools\PackageDeployer):

    Get-CrmPackages –PackageDirectory c:\CRM\SDK\Tools\PackageDeployer
    
  2. Per informazioni su un pacchetto in una directory, è possibile utilizzare il cmdlet Get-CrmPackages insieme al parametro –PackageName per specificare il nome dell'assembly nella directory che contiene la definizione del pacchetto.

    Get-CrmPackages –PackageDirectory c:\CRM\SDK\Tools\PackageDeployer –PackageName SampleCRMPackage.dll
    

Utilizzare il cmdlet per connettersi al server CRM

  1. Specificare le credenziali per la connessione all'istanza di Microsoft Dynamics CRM (locale) o Microsoft Dynamics CRM Online. In seguito all'esecuzione del seguente comando viene richiesto di digitare nome utente e password per la connessione all'istanza di Dynamics 365 per l'archiviazione nella variabile $Cred e l'utilizzo successivo per la connessione al server CRM.

    $Cred = Get-Credential
    
  2. Utilizzare il comando seguente per ottenere una connessione all'istanza di Microsoft Dynamics CRM (locale) o Microsoft Dynamics CRM Online. Le informazioni sulla connessione verranno archiviate nella variabile $CRMConn:

    • Se è in corso la connessione all'istanza di Microsoft Dynamics CRM (locale):

      $CRMConn = Get-CrmConnection -ServerUrl http://<your_CRM_Server> -OrganizationName <your_Org_Name> -Credential $Cred
      
    • Se è in corso la connessione al server Microsoft Dynamics CRM Online:

      $CRMConn = Get-CrmConnection -DeploymentRegion NorthAmerica –OnlineType Office365 –OrganizationName <your_Org_Name> -Credential $Cred
      

      Nota

      Per il parametro DeploymentRegion, i valori validi sono NorhAmerica, EMEA e APAC. Per il parametro OnlineType, i valori validi sono Office365 e LiveID.

  3. Le credenziali specificate vengono convalidate durante l'esecuzione del comando nel passaggio 2.

Utilizzare il cmdlet per distribuire i pacchetti

Successivamente, utilizzare le informazioni sulla connessione CRM archiviate nella variabile $CRMConn per la distribuzione di pacchetti nell'istanza di Dynamics 365. Eseguire il comando seguente per distribuire il pacchetto:

Import-CrmPackage –CrmConnection $CRMConn –PackageDirectory c:\CRM\SDK\Tools\PackageDeployer –PackageName SampleCRMPackage.dll –UnpackFilesDirectory c:\UnpackedFiles -Verbose

Nota

  • I parametri CrmConnection, PackageDirectory e PackageName sono obbligatori.

  • Per il parametro PackageName è necessario specificare il nome dell'assembly che contiene la definizione del pacchetto.

  • Non è necessario specificare il parametro UnpackFilesDirectory se il pacchetto non decomprime i file durante la distribuzione del pacchetto. Durante la definizione di un pacchetto in Visual Studio, specificare se decomprimere i file utilizzando il parametro agentdesktopzipfile nel file ImportConfig.xml.Ulteriori informazioni:MSDN: Creare pacchetti per Package Deployer per CRM

  • Il parametro Verbose è facoltativo e viene utilizzato per visualizzare un registro dettagliato delle attività eseguite durante il processo di distribuzione del pacchetto.

Ottenere una guida dettagliata sui cmdlet

Nella finestra di PowerShell utilizzare il cmdlet Get-Help con un nome di cmdlet per visualizzare una guida dettagliata per il cmdlet. Ad esempio, per ottenere una guida dettagliata per il cmdlet Import-CrmPackage:

Get-Help Import-CrmPackage -full

Per visualizzare la Guida online dei cmdlet, vedere Riferimento di CRM PowerShell.

Risolvere i problemi di distribuzione del pacchetto utilizzando file di registro

Lo Strumento Package Deployer offre supporto di registrazione per ottenere informazioni dettagliate sugli errori che possono verificarsi quando un utente accede all'istanza di Microsoft Dynamics CRM utilizzando lo strumento e distribuendo pacchetti. Lo strumento genera tre file di registro che sono disponibili nel percorso seguente nel computer in cui viene eseguito lo strumento: c:\Utenti\<NomeUtente>\AppData\Roaming\Microsoft\PackageDeployer\<Versione>.

  • Login_ErrorLog.log: fornisce informazioni sui problemi che si verificano quando si utilizza lo strumento per accedere all'istanza di Dynamics 365. Se durante l'accesso si verificano dei problemi, verrà visualizzato un messaggio nella schermata di accesso dello strumento contenente un collegamento a questo file di registro. Il messaggio indica che si è verificato un errore durante l'elaborazione della richiesta di accesso e che l'utente può visualizzare il registro errori. È possibile fare clic sul collegamento nel messaggio per visualizzare il file di registro. Il file di registro viene creato la prima volta che si verifica un problema di accesso nello strumento. Questo file di registro viene quindi utilizzato per registrare le informazioni su un problema di accesso in qualunque momento si verifichi.

  • PackageDeployer.log: fornisce informazioni dettagliate su ciascuna attività eseguita nello strumento durante la distribuzione dei pacchetti. È possibile visualizzare il file di registro dallo strumento facendo clic sul collegamento Visualizza file di registro nella parte inferiore dello schermo.

  • ComplexImportDetail.log: fornisce informazioni dettagliate sui dati importati durante l'ultima distribuzione utilizzando lo strumento. Ogni volta che si distribuisce un pacchetto utilizzando questo strumento, i dettagli esistenti del file di registro vengono spostati in un file denominato ComplexImportDetail._old.log nella stessa directory, mentre il file ComplexImportDetail.log contiene informazioni sull'ultima importazione eseguita utilizzando lo strumento.

Procedure consigliate per la distribuzione di pacchetti

Durante la distribuzione di pacchetti, gli amministratori di Dynamics 365 devono:

  • Insistere su un assembly del pacchetto firmato in modo che possano ricollegare un assembly alla relativa origine.

  • Verificare il pacchetto in un'istanza di preproduzione (preferibilmente un'immagine mirror dell'istanza di produzione) prima di eseguirlo in un server di produzione.

  • Eseguire il backup dell'istanza di produzione prima di distribuire un pacchetto.

Vedere anche

MSDN: Creare pacchetti per Package Deployer per CRM
Amministrazione di CRM 2015

© 2016 Microsoft Corporation. Tutti i diritti sono riservati. Copyright