MSIX 封裝延伸模組

「MSIX 封裝」延伸模組是一種 Azure DevOps 延伸模組,有助於使用 MSIX 套件格式來建置、封裝及簽署 Windows 應用程式。

CI/CD 工作流程已成為開發程序不可或缺的一部分,可提升效率和品質,同時降低成本和上市時間。 Microsoft 的 CI/CD 解決方案 Azure DevOps Pipelines 廣泛採用且受歡迎,但目前將需要封裝為 MSIX 的應用程式之組建和部署工作流程整合到 Azure Pipelines 很繁瑣,特別是不 Azure Pipelines 或 MSIX 專家的人員。 此 Azure DevOps 擴充功能提供簡單且直覺的解決方案,可讓您更輕鬆地將應用程式封裝為 MSIX 的組建和部署程式自動化,並讓具有現有 CI/CD 工作流程的應用程式移至 MSIX,而不會中斷其組建和部署機制。

「MSIX 封裝」延伸模組包含下列工作,可讓您根據需求自訂建置您的管線:

  1. MSIX 組建和套件 - 使用 MSIX 套件格式建置和封裝 Windows 應用程式
  2. MSIX 套件簽署 - 使用受信任的憑證簽署 MSIX 套件
  3. MSIX 的應用程式安裝程式- 建立或更新 MSIX 應用程式的 .appinstaller file 檔案
  4. 建立 MSIX 應用程式連結的套件 - 建立 MSIX 應用程式連結的 VHDX 套件

安裝延伸模組

瀏覽 Azure DevOps Marketplace 並尋找延伸模組名稱「MSIX 封裝」延伸模組。

瀏覽市集

建立管線

為 Azure DevOps 專案建立新管線。

選取管線

新增管線

選取此選項以「使用傳統編輯器來建立管線,而不需使用 YAML」。

使用傳統編輯器

選取您的版本控制系統,並提供您的存放庫和預設分支詳細資料。

設定來源 vcs

當系統要求您 選取範本時,請按一下 [開始], 並輸入空白的 工作

從空白作業開始

將您的代理程式規格選取範圍變更為windows-2019 ,因為 MSIX 延伸模組只會在 Windows 代理程式上執行。

代理程式規格視窗

在您的管線中,您應該會看到 代理程式作業 1 。 按一下加號,「將工作新增至代理程式作業 1」。

在 [新增工作] 搜尋列中搜尋MSIX ,您應該會在MSIX 封裝延伸模組中看到先前所述的工作。 您可以根據本身需求來新增所需的工作,以自訂建置您的管線。 但我們將示範如何在此頁面上設定這四項工作。

新增工作

MSIX 組建和套件

注意:如果您嘗試使用此工作來建立已封裝的應用程式,則必須包含 Windows 應用程式封裝專案,因為工作需要 package.appxmanifest 檔案。 這項工作不會自動為您新增。

以下範例顯示如何在 yaml 檔中設定組建和封裝工作:

steps:
- task: MSIX.msix-ci-automation-task-dev.msix-packaging.MsixPackaging@1
  displayName: 'MSIX build and package'
  inputs:
    outputPath: '$(Build.ArtifactStagingDirectory)\MyApp.msix'
    solution: MyUWPApp.sln
    buildPlatform: x64
    updateAppVersion: true
    manifestFile: MyUWPApp/Package.appxmanifest
    appVersion: 2.0.0.0
    appPackageDistributionMode: SideloadOnly
    msbuildArchitecture: x64

MSIX 套件簽署

簽署工作允許使用憑證簽署。 憑證可以來自「安全檔案」連結 ,或編碼為字串,就像使用 Azure Key Vault工作來提取一樣。

以下範例示範如何在 yaml 檔中設定套件簽署工作:

steps:
- task: MSIX.msix-ci-automation-task-dev.msix-signing.MsixSigning@1
  displayName: 'Sign MSIX package'
  inputs:
    certificateType: base64
    encodedCertificate: '$(kvtestcert)'

MSIX 的應用程式安裝程式檔案

以下範例顯示如何在 yaml 檔案中設定 AppInstaller 檔案工作:

steps:
- task: MSIX.msix-ci-automation-task-dev.app-installer-file.AppInstallerFile@1
  displayName: 'Create App Installer file'
  inputs:
    package: '$(Build.ArtifactStagingDirectory)\MyApp.msix'
    outputPath: '$(Build.ArtifactStagingDirectory)\MyApp.appinstaller'
    uri: 'https://myuwpapp-demo.azurewebsites.net/MyApp.appinstaller'
    mainItemUri: 'https://myuwpapp-demo.azurewebsites.net/MyApp.msix'
    showPromptWhenUpdating: true
    updateBlocksActivation: true

建立 MSIX 應用程式連結的套件

以下範例示範如何在 yaml 檔中設定工作,以建立應用程式附加的 VHDX 檔案:

steps:
- task: MSIX.msix-ci-automation-task-dev.msix-app-attach.MsixAppAttach@1
  displayName: 'Create package for MSIX app attach'
  inputs:
    package: '$(Build.ArtifactStagingDirectory)\MyApp.msix'
    vhdxOutputPath: '$(Build.ArtifactStagingDirectory)\MyApp.vhdx'

提供意見反應的方式

我們很樂意聽到您對 [MSIX 封裝] 延伸模組的意見反應。 請透過下列管道與我們聯繫: