API Reference
Publish-NugetPackage
Pushes NuGet packages to a feed using dotnet nuget push.
Remarks
Searches the provided -Path roots for *.nupkg files and pushes them using the .NET SDK. Use -SkipDuplicate for CI-friendly, idempotent runs.
Examples
Publish all packages from a Release folder
PS>
Publish-NugetPackage -Path '.\bin\Release' -ApiKey $env:NUGET_API_KEY -SkipDuplicate
Publishes all .nupkg files under the folder; safe to rerun in CI.
Publish to a custom feed
PS>
Publish-NugetPackage -Path '.\artifacts' -ApiKey 'YOUR_KEY' -Source 'https://api.nuget.org/v3/index.json'
Use a different source URL for private feeds (e.g. GitHub Packages, Azure Artifacts).
Publish to a saved Azure Artifacts profile
PS>
Publish-NugetPackage -Path '.\artifacts' -ProfileName 'Company' -InstallPrerequisites -SkipDuplicate
Resolves the Azure Artifacts NuGet v3 source from the saved profile, installs missing credential-provider prerequisites when requested, and lets the Azure Artifacts Credential Provider handle Entra-backed authentication.
Common Parameters
This command supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable.
For more information, see about_CommonParameters.
Syntax
Publish-NugetPackage -ApiKey <String> -Path <String[]> [-SkipDuplicate] [-Source <String>] [<CommonParameters>]#SourceParameters
- ApiKey String
- API key used to authenticate against the NuGet feed. For Azure Artifacts profiles this defaults to a non-secret placeholder used by NuGet clients; for GitHub Packages profiles this defaults from GITHUB_TOKEN or GH_TOKEN.
- Path String[]
- Directory to search for NuGet packages.
- SkipDuplicate SwitchParameter
- When set, passes --skip-duplicate to dotnet nuget push. This makes repeated publishing runs idempotent when the package already exists.
- Source String
- NuGet feed URL.
Publish-NugetPackage [-ApiKey <String>] [-InstallPrerequisites] -Path <String[]> -ProfileName <String> [-SkipDuplicate] [<CommonParameters>]#ProfileParameters
- ApiKey String
- API key used to authenticate against the NuGet feed. For Azure Artifacts profiles this defaults to a non-secret placeholder used by NuGet clients; for GitHub Packages profiles this defaults from GITHUB_TOKEN or GH_TOKEN.
- InstallPrerequisites SwitchParameter
- Installs missing private-gallery prerequisites before profile-backed Azure Artifacts package publishing.
- Path String[]
- Directory to search for NuGet packages.
- ProfileName String
- Saved private gallery profile name for Azure Artifacts package publishing.
- SkipDuplicate SwitchParameter
- When set, passes --skip-duplicate to dotnet nuget push. This makes repeated publishing runs idempotent when the package already exists.