Universele pakketten publiceren en downloaden met Azure Pipelines
Azure DevOps Services
Met Universal Packages kunt u een willekeurig aantal bestanden van elk type verpakken en delen met uw team. Met behulp van de Universal Package-taak in Azure Pipelines kunt u pakketten van verschillende grootten inpakken, publiceren en downloaden, tot 4 TB. Elk pakket wordt uniek geïdentificeerd met een naam en een versienummer. U kunt Azure CLI of Azure Pipelines gebruiken om pakketten te publiceren en te gebruiken vanuit uw Artifacts-feeds.
Notitie
Universele pakketten zijn alleen beschikbaar in Azure DevOps Services.
Bestanden kopiëren
De universal packages-taak in Azure Pipelines is ingesteld op gebruik $(Build.ArtifactStagingDirectory)
als de standaardpubliceermap. Als u uw Universal Package wilt voorbereiden voor publicatie, verplaatst u de bestanden die u naar die map wilt publiceren. U kunt ook de taak hulpprogramma Bestanden kopiëren gebruiken om deze bestanden te kopiëren naar de publicatiemap.
Een universeel pakket publiceren
Als u een universeel pakket wilt publiceren naar uw Azure Artifacts-feed, voegt u de volgende taak toe aan het YAML-bestand van uw pijplijn.
- task: UniversalPackages@0
displayName: Publish a Universal Package
inputs:
command: publish
publishDirectory: '$(Build.ArtifactStagingDirectory)'
vstsFeedPublish: '<projectName>/<feedName>'
vstsFeedPackagePublish: '<Package name>'
packagePublishDescription: '<Package description>'
Argument | Beschrijving |
---|---|
publishDirectory | Locatie van de bestanden die u wilt publiceren. |
vstsFeedPublish | De naam van het project en de feed waar u naar wilt publiceren. Als u met een feed met organisatiebereik werkt, geeft u alleen de naam van de feed op. |
vstsFeedPackagePublish | De pakketnaam. Moet een kleine letter zijn. Gebruik alleen letters, cijfers en streepjes. |
packagePublishDescription | Beschrijving van de pakketinhoud. |
Als u pakketten vanuit uw pijplijn wilt publiceren naar een Azure Artifacts-feed, moet de pijplijnidentiteit de rol FeedUitgever (Inzender) hebben voor de feed. Zie Machtigingen voor pijplijnen voor meer informatie.
Als u wilt publiceren naar een externe feed, moet u eerst een serviceverbinding maken om te verifiëren met uw feed. Zie Serviceverbinding beheren voor meer informatie.
Pakketversiebeheer
Universal Packages volgen de semantische versiebeheerspecificatie en kunnen worden geïdentificeerd door hun namen en versienummers. Semantische versienummers bestaan uit drie numerieke onderdelen, Major, Minor en Patch, in de volgende notatie: Major.Minor.Patch
.
Het secundaire versienummer wordt verhoogd wanneer nieuwe functies worden toegevoegd die compatibel zijn met eerdere versies. In dit geval gaat u de secundaire versie verhogen en de patchversie opnieuw instellen op 0 (1.4.17
naar 1.5.0
). Het primaire versienummer wordt verhoogd wanneer er aanzienlijke wijzigingen zijn die de compatibiliteit met eerdere versies kunnen verbreken. In dit geval gaat u de primaire versie verhogen en de secundaire en patchversies opnieuw instellen op 0 (2.6.5
naar 3.0.0
). Het versienummer van de patch moet worden verhoogd wanneer alleen bugfixes of andere kleine wijzigingen worden aangebracht die geen invloed hebben op de compatibiliteit met eerdere versies (1.0.0
naar 1.0.1
).
Wanneer u een nieuw pakket publiceert, selecteert de taak Universal Packages automatisch de volgende primaire, secundaire of patchversie voor u.
Als u versiebeheer voor uw pakket wilt inschakelen, voegt u een versionOption
invoer toe aan uw YAML-bestand. De opties voor het publiceren van een nieuwe pakketversie zijn: major
, minor
, patch
of custom
.
custom
Als u deze optie selecteert, kunt u de pakketversie handmatig opgeven. De andere opties krijgen de nieuwste pakketversie van uw feed en verhogen het gekozen versiesegment met 1. Dus als u een testPackage 1.0.0 hebt en de primaire optie selecteert, wordt uw nieuwe pakket testPackage 2.0.0. Als u de secundaire optie selecteert, is uw pakketversie 1.1.0 en als u de patchoptie selecteert, is uw pakketversie 1.0.1.
Als u de custom
optie kiest, moet u ook als volgt een versionPublish
waarde opgeven:
- task: UniversalPackages@0
displayName: Publish a Universal Package
inputs:
command: publish
publishDirectory: '$(Build.ArtifactStagingDirectory)'
vstsFeedPublish: '<projectName>/<feedName>'
vstsFeedPackagePublish: '<Package name>'
versionOption: custom
versionPublish: '<Package version>'
packagePublishDescription: '<Package description>'
Argument | Beschrijving |
---|---|
publishDirectory | Locatie van de bestanden die u wilt publiceren. |
vstsFeedPublish | De naam van het project en de feed waar u naar wilt publiceren. Als u met een feed met organisatiebereik werkt, geeft u alleen de naam van de feed op. |
vstsFeedPackagePublish | De pakketnaam. Moet een kleine letter zijn. Gebruik alleen letters, cijfers en streepjes. |
versionOption | Selecteer een versiebeheerstrategie. Opties: major , minor , , patch . custom |
versionPublish | De aangepaste pakketversie. |
packagePublishDescription | Beschrijving van de pakketinhoud. |
Een universeel pakket downloaden
Als u een universeel pakket wilt downloaden van een feed in uw organisatie, gebruikt u de taak Universal Package met de download
opdracht als volgt:
steps:
- task: UniversalPackages@0
displayName: Download a Universal Package
inputs:
command: download
vstsFeed: '<projectName>/<feedName>'
vstsFeedPackage: '<packageName>'
vstsPackageVersion: '<packageVersion>'
downloadDirectory: '$(Build.SourcesDirectory)\someFolder'
Argument | Beschrijving |
---|---|
vstsFeed | De Artifacts-feed die als host fungeert voor het pakket dat moet worden gedownload. |
vstsFeedPackage | De naam van het pakket dat moet worden gedownload. |
vstsPackageVersion | Versie van het pakket dat moet worden gedownload. |
downloadDirectory | De doelmap van het pakket. Standaardwaarde: $(System.DefaultWorkingDirectory). |
Als u een universeel pakket wilt downloaden van een externe bron, gebruikt u het volgende codefragment:
steps:
- task: UniversalPackages@0
displayName: Download a Universal Package
inputs:
command: download
feedsToUse: external
externalFeedCredentials: 'MSENG2'
feedDownloadExternal: 'fabrikamFeedExternal'
packageDownloadExternal: 'fabrikam-package'
versionDownloadExternal: 1.0.0
Argument | Beschrijving |
---|---|
feedsToUse | Stel de waarde in op external bij het downloaden van een externe bron. |
externalFeedCredentials | Naam van de serviceverbinding met de externe feed. Zie Serviceverbindingen beheren voor meer informatie. |
feedDownloadExternal | Naam van de externe feed. |
packageDownloadExternal | De pakketnaam die u wilt downloaden. |
versionDownloadExternal | De versie van het pakket dat u wilt downloaden. |
Tip
U kunt jokertekens gebruiken om de nieuwste versie van een Universal Package te downloaden. Zie De nieuwste versie downloaden voor meer informatie.