The NuGet Install action is used to install one or more NuGet packages into the specified output directory.
NuGet Install
Name
A friendly name for this action (will be displayed in the actions workflow area).
Enabled
Determines if this action will be run within the relevant stage.
Package Id / Config file
This is either the package Id (as found on NuGet.org, example provided below), or the location of a package.config file.
Output directory
This is the path of the folder to install the package to.
Sources
An optional list of NuGet Feed package sources (the default source location is nuget.org).
Version
The version number of the package to install.
Configuration File
The user specific configuration file (packages.config). If not specified, file %AppData%\NuGet\NuGet.config is used as configuration file.
Using
The Using drop down is populated with any property collector whose namespace matches the pattern defined by the NuGet Install action. The pattern for this action is ^NuGet.*
If you create a property collector for this action, make sure you select the Path Finder PlugIn type and give it a name that will match the pattern above in blue. Example names listed here, search the table's Plugin column for "NuGet Install".
For more in-depth explanations on property collectors see Property Collectors.
Alternatively, you can select the Custom option from the Using drop down list and specify a path in the resulting input field that will be displayed. Please read Why it's a good idea to use a property collector before using this option.
Settings
Exclude version in folder name
By default a NuGet package folder contains the version number of the package (eg (SolutionDir)\packages\packagename.x.x.x\)
Install prerelease packages
NuGet requires permission to be granted to download and install prerelease packages. Packages which contain the '-Pre' suffix will require this option to be ticked.
Use cache
If this is ticked, the local package Cache is checked first before going to NuGet or external sources.
Require consent
As of NuGet version 2.0 a privacy-related constraint option for restores from introduced. When ticked NuGet will check to see if package restore consent has been granted before installing package(s). If ticked NuGet will look for the presence of the following within your NuGet.config file (if not present a build error will occur).
<packageRestore> <add key="enabled" value="true" /> </packageRestore>
For further information on the NuGet require consent feature please see the NuGet documentation
Solution Directory
The relative or absolute directory to use when restoring packages for a solution. This option is not valid when restoring packages for a solution file. In this scenario, $(SolutionDir)\packages is used as the packages directory.
Enable Package Restore
When ticking this check box adds the relevant system environment variable 'EnableNuGetPackageRestore = true'. This is the equivalent of clicking “Allow NuGet to download missing packages during build' ticked within Visual Studio.
Options
Log standard output
If this is ticked, the command line output is written to the build log.
Timeout (in seconds)
How long to wait for the action to finish running before timing out. Leaving this blank (or zero) will default to 86400 seconds (24 hours).
Treat failure as warning
Tick to continue build on failure marking the action with a warning status.
Ignore warnings
If this is ticked, any warnings logged will not mark the action with a warning status.
Environment
Environment Variables
Multiple environment variables can be defined - one per line. These are set before the command line is run.
Log environment variables
If this is ticked, environment variable values are written to the build log.
Generate system environment variables
Tick this checkbox to set up a list of new environment variables prefixed with 'ContinuaCI.' for all current system expression objects and variables.
Mask sensitive variable values in system environment variables
This checkbox is visible only if the 'Generate system environment variables' checkbox is ticked.
If this is ticked, the values of any variables marked as sensitive will be masked with **** when setting system environment variables. Clear this to expose the values.