Publish and restore NuGet packages from the command line (NuGet.exe)

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

With Azure Artifacts, you can publish your NuGet packages to public or private feeds and share them with others based on your feed's visibility settings. This article will guide you through connecting to Azure Artifacts and publishing and restoring your NuGet packages.

Prerequisites

Connect to feed

  1. Select Artifacts, and then select your feed from the dropdown menu.

  2. Select Connect to feed.

    A screenshot showing how to connect to a feed.

  3. Select NuGet.exe.

    A screenshot the feed's connection type.

  4. Follow the instructions in Project setup to set up your nuget.config file.

    Project setup

  1. Select Build and Release > Packages.

  2. Select your feed from the dropdown menu or create one if you haven't.

  3. Select Connect to feed.

    Connect to feed - TFS

  4. Select NuGet and follow the instruction to connect to your feed.

    Connect to NuGet feed - TFS

Publish packages

Run the following command to publish your packages to your feed. Replace the placeholders with the appropriate information:

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

Note

The ApiKey is required, but you can use any arbitrary value when pushing to Azure Artifacts feeds.

  • Example:

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

Publish packages from external sources

  1. Create a personal access token (PAT) with packaging read and write scope.

  2. Add your package source to your nuget.config file. This will add your PAT to your nuget.config file. Store this file in a safe location, and make sure that you don't check it into source control. See NuGet sources for more details.

    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. Publish your package. See NuGet push for more details.

    nuget push <PACKAGE_PATH> -src <SOURCE_NAME> -ApiKey <ANY_STRING>
    
  • Example:

    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
    

Note

If your organization is using a firewall or a proxy server, make sure you allow Azure Artifacts Domain URLs and IP addresses.

Restore packages

Run the following command to restore your packages:

nuget.exe restore