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 封裝」延伸模組。

Browse the marketplace

建立管線

為 Azure DevOps 專案建立新管線。

select pipeline

New pipeline

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

Use the classic editor

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

Configure source vcs

當系統要求您選取範本時,按一下[從空白作業開始]。

Start with an empty job

[代理程式規格] 選項變更為windows-2019,因為 MSIX 擴充功能只會在Windows代理程式上執行。

Agent specification windows

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

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

Add a task

MSIX 組建和套件

注意:如果您嘗試使用此工作建置已封裝的應用程式,則必須包含Windows應用程式封裝Project,因為工作需要 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 金鑰保存庫 工作擷取一樣。

以下是示範如何在 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 封裝] 延伸模組的意見反應。 請透過下列管道與我們聯繫: