Publikování a stažení univerzálních balíčků pomocí Azure Pipelines

Služby Azure DevOps

Univerzální balíčky umožňují zabalit libovolný počet souborů libovolného typu a sdílet je s týmem. Pomocí úlohy Univerzální balíček ve službě Azure Pipelines můžete balíčky sbalit, publikovat a stahovat různé velikosti až do 4 TB. Každý balíček je jednoznačně identifikován názvem a číslem verze. Pomocí Azure CLI nebo Azure Pipelines můžete publikovat a využívat balíčky z informačních kanálů Artifacts.

Poznámka:

Univerzální balíčky jsou dostupné jenom v Azure DevOps Services.

Kopírování souborů

Úloha Univerzální balíčky ve službě Azure Pipelines je nastavená tak, aby se používala $(Build.ArtifactStagingDirectory) jako výchozí adresář publikování. Chcete-li připravit univerzální balíček pro publikování, přesuňte soubory, které chcete publikovat do daného adresáře. K zkopírování těchto souborů do adresáře publikování můžete použít také úlohu nástroje Kopírovat soubory .

Publikování univerzálního balíčku

Pokud chcete publikovat univerzální balíček do informačního kanálu Azure Artifacts, přidejte do souboru YAML kanálu následující úlohu.

- task: UniversalPackages@0
  displayName: Publish a Universal Package
  inputs:
    command: publish
    publishDirectory: '$(Build.ArtifactStagingDirectory)'
    vstsFeedPublish: '<projectName>/<feedName>'
    vstsFeedPackagePublish: '<Package name>'
    packagePublishDescription: '<Package description>'
Argument Popis
publishDirectory Umístění souborů, které chcete publikovat.
vstsFeedPublish Název projektu a informačního kanálu, do které se má publikovat. Pokud pracujete s informačním kanálem v oboru organizace, zadejte pouze název informačního kanálu.
vstsFeedPackagePublish Název balíčku. Musí obsahovat malá písmena. Používejte jenom písmena, číslice a pomlčky.
packagePublishDescription Popis obsahu balíčku

Pokud chcete publikovat balíčky do kanálu Azure Artifacts z kanálu, musí mít identita kanálu v informačním kanálu roli Vydavatel informačního kanálu (Přispěvatel ). Další informace najdete v tématu Oprávnění pipelines.

Pokud chcete publikovat externí kanál, musíte nejprve vytvořit připojení služby pro ověření v informačním kanálu. Další informace najdete v tématu Správa připojení služby.

Správa verzí balíčků

Univerzální balíčky se řídí specifikací sémantické správy verzí a mohou být identifikovány jejich názvy a čísly verzí. Sémantická čísla verzí se skládají ze tří číselných složek, hlavních, podverze a oprav ve formátu: Major.Minor.Patch.

Číslo podverze se zvýší při přidání nových funkcí, které jsou zpětně kompatibilní s předchozími verzemi, v tomto případě zvýšíte podverzi a resetujete verzi opravy na 0 (1.4.17 na 1.5.0). Číslo hlavní verze se zvýší, pokud dojde k významným změnám, které by mohly narušit kompatibilitu s předchozími verzemi. V tomto případě zvýšíte hlavní verzi a resetujete podverze a verze oprav na hodnotu 0 (2.6.5 do 3.0.0). Číslo verze opravy by se mělo zvýšit, pokud jsou provedeny pouze opravy chyb nebo jiné malé změny, které nemají vliv na kompatibilitu s předchozími verzemi (1.0.0 do 1.0.1).

Při publikování nového balíčku úloha Univerzální balíčky automaticky vybere další hlavní, podverzi nebo verzi opravy za vás.

Pokud chcete povolit správu verzí balíčku, přidejte versionOption do souboru YAML vstup. Možnosti publikování nové verze balíčku jsou: major, minor, patchnebo custom.

Výběr custom umožňuje ruční zadání verze balíčku. Další možnosti z vašeho kanálu získají nejnovější verzi balíčku a zvýší vybraný segment verze o 1. Pokud tedy máte testovací balíček 1.0.0 a vyberte hlavní možnost, nový balíček bude testPackage 2.0.0. Pokud vyberete podverzi, vaše verze balíčku bude 1.1.0 a pokud vyberete možnost opravy, bude verze balíčku 1.0.1.

Pokud zvolíte custom možnost, musíte také zadat versionPublish hodnotu následujícím způsobem:

- 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 Popis
publishDirectory Umístění souborů, které chcete publikovat.
vstsFeedPublish Název projektu a informačního kanálu, do které se má publikovat. Pokud pracujete s informačním kanálem v oboru organizace, zadejte pouze název informačního kanálu.
vstsFeedPackagePublish Název balíčku. Musí obsahovat malá písmena. Používejte jenom písmena, číslice a pomlčky.
versionOption Vyberte strategii správy verzí. Možnosti: major, minor, patch, custom.
versionPublish Vlastní verze balíčku.
packagePublishDescription Popis obsahu balíčku

Stažení univerzálního balíčku

Pokud chcete stáhnout univerzální balíček z informačního kanálu ve vaší organizaci, použijte úlohu Univerzální balíček s tímto příkazem download :

steps:
- task: UniversalPackages@0
  displayName: Download a Universal Package
  inputs:
    command: download
    vstsFeed: '<projectName>/<feedName>'
    vstsFeedPackage: '<packageName>'
    vstsPackageVersion: '<packageVersion>'
    downloadDirectory: '$(Build.SourcesDirectory)\someFolder'
Argument Popis
vstsFeed Informační kanál Artifacts hostující balíček, který se má stáhnout.
vstsFeedPackage Název balíčku, který se má stáhnout.
vstsPackageVersion Verze balíčku, který se má stáhnout.
downloadDirectory Cílová složka balíčku. Výchozí hodnota: $(System.DefaultWorkingDirectory).

Pokud chcete stáhnout univerzální balíček z externího zdroje, použijte následující fragment kódu:

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 Popis
feedsToUse Nastavte hodnotu external při stahování z externího zdroje.
externalFeedCredentials Název připojení služby k externímu informačnímu kanálu. Další informace najdete v tématu správa připojení služeb.
feedDownloadExternal Název externího informačního kanálu
packageDownloadExternal Název balíčku, který chcete stáhnout.
versionDownloadExternal Verze balíčku, který chcete stáhnout.

Tip

Pomocí zástupných znaků můžete stáhnout nejnovější verzi univerzálního balíčku. Další informace najdete v tématu Stažení nejnovější verze.