Azure Pipelines ile Evrensel Paketleri yayımlama ve indirme

Azure DevOps Services

Evrensel Paketler, herhangi bir türde istediğiniz sayıda dosyayı paketlemenize ve ekibinizle paylaşmanıza olanak sağlar. Azure Pipelines'da Evrensel Paket görevini kullanarak, 4 TB'a kadar çeşitli boyutlardaki paketleri paketleyebilir, yayımlayabilir ve indirebilirsiniz. Her paket bir ad ve sürüm numarasıyla benzersiz olarak tanımlanır. Artifacts akışlarınızdaki paketleri yayımlamak ve kullanmak için Azure CLI veya Azure Pipelines'ı kullanabilirsiniz.

Not

Evrensel Paketler yalnızca Azure DevOps Services'da kullanılabilir.

Dosyaları kopyalama

Azure Pipelines'daki Evrensel Paketler görevi varsayılan yayımlama dizini olarak kullanılacak $(Build.ArtifactStagingDirectory) şekilde ayarlanır. Evrensel Paketinizi yayımlamaya hazırlamak için, yayımlamak istediğiniz dosyaları bu dizine taşıyın. Bu dosyaları yayımlama dizinine kopyalamak için Dosyaları Kopyala yardımcı programı görevini de kullanabilirsiniz.

Evrensel Paket Yayımlama

Azure Artifacts akışınızda Evrensel Paket yayımlamak için işlem hattınızın YAML dosyasına aşağıdaki görevi ekleyin.

- task: UniversalPackages@0
  displayName: Publish a Universal Package
  inputs:
    command: publish
    publishDirectory: '$(Build.ArtifactStagingDirectory)'
    vstsFeedPublish: '<projectName>/<feedName>'
    vstsFeedPackagePublish: '<Package name>'
    packagePublishDescription: '<Package description>'
Bağımsız değişken Açıklama
publishDirectory Yayımlamak istediğiniz dosyaların konumu.
vstsFeedPublish Yayımlanması gereken proje ve akış adı. Kuruluş kapsamlı bir akışla çalışıyorsanız yalnızca akış adını belirtin.
vstsFeedPackagePublish Paket adı. Küçük harf olmalıdır. Yalnızca harf, sayı ve tire kullanın.
packagePublishDescription Paket içeriğinin açıklaması.

İşlem hattınızdan bir Azure Artifacts akışına paket yayımlamak için işlem hattı kimliğinin akışta Akış Yayımcısı (Katkıda Bulunan) rolüne sahip olması gerekir. Daha fazla bilgi için bkz . İşlem hattı izinleri.

Bir dış akışta yayımlamak için önce akışınızla kimlik doğrulaması yapmak için bir hizmet bağlantısı oluşturmanız gerekir. Daha fazla bilgi için bkz . Hizmet bağlantısını yönetme.

Paket sürümü oluşturma

Evrensel Paketler anlamsal sürüm oluşturma belirtimini izler ve adları ve sürüm numaralarıyla tanımlanabilir. Anlamsal sürüm numaraları, Şu biçimdeki üç sayısal bileşenden oluşur: Major.Minor.PatchMajor, Minor ve Patch.

Önceki sürümlerle geriye dönük uyumlu yeni özellikler eklendiğinde ikincil sürüm numarası artırılır, bu durumda ikincil sürümü artırır ve düzeltme eki sürümünü 0 'a (1.4.17 olarak 1.5.0) sıfırlarsınız. Önceki sürümlerle uyumluluğu bozabilecek önemli değişiklikler olduğunda ana sürüm numarası artırılır. Bu durumda, ana sürümü artırır ve ikincil ve düzeltme eki sürümlerini 0 ' a (2.6.5 olarak 3.0.0) sıfırlarsınız. Düzeltme eki sürüm numarası, yalnızca hata düzeltmeleri veya önceki sürümlerle uyumluluğu etkilemeyen diğer küçük değişiklikler yapıldığında artırılmalıdır (1.0.0 için 1.0.1).

Yeni bir paket yayımlarken, Evrensel Paketler görevi sizin için bir sonraki ana, ikincil veya düzeltme eki sürümünü otomatik olarak seçer.

Paketinizde sürüm oluşturmayı etkinleştirmek için YAML dosyanıza bir versionOption giriş ekleyin. Yeni paket sürümü yayımlama seçenekleri şunlardır: major, minor, patchveya custom.

custom Seçildiğinde paket sürümünüzü el ile belirtebilirsiniz. Diğer seçenekler akışınızdan en son paket sürümünü alır ve seçilen sürüm segmentini 1 artırır. Bu nedenle testPackage 1.0.0'ınız varsa ve ana seçeneği belirtirseniz yeni paketiniz testPackage 2.0.0 olacaktır. İkincil seçeneği belirtirseniz paket sürümünüz 1.1.0 olur ve düzeltme eki seçeneğini belirtirseniz paket sürümünüz 1.0.1 olur.

Seçeneğini belirlerseniz custom , aşağıdaki gibi bir versionPublish değer de belirtmeniz gerekir:

- 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>'
Bağımsız değişken Açıklama
publishDirectory Yayımlamak istediğiniz dosyaların konumu.
vstsFeedPublish Yayımlanması gereken proje ve akış adı. Kuruluş kapsamlı bir akışla çalışıyorsanız yalnızca akış adını belirtin.
vstsFeedPackagePublish Paket adı. Küçük harf olmalıdır. Yalnızca harf, sayı ve tire kullanın.
versionOption Bir sürüm oluşturma stratejisi seçin. Seçenekler: major, minor, patch, custom.
versionPublish Özel paket sürümü.
packagePublishDescription Paket içeriğinin açıklaması.

Evrensel Paket İndirme

Evrensel Paketi kuruluşunuzdaki bir akıştan indirmek için evrensel paket görevini aşağıdaki komutla download kullanın:

steps:
- task: UniversalPackages@0
  displayName: Download a Universal Package
  inputs:
    command: download
    vstsFeed: '<projectName>/<feedName>'
    vstsFeedPackage: '<packageName>'
    vstsPackageVersion: '<packageVersion>'
    downloadDirectory: '$(Build.SourcesDirectory)\someFolder'
Bağımsız değişken Açıklama
vstsFeed İndirilecek paketi barındıran Artifacts akışı.
vstsFeedPackage İndirilecek paketin adı.
vstsPackageVersion İndirilecek paketin sürümü.
downloadDirectory Paket hedef klasörü. Varsayılan değer: $(System.DefaultWorkingDirectory).

Dış kaynaktan Evrensel Paket indirmek için aşağıdaki kod parçacığını kullanın:

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
Bağımsız değişken Açıklama
feedsToUse Dış kaynaktan indirirken değerini external olarak ayarlayın.
externalFeedCredentials Dış akışa hizmet bağlantısının adı. Daha fazla bilgi için bkz . Hizmet bağlantılarını yönetme.
feeddownloadExternal Dış akışın adı.
packageDownloadExternal İndirmek istediğiniz paket adı.
versiondownloadExternal İndirmek istediğiniz paketin sürümü.

İpucu

Evrensel Paketin en son sürümünü indirmek için joker karakterler kullanabilirsiniz. Daha fazla bilgi için bkz . En son sürümü indirme.