The NuGet Restore action is used to populate a set of NuGet packages on the build server (usually prior to these packages being built into your project).
NuGet Restore
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.
Project Path
The path to a solution, packages.config or MSBuild project file.
Packages Directory
Specify the folder in which the packages are installed. [-PackagesDirectory]
Solution Directory
Specify the solution directory. Not valid when restoring packages for a solution file (specified as the Project Path). [-SolutionDirectory]
Command Line Version
Select the version of the NuGet command line that is installed on the agent. Some other settings and options may be unavailable depending which the command line version is selected.
Using
The Using drop down is populated with any property collector whose namespace matches the pattern defined by the NuGet Restore 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 Restore".
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.
Download
Sources
An optional list of NuGet Feed package sources (the default source location is nuget.org). [-Source]
Fallback Sources
A list of package sources to use as fallbacks in case the package isn't found in any of the primary or default sources. One source per line. [-FallbackSource]
Package Save Mode
The type of files to save after package installation. [-PackageSaveMode]
Use cache
If this is ticked, the local package Cache is checked first before going to NuGet or external sources. [-NoCache]
Download directly without populating any caches with metadata or binaries
Downloads packages directly without populating caches with any binaries or metadata. [-DirectDownload]
Build
MSBuild Version
The version of MSBuild to use with this command. Leave blank to default to the MSBuild executable in your path, or otherwise the highest installed version of MSBuild. [-MSBuildVersion].
MSBuild Path
The path to the MSBuild executable to use with the command. This takes precedence over the MSBuild Version. [-MSBuildPath].
Recursive
Restores all references projects for UWP and .NET Core projects. Does not apply to projects using packages.config.
Project To Project Timeout
Specifies the timeout for resolving project-to-project references in seconds. Leave blank or zero to use default. [-Project2ProjectTimeOut]
Settings
Configuration File
Location of the nuget.config file within your source control.
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). [-RequireConsent]
<packageRestore> <add key="enabled" value="true" /> </packageRestore>
For further information on the NuGet require consent feature please see the NuGet documentation.
Disable Parallel Processing
Tick to disable installing multiple packages in parallel. [-DisableParallelProcessing]
Force
Force all dependencies to be resolved even if the last restore was successful. This is equivalent to deleting project.assets.json. Does not apply to projects using packages.config. [-Force]
Enable Package Restore
When ticking this checkbox, it 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.