Komut satırından NuGet paketlerini yayımlama (NuGet.exe)

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Bu makale, projenizi ayarlama ve NuGet komut satırı arabirimini kullanarak NuGet paketlerinizi yayımlama işleminde size yol gösterir.

Önkoşullar

Ürün Gereksinimleri
Azure DevOps - Bir Azure DevOps organizasyonu.
- Azure DevOps projesi.
- Azure Artifacts feed.
- nuget.exe veya sonraki bir sürümü 4.8.0.5385 indirip yükleyin. İptaller ve zaman aşımları için önemli hata düzeltmeleri içeren NuGet 5.5.x veya üzerini öneririz.

Azure Artifacts Kimlik Bilgisi Sağlayıcısını ayarlama

Azure Artifacts Kimlik Bilgisi Sağlayıcısı, Azure Artifacts akışlarınızda güvenli kimlik doğrulaması sağlar. nuget.exeile kullanmak için önce NuGet'in eklenti arama yoluna eklemeniz gerekir. Ayrıntılar için bkz. Eklenti Yükleme ve bulma. Eklenti eklendikten sonra işletim sisteminiz için yükleme adımlarını izleyin:

Azure Artifacts Kimlik Bilgisi Sağlayıcısı'nı yüklemek için aşağıdaki yöntemlerden birini kullanın:

El ile yükleme

  1. En son Microsoft.NetFx48.NuGet.CredentialProvider.zip sürümünü indirin.

  2. Zip dosyasını ayıklayın.

  3. Çıkarılan arşivdeki netfx klasörünü %UserProfile%/.nuget/plugins/ konumuna kopyalayın. klasör netfx , nuget.exe uyumluluk için gereklidir.

Yardımcı betiği kullanarak yükleyin

Alternatif olarak, kolaylaştırılmış bir yükleme için otomatik yardımcı betiği kullanabilirsiniz. PowerShell 5.1 veya sonraki bir sürümüne sahip olduğunuzdan emin olun ve şunu çalıştırın:

iex "& { $(irm https://aka.ms/install-artifacts-credprovider.ps1) } -AddNetfx"

Daha fazla bilgi için Azure Artifacts Kimlik Bilgisi Sağlayıcısı deposuna bakın.

Akışa bağlanma

  1. Azure DevOps kuruluşunuzda oturum açın ve projenize gidin.

  2. Artifacts'i seçin ve ardından açılır menüden beslemenizi seçin.

  3. Select Bağlanbeslemeye, ardından sol gezinme bölmesinden NuGet.exe öğesini seçin.

  4. Projenize, .csproj veya .sln dosyanızla aynı klasöre bir nuget.config dosyası ekleyin. Sağlanan XML parçacığını dosyanıza yapıştırın. Kod parçacığı aşağıdaki gibi görünmelidir:

    • Kuruluş genelinde akış:

      <?xml version="1.0" encoding="utf-8"?>
      <configuration>
        <packageSources>
          <clear />
          <add key="<SOURCE_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" />
        </packageSources>
      </configuration>
      
    • Proje kapsamına sahip akış :

      <?xml version="1.0" encoding="utf-8"?>
      <configuration>
        <packageSources>
          <clear />
          <add key="<SOURCE_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" />
        </packageSources>
      </configuration>
      
  1. Azure DevOps sunucunuzda oturum açın ve projenize gidin.

  2. Yapıtlar'ı seçin ve ardından akışınızı seçin.

  3. Akışa Bağlanseçeneğini belirleyin ve ardından sol gezinti bölmesinden NuGet.exe seçin.

  4. Akışınıza bağlanmak için Project kurulumu bölümündeki yönergeleri izleyin.

Paketleri aynı kuruluştaki bir akışa yayımlama

Not

Paketleri bir akışa yayımlamak için Akış Yayımcısı (Katkı Sağlayıcı) veya üzeri olmanız gerekir. Daha fazla ayrıntı için bkz . İzinleri yönetme.

Akışınızda bir paket yayımlamak için aşağıdaki komutu çalıştırın. Yer tutucuları uygun değerlerle değiştirin:

nuget push <PACKAGE_PATH> -src https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json -ApiKey <ANY_STRING>

Örnek:

nuget push MyPackage.5.0.2.nupkg -src https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json -ApiKey AZ

Not

api-key gereklidir, ancak bir Azure Artifacts beslemesine yayımlarken değeri olarak herhangi bir dize sağlayabilirsiniz.

Paketleri başka bir kuruluştaki bir akışa yayımlama

NuGet paketlerinizi farklı bir Azure DevOps kuruluşundaki bir akışta yayımlamak için öncelikle hedef kuruluşta bir kişisel erişim belirteci (PAT) oluşturmanız gerekir.

  1. Hedef akışı barındıran kuruluşa gidin ve kişisel erişim belirteci (PAT) oluşturun; PaketlemeOkuma & yazma kapsamıyla.

  2. Paket kaynağınızı nuget.config dosyanıza eklemek için aşağıdaki komutu çalıştırın. Bu işlem PAT'nizi nuget.config dosyanıza ekler. Bu dosyayı güvenli bir konumda depolayın ve kaynak denetiminde denetlemediğinizden emin olun.

    nuget sources Add -Name <SOURCE_NAME> -Source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json -UserName <USER_NAME> -Password <PERSONAL_ACCESS_TOKEN> -config <PATH_TO_NUGET_CONFIG_FILE>
    
  3. Paketinizi yayımlamak için aşağıdaki komutu çalıştırın:

    nuget push <PACKAGE_PATH> -src <SOURCE_NAME> -ApiKey <ANY_STRING>
    

Örnek:

nuget sources Add -Name "MySource" -Source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json -UserName MyUserName -Password YourPersonalAccessToken -config ./nuget.config
nuget push nupkgs/mypackage.1.1.8.nupkg -src MySource -ApiKey AZ

Not

Kuruluşunuz bir güvenlik duvarı veya ara sunucu kullanıyorsa, Azure Artifacts Etki Alanı URL'lerine ve IP adreslerine izin verdiğinizden emin olun.