Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die MSIX-Paketerweiterung ist eine Azure DevOps-Erweiterung, mit der Windows-Apps mithilfe des MSIX-Paketformats erstellt, verpackt und signiert werden können.
CI/CD-Workflows sind zu einem integralen Bestandteil des Entwicklungsprozesses geworden, um die Effizienz und Qualität zu verbessern und gleichzeitig die Kosten und die Markteinführungszeit zu reduzieren. Die CI/CD-Lösung Azure DevOps Pipelines von Microsoft ist weit verbreitet und beliebt, aber der aktuelle Prozess der Integration von Build- und Bereitstellungsworkflows für Apps, die als MSIX in Azure Pipelines verpackt werden müssen, ist mühsam, insbesondere für Personen, die keine Azure Pipelines- oder MSIX-Experten sind. Diese Azure DevOps-Erweiterung bietet eine unkomplizierte und intuitive Lösung, die die Automatisierung des Build- und Bereitstellungsprozesses für Apps erleichtert, die als MSIX verpackt werden, und für Apps mit vorhandenen CI/CD-Workflows, die zu MSIX verschoben werden können, ohne ihre Build- und Bereitstellungsmechanismen zu unterbrechen.
Die MSIX-Paketerweiterung enthält die folgenden Aufgaben, mit denen Sie Ihre Pipeline entsprechend Ihren Anforderungen erstellen können:
- MSIX-Build und -Paket: zum Erstellen und Verpacken von Windows-Apps mithilfe des MSIX-Paketformats
- MSIX-Paketsignierung – zum Signieren von MSIX-Paketen mit einem vertrauenswürdigen Zertifikat
- App-Installer-Datei für MSIX : zum Erstellen oder Aktualisieren einer .appinstaller-Datei für MSIX-Apps
- Erstellen eines Pakets für MSIX-App-Anfügen : So erstellen Sie ein VHDX-Paket für das Anfügen von MSIX-Apps.
Installieren der Erweiterung
Durchsuchen Sie den Azure DevOps Marketplace, und suchen Sie nach dem Erweiterungsnamen MSIX Packaging Extension.
Erstellen einer Pipeline
Erstellen Sie eine neue Pipeline für Ihr Azure DevOps-Projekt.
Wählen Sie die Option Verwenden Sie den klassischen Editor aus, um eine Pipeline ohne YAML zu erstellen.
Wählen Sie Ihr Versionskontrollsystem aus, und geben Sie die Details zum Repository und zum Standardzweig an.
Wenn Sie aufgefordert werden, eine Vorlage auszuwählen, klicken Sie auf Mit leerem Auftrag starten.
Ändern Sie die Auswahl für die Agentspezifikation in windows-2019 , da die MSIX-Erweiterung nur auf einem Windows-Agent ausgeführt wird.
In Ihrer Pipeline sollte standardmäßig Agent-Auftrag 1 angezeigt werden. Klicken Sie auf das Plus-Symbol, um eine Aufgabe zum Agentenauftrag 1 hinzuzufügen.
Suchen Sie in der Suchleiste "Aufgaben hinzufügen" nach MSIX, und die zuvor erwähnten Aufgaben sollten in der MSIX-Paketerweiterung angezeigt werden. Sie können Ihre Pipeline individuell erstellen, indem Sie die Aufgaben hinzufügen, die Sie entsprechend Ihren Anforderungen benötigen. Auf dieser Seite zeigen wir Ihnen jedoch, wie Sie alle vier Aufgaben konfigurieren. 
MSIX-Build und -Paket
Hinweis: Wenn Sie versuchen, eine verpackte App mit dieser Aufgabe zu erstellen, müssen Sie das Projekt zum Verpacken von Windows-Anwendungen einschließen, da für die Aufgabe die Datei Package.appxmanifest erforderlich ist. Die Aufgabe fügt sie nicht automatisch für Sie hinzu.
Im Folgenden finden Sie ein Beispiel, das zeigt, wie die Build- und Paketaufgabe in der YAML-Datei konfiguriert wird:
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
Signieren von MSIX-Paketen
Die Signaturaufgabe ermöglicht das Signieren mit einem Zertifikat. Das Zertifikat kann aus der Secure Files-Bibliothek stammen oder als Zeichenfolge codiert werden, als ob es mit der Azure Key Vault-Aufgabe abgerufen würde.
Im Folgenden finden Sie ein Beispiel, das zeigt, wie Sie die Paketsignaturaufgabe in der YAML-Datei konfigurieren:
steps:
- task: MSIX.msix-ci-automation-task-dev.msix-signing.MsixSigning@1
displayName: 'Sign MSIX package'
inputs:
certificateType: base64
encodedCertificate: '$(kvtestcert)'
App-Installationsdatei für MSIX
Im Folgenden finden Sie ein Beispiel, das zeigt, wie Sie die AppInstaller-Dateiaufgabe in der YAML-Datei konfigurieren:
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
Erstellen eines Pakets für die MSIX-App-Anfügung
Im Folgenden finden Sie ein Beispiel, das zeigt, wie Sie die Aufgabe so konfigurieren, dass eine VHDX-Datei für die App-Anlage in der YAML-Datei erstellt wird:
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'
Veröffentlichen des MSIX-App-Anfügepakets an AVD
Im Folgenden finden Sie ein Beispiel, das zeigt, wie Sie die avd-App-Anfügeaufgabe in der YAML-Datei konfigurieren:
steps:
- task: MSIX.msix-ci-automation-task-dev.avd-app-attach-publish.AVDAppAttachPublish@0
displayName: 'Publish MSIX app attach package to AVD'
inputs:
vhdxPath: '$(Build.ArtifactStagingDirectory)/App.vhdx'
connectedServiceNameARM: 'ed1db943-1e1c-4eac-8683-ead2abc281b5'
resourceGroupName: 'appattach-test-rg'
storageAccount: 'appattachteststorage'
fileShare: 'appattach-test-fs'
hostPool: 'appattach-hostpool'
workSpace: 'appattach-test-ws'
applicationGroup: 'appattach-test-ag-rail'
Möglichkeiten, Feedback zu geben
Wir würden uns sehr über Ihr Feedback zur MSIX-Paketerweiterung freuen. Kontaktieren Sie uns über die folgenden Kanäle:
- Überprüfen der Erweiterung im Azure DevOps Marketplace
- MSIX-Tech-Gemeinschaft
- GitHub Open Source-Projekt : Der Quellcode für diese Erweiterung ist Teil des MSIX SDK Open Source-Projekts, das Beiträge und Vorschläge begrüßt.