TeamCity Cloud 2024.03 Help

NuGet Pack

The NuGet Pack build runner allows building a NuGet package from a given specification file. If you want to publish this package, add a NuGet Publish build step.

Supported Operating Systems:
NuGet build runners are supported on build agents running Windows OS by default. Linux and macOS are supported when Mono is installed on the agent (only NuGet 3.3+ on Mono 4.4.2+ is supported).

Configure the following options of the NuGet Pack runner:




Select a NuGet version to use from the drop-down menu (NuGet must be installed), or specify a custom path to NuGet.exe.

Specification files

Enter path(s) to csproj or nuspec file(s). You can specify as many specification files here as you need. Wildcards are supported. If you specify here a csproj file, you won't have to redefine the version number and copyright information in the spec file.

Prefer project files to .nuspec

Check the box to use the project file (if exists,that is .csproj or .vbproj) for every matched .nuspec file.


Specify the package version. Overrides the version number from the nuspec file. You can use the TeamCity variable %build.number% here.

Base Directory

Select an option from the drop-down menu to specify the directory where the files defined in the nuspec file are located (the directory against which the paths in <files></files> from nuspec are resolved; usually some bin directory). If Use explicit directory is enabled and this field is left blank, TeamCity will use the build checkout directory as the base directory.

Output directory

Specify the path where to put the generated NuGet package.

Сlean output directory

Clean the directory before packing.

Publish created packages to build artifacts

If you are using TeamCity as a NuGet repository, select this option to publish packages to the TeamCity's NuGet server and be able to use them as regular TeamCity artifacts.

Exclude files

Specify one or more wildcard patterns to exclude when creating a package. Equivalent to the -Exclude argument of NuGet.exe.


Semicolon or new-line separated list of package creation properties. For example, to make a release build, you define here Configuration=Release.


Create tool package — check the box to place the output files of the project to the tool directory.
Include sources and symbols — check the box to create a package containing sources and symbols. When specified with a nuspec, it creates a regular NuGet package file and the corresponding symbols package (needed for publishing the sources to Symbolsource)

Command line parameters

Set additional command line parameters to be passed to NuGet.exe.

Last modified: 10 November 2021