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:
Option
Description
NuGet.exe
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.
Version
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.
Properties
Semicolon or new-line separated list of package creation properties. For example, to make a release build, you define here Configuration=Release.
Options
Create tool package — check the box to place the output files of the project to the tool folder. 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.