Komut satırından (dotnet) NuGet paketlerini yayımlama ve geri yükleme

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Azure Artifacts, NuGet paketlerinizi akışınıza yayımlamanıza ve akışınızdan geri yüklemenize olanak tanıyarak bunları akışınızın görünürlük ayarlarına göre başkalarıyla paylaşmanızı sağlar. Bu kılavuz, dotnet komut satırı arabirimini kullanarak paketleri yayımlamak veya geri yüklemek için projenizi yapılandırma işleminde size yol gösterir.

Önkoşullar

  • Bir Azure DevOps kuruluşu ve bir proje. Henüz yapmadıysanız bir kuruluş veya proje oluşturun.

  • Azure Artifacts akışı. Henüz yoksa yeni bir akış oluşturun.

  • Azure Artifacts Kimlik Bilgisi Sağlayıcısı'nı indirin ve yükleyin.

  • .NET Core SDK'sı (2.1.400+) indirip yükleyin.

Beslenen Bağlan

  1. Yapıtlar'ı seçin ve ardından açılan menüden akışınızı seçin.

  2. Beslemek için Bağlan seçin ve ardından soldaki NuGet bölümünden dotnet'i seçin.

  3. Csproj veya sln dosyanızla aynı klasörde bir nuget.config dosyası oluşturun. Aşağıdaki XML parçacığını kopyalayın ve yer tutucuları ilgili bilgilerle değiştirerek yeni dosyanıza yapıştırın:

  • Kuruluş kapsamlı akış:

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

    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
      <packageSources>
        <clear />
        <add key="<FEED_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'ı ve ardından akışınızı seçin.

  3. Akışa Bağlan'i seçin ve ardından sol gezinti bölmesinden dotnet'i seçin.

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

    Azure DevOps Server 2020 ve 2022'de dotnet ile bir akışa bağlanmayı gösteren ekran görüntüsü.

Not

dotnet, Azure DevOps Server 2019'da desteklenmez.

Paketleri yayımlama

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

dotnet nuget push --source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json --api-key <ANY_STRING> <PACKAGE_PATH> 

Örnek: dotnet nuget push --source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json --api-key AZ bin/MyPackage.5.0.2.nupkg

Not

api-key yalnızca yer tutucu olarak kullanılır.

Dış kaynaklardan paketleri yayımlama

  1. Paketleme okuma ve yazma kapsamına sahip bir kişisel erişim belirteci (PAT) oluşturun.

  2. PERSONAL_ACCESS_TOKEN> yer tutucusunu< kişisel erişim belirtecinizle değiştirin ve ardından aşağıdaki komutu çalıştırarak paket kaynağınızı nuget.config dosyanıza ekleyin. Bu, PAT'nizi nuget.config'inize ekler. Bu dosyayı güvenli bir şekilde depolayıp kaynak denetiminde denetlememeye dikkat edin.

    dotnet nuget add source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json --name <SOURCE_NAME> --username <USER_NAME> --password <PERSONAL_ACCESS_TOKEN> --configfile <PATH_TO_NUGET_CONFIG_FILE>
    
  3. Paketinizi yayımlayın:

    dotnet nuget push --source <SOURCE_NAME> --api-key <ANY_STRING> <PACKAGE_PATH>
    

Örnek: dotnet nuget add source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json --name MySource --username MyUserName --password MyPersonalAccessToken --configfile ./nuget.configdotnet nuget push --source MySource --api-key AZ nupkgs/mypackage.1.1.0.nupkg

Not

Kuruluşunuz bir güvenlik duvarı veya ara sunucu kullanıyorsa Azure Artifacts Etki Alanı URL'lerine ve IP adreslerine izin verin.

Paketleri geri yükleme

Paketlerinizi geri yüklemek için aşağıdaki komutu çalıştırın. Bayrağı --interactive , kullanıcıdan kimlik bilgileri istemesi için kullanılır:

dotnet restore --interactive