分享方式:


使用 Package Deployer 和 Windows PowerShell 來部署套件

Microsoft Dynamics CRM Package Deployer 可讓管理員將套件部署至環境。

Note

Package Deployer 也適用於 Dynamics 365 Customer Engagement (on-premises) 組織。

「套件」可以包含下列任何或所有項目:

  • 一個或多個 Dataverse 解決方案檔案。

  • 一般檔案或從 Configuration Migration 工具匯出資料檔案。 如需 Configuration Migration 工具的詳細資訊,請參閱管理您的設定資料

  • 可以在套件部署到環境期間或之後執行的自訂程式碼。

  • 可以在套件部署程序開頭和結尾顯示、套件特定的 HTML 內容。 這可提供套件中部署的解決方案和檔案的描述。

    開發人員使用 Visual Studio 中的套件部署範本來建立套件。 其他資訊:建立 Package Deployer 的套件

    建立套件之後,您可以藉由執行 CRM Package Deployer 或使用工具的 Windows PowerShell Cmdlet 將它部署。

重要

您匯入並執行生產組織中的套件之前,請先在生產組織的非生產鏡射映像上測試套件。

部署套件之前,務必先備份生產組織。


使用 Package Deployer 工具部署套件

您可以使用 Package Deployer 工具 (packagedeployer.exe) 透過下列方式部署套件。

使用 CRM Package Deployer 工具來部署套件

在命令列使用 CRM Package Deployer 工具

使用 CRM Package Deployer 工具來部署套件

Package Deployer 工具一次只能處理一個套件。 不過,它讓使用者能夠從 Package Deployer 工具目錄中的多個套件選取要部署的套件。 根據套件定義,工具中部分的畫面和動作有所不同。 您不需要安裝 Package Deployer 工具。 只要下載並執行它。

  1. 取得要部署的套件。 套件是您在 Visual Studio 中建置套件專案時,於 Visual Studio 專案資料夾 (<Project>\Bin\Debug) 中建立的檔案與資料夾集合。 複製專案偵錯資料夾中的下列項目:

    • <PackageName> 資料夾:此資料夾包含解決方案、匯入設定及套件內容。

    • <PackageName>.dll:此組件包含套件的程式碼。 根據預設,這個組件的名稱與您的 Visual Studio 專案名稱相同。

      如需有關使用 Visual Studio 建立套件的詳細資訊,請參閱建立 Package Deployer 工具的套件

      對於本主題,我們假設 Visual Studio 專案偵錯資料夾 (<Project>\Bin\Debug) 中的套件資料夾及組件已複製到 c:\DeployPackage 資料夾。

  2. 取得 Package Deployer 工具。 Package Deployer 工具可從 NuGet 套件取得。 若要使用 Package Deployer,您必須使用 nuget.exe 將此工具下載並解壓縮到本機電腦。

    https://www.nuget.org/downloads 下載 nuget.exe,並將其儲存到您的電腦,假設是 d:\。 然後於命令提示字元執行下列命令,將套件的內容解壓縮到資料夾,假設是您電腦上的資料夾 PD
    d:\nuget install Microsoft.CrmSdk.XrmTooling.PackageDeployment.Wpf -Version [VERSION] -O d:\PD

    在解壓縮 Package Deployer 工具之後,瀏覽至 [ExtractedLocation]\tools 資料夾以尋找 PackageDeployer.exe 檔案。

  3. 將套件資料夾及組件從 c:\DeployPackage 複製到 [ExtractedLocation]\tools 資料夾。

  4. 複製檔案之後,藉由按兩下 [ExtractedLocation]\tools 資料夾中的 PackageDeployer.exe 檔案,執行此工具。

  5. 在工具的主畫面,按一下繼續

  6. 連線至 Microsoft Dynamics 365 for Customer Engagement 畫面中,提供驗證詳細資料,以連線到您想要部署套件的 Dynamics 365 Server。 如果您有多個組織,而且想要選取您要部署套件的組織,請選取一律顯示可用組織清單核取方塊。 按一下登入

  7. 如果您的 Dynamics 365 Server 有多個組織時,選取您想要連線到的 Dynamics 365 應用程式組織。

  8. 選取要部署的套件,然後按下一步

    在 Package Deployer 工具中選取您的套件。

  9. 依照接下來的畫面指示來完成部署您的套件。

    出現的畫面會根據您選取要部署的套件定義。 如需進行使用 Package Deployer 工具的端對端套件部署,請參閱 Unified Service Desk 套件部署主題:使用 Package Deployer,將範例 Unified Service Desk 應用程式部署至 CRM 伺服器

在命令列使用 Package Deployer 工具

系統管理員和自訂員可以從命令列傳遞參數 (例如地區語言碼) 至 packagedeployer.exe。 這些參數只能透過在命令列執行 Package Deployer 工具的方式設定。

Note

此功能首次在 Dynamics CRM Online 2016 Update 0.1 中引進。

此表提供可用參數。

參數 描述 預設值
RuntimePackageSettings 指示 packagedeployer.exe 接受命令列參數,例如 LCID 和 SkipChecks。 不適用
LCID=localeID 從套件中可用的地區設定識別碼指定地區設定識別碼,例如 1033 代表英文 (美國),或 1036 代表法文 (法國)。 若未指定,將使用預設語言。 使用預設語言
SkipChecks=true/false 只應在目標環境未包含任何其他解決方案或自訂時使用此參數。 當設定為 true,解決方案匯入將會略過某些安全性檢查,藉此改善匯入的效能。 誤判為真

下列範例會指示 CRM Package Deployer 略過某些安全性檢查,並將匯入的語言設定為波蘭文。

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

Note

當您在命令列執行 packagedeployer.exe 搭配多個參數時,使用管道字元 | 分隔參數。

如需可傳遞至 packagedeployer.exe 的參數及值的詳細資訊,請參閱建立 CRM Package Deployer 的套件

使用 Windows PowerShell 來部署套件

Package Deployer 工具也提供 Windows PowerShell 支援,以部署套件。 其他資訊:開始使用套件部署模組

使用記錄檔,疑難排解套件部署問題

Package Deployer 工具提供記錄支援,可取得某人使用工具及部署套件登入 Microsoft Dynamics 365 for Customer Engagement 執行個體時,可能發生錯誤的詳細資訊。 根據預設,在執行工具的電腦上,工具於下列位置產生三個記錄檔:c:\Users\<UserName>\AppData\Roaming\Microsoft\Microsoft Dynamics CRM Package Deployer\<Version>。 若要指定不同的資料夾,請使用 -LogWriteDirectory PowerShell Cmdlet 參數。 其他資訊:使用 Cmdlet 擷取套件

  • Login_ErrorLog.log:提供有關使用工具登入 Dynamics 365 執行個體時發生之問題的詳細資訊。 如果登入期間有任何問題,則工具的登入畫面上會出現訊息,內含此記錄檔的連結。 訊息指出處理登入要求時發生錯誤,而且使用者可以檢視錯誤記錄檔。 您可以按一下訊息中的連結,以檢視此記錄檔。 第一次遇到工具的任何登入問題時,會建立記錄檔。 此後,記錄檔會用來記錄任何時候發生之登入問題的相關資訊。

  • PackageDeployer.log:提供有關在套件部署期間工具中執行的每個工作的詳細資訊。 您可以按一下畫面底部的檢視記錄檔連結,來檢視工具的記錄檔。

  • ComplexImportDetail.log:提供有關使用工具最後一次部署中匯入資料的詳細資訊。 每次使用這個工具部署套件時,記錄檔現有的詳細資料會被移到相同目錄中的檔案 ComplexImportDetail._old.log,而 ComplexImportDetail.log 檔案會顯示使用工具最新匯入的相關資訊。

部署套件的最佳做法

部署套件時,Dynamics 365 系統管理員必須:

  • 堅持簽署的套件組件,以便追蹤到組件的來源。

  • 先在生產前執行個體 (最好是生產執行個體的鏡像映像) 測試套件,然後在生產伺服器上執行套件。

  • 先備份生產執行個體,再部署套件。

請參閱

建立 CRM Package Deployer 的套件