Sdílet prostřednictvím


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

Azure DevOps Services

Univerzální balíčky umožňují zabalovat a sdílet libovolný počet souborů bez ohledu na typ s týmem nebo cílovou skupinou. Pomocí úlohy Univerzální balíček ve službě Azure Pipelines můžete balíčky zabalit, publikovat a stahovat tak velké jako 4 TiB. Každý balíček je identifikován jedinečným názvem a číslem verze. K publikování a stahování balíčků z informačních kanálů Artifacts můžete použít Azure CLI nebo Azure Pipelines.

Poznámka

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

Požadavky

produkt Požadavky
Azure DevOps – projekt Azure DevOps.
- Oprávnění:
    - Chcete-li udělit přístup ke všem kanálům v projektu, musíte být členem skupiny Project Administrators.
    - Chcete-li vytvořit připojení služeb, musíte mít roli správce nebo Tvůrce pro připojení služeb.

Kopírování souborů

Tato úloha pro Univerzální balíčky v Azure Pipelines používá $(Build.ArtifactStagingDirectory) jako výchozí umístění pro soubory, které chcete publikovat. Pokud chcete připravit univerzální balíček pro publikování, přesuňte soubory, které chcete publikovat do tohoto adresáře. K zkopírování souborů do adresáře publikování můžete použít také úlohu nástroje Kopírovat soubory .

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

  • YAML
  • Klasický
  1. Přihlaste se ke své organizaci Azure DevOps a přejděte k projektu.

  2. Vyberte Kanály a pak vyberte definici kanálu.

  3. Vyberte Upravit a přidejte do kanálu YAML následující fragment kódu.

    - task: UniversalPackages@0
      displayName: Publish
      inputs:
        command: publish
        publishDirectory: '$(Build.ArtifactStagingDirectory)'        ## Location of the files you wish to publish
        vstsFeedPublish: '<PROJECT_NAME>/<FEED_NAME>'                ## The project and feed name to publish to. If you're working with an organization-scoped feed, specify only the feed name
        vstsFeedPackagePublish: '<PACKAGE_NAME>'                     ## The package name. Must be lower case. Use only letters, numbers, and dashes
        packagePublishDescription: '<PACKAGE_DESCRIPTION>'           ## Description of the package content
    

Poznámka

Pokud chcete publikovat balíčky do informačního kanálu ze svých kanálů/pipelines, ujistěte se, že v nastavení informačního kanálu byla role Vydavatel informačního kanálu (Přispěvatel) udělena jak Službě sestavení kolekce projektů (Project Collection Build Service), tak identitě Služba sestavení projektu (Build Service). Další podrobnosti najdete v tématu Správa oprávnění .

Správa verzí balíčků

Univerzální balíčky se řídí sémantickým verzováním, které je založeno na třech číselných komponentách: hlavní, vedlejší a záplata. Formát správy verzí je Major.Minor.Patch.

  • Menší verze se zvýší, když se přidají nové funkce, které jsou zpětně kompatibilní s předchozími verzemi. V tomto případě se podverze zvýší a verze opravy se resetuje na 0 (např. 1.4.17 až 1.5.0).
  • Hlavní verze se zvýší, pokud dojde k významným změnám, které by mohly narušit kompatibilitu s předchozími verzemi, přičemž se podverze i opravná verze resetují na hodnotu 0 (např. 2.6.5 na 3.0.0).
  • Verze opravy se zvýší, když se použijí opravy chyb nebo jiné malé změny, které nemají vliv na kompatibilitu (např. 1.0.0 až 1.0.1).

Při publikování nového balíčku úloha Univerzálních balíčků za vás automaticky vybere další hlavní, vedlejší nebo opravnou verzi.

  • YAML
  • Klasický

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

Výběr custom umožňuje ruční zadání verze balíčku. Další možnosti získají nejnovější verzi balíčku z vašeho zdroje a zvýší vybraný segment verze o 1. Pokud máte například balíček testPackage 1.0.0:

  • Výběr major aktualizuje verzi na testPackage 2.0.0.
  • Výběr minor aktualizuje verzi na 1.1.0.
  • Výběr patch aktualizuje verzi na 1.0.1.

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

- task: UniversalPackages@0
  displayName: Publish
  inputs:
    command: publish
    publishDirectory: '$(Build.ArtifactStagingDirectory)'             ## Location of the files you wish to publish
    vstsFeedPublish: '<PROJECT_NAME>/<FEED_NAME>'                     ## The project and feed name to publish to. If you're working with an organization-scoped feed, specify only the feed name
    vstsFeedPackagePublish: '<PACKAGE_NAME>'                          ## The package name. Must be lower case. Use only letters, numbers, and dashes
    versionOption: custom                                             ## Select a versioning strategy. Options: `major`, `minor`, `patch`, `custom`
    versionPublish: '<PACKAGE_VERSION>'                               ## The custom package version
    packagePublishDescription: '<PACKAGE_DESCRIPTION>'                ## Description of the package content

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

  • YAML
  • Klasický
  1. Přihlaste se ke své organizaci Azure DevOps a přejděte k projektu.

  2. Vyberte Kanály a pak vyberte definici kanálu.

  3. Vyberte Upravit a přidejte do kanálu YAML následující fragment kódu.

    steps:
    - task: UniversalPackages@0
      displayName: Download
      inputs:
        command: download
        vstsFeed: '<PROJECT_NAME>/<FEED_NAME>'                        ## The Artifacts feed hosting the package to be downloaded
        vstsFeedPackage: '<PACKAGE_NAME>'                             ## Name of the package to be downloaded
        vstsPackageVersion: '<PACKAGE_VERSION>'                       ## Version of the package to be downloaded
        downloadDirectory: '$(Build.SourcesDirectory)\someFolder'     ## The download folder. Default value: $(System.DefaultWorkingDirectory).
    

Pokud chcete stáhnout univerzální balíček z externího zdroje, můžete použít následující příklad:

steps:
- task: UniversalPackages@0
  displayName: Download a Universal Package
  inputs:
    command: download
    feedsToUse: external                                        ## Set the value to `external` when downloading from an external source 
    externalFeedCredentials: 'MSENG2'                           ## Name of the service connection to the external feed
    feedDownloadExternal: 'fabrikamFeedExternal'                ## Name of the external feed
    packageDownloadExternal: 'fabrikam-package'                 ## The package name you wish to download
    versionDownloadExternal: 1.0.0                              ## The version of the package you wish to download

Spropitné

Zástupné znaky lze použít ke stažení nejnovější verze univerzálního balíčku. Další podrobnosti najdete v tématu Stažení nejnovější verze .