Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clarify the new framework based environment variables for plugin discovery #1599

Merged
merged 2 commits into from
Sep 7, 2019
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,9 +66,11 @@ After 1 minute of inactivity a plugin is considered idle and is shut down.
## Plugin installation and discovery

The plugins will be discovered via a convention based directory structure.
CI/CD scenarios and power users can use an environment variable to override the behavior.
CI/CD scenarios and power users can use environment variables to override the behavior. Note that `NUGET_NETFX_PLUGIN_PATHS` and `NUGET_NETCORE_PLUGIN_PATHS` are only available with 5.3+ version of the NuGet tooling and later.

- `NUGET_PLUGIN_PATHS` - defines the plugins that will be used for that NuGet process, priority reserved. If this environment variable is set, it overrides the convention based discovery.
- `NUGET_NETFX_PLUGIN_PATHS` - defines the plugins that will be used by the .NET Framework based tooling (NuGet.exe/MSBuild.exe/Visual Studio). Takes precedence over `NUGET_PLUGIN_PATHS`. (NuGet version 5.3+ only)
- `NUGET_NETCORE_PLUGIN_PATHS` - defines the plugins that will be used by the .NET Core based tooling (dotnet.exe). Takes precedence over `NUGET_PLUGIN_PATHS`. (NuGet version 5.3+ only)
- `NUGET_PLUGIN_PATHS` - defines the plugins that will be used for that NuGet process, priority reserved. If this environment variable is set, it overrides the convention based discovery. Ignored if either of the framework specific variables is specified.
- User-location, the NuGet Home location in `%UserProfile%/.nuget/plugins`. This location cannot be overriden. A different root directory will be used for .NET Core and .NET Framework plugins.

| Framework | Root discovery location |
Expand Down Expand Up @@ -294,4 +296,4 @@ Protocol Version *2.0.0* messages
* Password
* Message
* List of Auth Types
* MessageResponseCode
* MessageResponseCode