diff --git a/source/Nuke.Common/Tools/DotNet/DotNet.Generated.cs b/source/Nuke.Common/Tools/DotNet/DotNet.Generated.cs
index 5bacfe12d..5167ca1df 100644
--- a/source/Nuke.Common/Tools/DotNet/DotNet.Generated.cs
+++ b/source/Nuke.Common/Tools/DotNet/DotNet.Generated.cs
@@ -1,4 +1,4 @@
-// Generated from https://github.com/nuke-build/nuke/blob/master/source/Nuke.Common/Tools/DotNet/DotNet.json
+// Generated from https://github.com/nuke-build/nuke/blob/master/source/Nuke.Common/Tools/DotNet/DotNet.json
using JetBrains.Annotations;
using Newtonsoft.Json;
diff --git a/source/Nuke.Common/Tools/DotNet/DotNet.json b/source/Nuke.Common/Tools/DotNet/DotNet.json
index 81dfb1cff..09aa008cf 100644
--- a/source/Nuke.Common/Tools/DotNet/DotNet.json
+++ b/source/Nuke.Common/Tools/DotNet/DotNet.json
@@ -9,6 +9,9 @@
"https://raw.githubusercontent.com/dotnet/docs/main/docs/core/tools/dotnet-clean.md",
"https://raw.githubusercontent.com/dotnet/docs/main/docs/core/tools/dotnet-publish.md",
"https://raw.githubusercontent.com/dotnet/docs/main/docs/core/tools/dotnet-nuget-push.md",
+ "https://raw.githubusercontent.com/dotnet/docs/main/docs/core/tools/dotnet-nuget-delete.md",
+ "https://raw.githubusercontent.com/dotnet/docs/main/docs/core/tools/dotnet-nuget-sign.md",
+ "https://raw.githubusercontent.com/dotnet/docs/main/docs/core/tools/dotnet-nuget-verify.md",
"https://raw.githubusercontent.com/dotnet/docs/main/docs/core/tools/dotnet-tool-install.md",
"https://raw.githubusercontent.com/dotnet/docs/main/docs/core/tools/dotnet-tool-uninstall.md",
"https://raw.githubusercontent.com/dotnet/docs/main/docs/core/tools/dotnet-tool-update.md",
@@ -1058,6 +1061,192 @@
]
}
},
+ {
+ "help": "The dotnet nuget delete command deletes or unlists a package from the server. For nuget.org, the action is to unlist the package.",
+ "postfix": "NuGetDelete",
+ "omitCommonProperties": true,
+ "definiteArgument": "nuget delete",
+ "settingsClass": {
+ "properties": [
+ {
+ "name": "PackageId",
+ "type": "string",
+ "format": "{value}",
+ "position": 1,
+ "help": "Package Id to delete. The exact behavior depends on the source. For local folders, for instance, the package is deleted; for nuget.org the package is unlisted."
+ },
+ {
+ "name": "PackageVersion",
+ "type": "string",
+ "format": "{value}",
+ "position": 2,
+ "help": "Package Version to delete. The exact behavior depends on the source. For local folders, for instance, the package is deleted; for nuget.org the package is unlisted."
+ },
+ {
+ "name": "Source",
+ "type": "string",
+ "format": "--source {value}",
+ "help": "Specifies the server URL. This option is required unless DefaultPushSource config value is set in the NuGet config file."
+ },
+ {
+ "name": "ApiKey",
+ "type": "string",
+ "format": "--api-key {value}",
+ "secret": true,
+ "help": "The API key for the server."
+ },
+ {
+ "name": "ForceEnglishOutput",
+ "type": "bool",
+ "format": "--force-english-output",
+ "help": "Forces all logged output in English."
+ },
+ {
+ "name": "NoServiceEndpoint",
+ "type": "bool",
+ "format": "--no-service-endpoint",
+ "help": "Doesn't append api/v2/package to the source URL. Option available since .NET Core 2.1 SDK."
+ },
+ {
+ "name": "Interactive",
+ "type": "bool",
+ "format": "--interactive",
+ "help": "Allows the command to stop and wait for user input or action. For example, to complete authentication. Available since .NET Core 3.0 SDK."
+ },
+ {
+ "name": "NonInteractive",
+ "type": "bool",
+ "format": "--non-interactive",
+ "help": "Doesn't prompt for user input or confirmations."
+ }
+ ]
+ }
+ },
+ {
+ "help": "The dotnet nuget sign command signs all the packages matching the first argument with a certificate. The certificate with the private key can be obtained from a file or from a certificate installed in a certificate store by providing a subject name or a SHA-1 fingerprint.",
+ "postfix": "NuGetSign",
+ "omitCommonProperties": true,
+ "definiteArgument": "nuget sign",
+ "settingsClass": {
+ "properties": [
+ {
+ "name": "TargetPath",
+ "type": "string",
+ "format": "{value}",
+ "position": 1,
+ "help": "Path of the package to sign."
+ },
+ {
+ "name": "CertificatePath",
+ "type": "string",
+ "format": "--certificate-path {value}",
+ "help": "Specifies the file path to the certificate to be used in signing the package."
+ },
+ {
+ "name": "CertificateStoreName",
+ "type": "string",
+ "format": "--certificate-store-name {value}",
+ "help": "Specifies the name of the X.509 certificate store to use to search for the certificate. Defaults to 'My', the X.509 certificate store for personal certificates. This option should be used when specifying the certificate via --certificate-subject-name or --certificate-fingerprint options."
+ },
+ {
+ "name": "CertificateStoreLocation",
+ "type": "string",
+ "format": "--certificate-store-location {value}",
+ "help": "Specifies the name of the X.509 certificate store use to search for the certificate. Defaults to 'CurrentUser', the X.509 certificate store used by the current user. This option should be used when specifying the certificate via --certificate-subject-name or --certificate-fingerprint options."
+ },
+ {
+ "name": "CertificateSubjectName",
+ "type": "string",
+ "format": "--certificate-subject-name {value}",
+ "help": "Specifies the subject name of the certificate used to search a local certificate store for the certificate. The search is a case-insensitive string comparison using the supplied value, which finds all certificates with the subject name containing that string, regardless of other subject values. The certificate store can be specified by --certificate-store-name and --certificate-store-location options."
+ },
+ {
+ "name": "CertificateFingerprint",
+ "type": "string",
+ "format": "--certificate-fingerprint {value}",
+ "help": "Specifies the fingerprint of the certificate used to search a local certificate store for the certificate. Starting with .NET 9, this option can be used to specify the SHA-1, SHA-256, SHA-384, or SHA-512 fingerprint of the certificate. However, a NU3043 warning is raised when a SHA-1 certificate fingerprint is used because it is no longer considered secure."
+ },
+ {
+ "name": "CertificatePassword",
+ "type": "string",
+ "format": "--certificate-password {value}",
+ "secret": true,
+ "help": "Specifies the certificate password, if needed. If a certificate is password protected but no password is provided, the sign command will fail."
+ },
+ {
+ "name": "HashAlgorithm",
+ "type": "DotNetNuGetSignHashAlgorithm",
+ "format": "--hash-algorithm {value}",
+ "help": "Hash algorithm to be used to sign the package. Defaults to SHA256. Possible values are SHA256, SHA384, and SHA512."
+ },
+ {
+ "name": "Output",
+ "type": "string",
+ "format": "--output {value}",
+ "help": "Specifies the directory where the signed package should be saved. If this option isn't specified, by default the original package is overwritten by the signed package."
+ },
+ {
+ "name": "Overwrite",
+ "type": "bool",
+ "format": "--overwrite",
+ "help": "Indicate that the current signature should be overwritten. By default the command will fail if the package already has a signature."
+ },
+ {
+ "name": "TimestampHashAlgorithm",
+ "type": "DotNetNuGetSignHashAlgorithm",
+ "format": "--timestamp-hash-algorithm {value}",
+ "help": "Hash algorithm to be used by the RFC 3161 timestamp server. Defaults to SHA256."
+ },
+ {
+ "name": "Timestamper",
+ "type": "string",
+ "format": "--timestamper {value}",
+ "help": "URL to an RFC 3161 timestamping server."
+ },
+ {
+ "name": "Verbosity",
+ "type": "DotNetVerbosity",
+ "format": "--verbosity {value}",
+ "help": "Sets the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic]."
+ }
+ ]
+ }
+ },
+ {
+ "help": "The dotnet nuget verify command verifies a signed NuGet package.",
+ "postfix": "NuGetVerify",
+ "omitCommonProperties": true,
+ "definiteArgument": "nuget verify",
+ "settingsClass": {
+ "properties": [
+ {
+ "name": "TargetPath",
+ "type": "string",
+ "format": "{value}",
+ "position": 1,
+ "help": "Path of the package to verify."
+ },
+ {
+ "name": "CertificateFingerprint",
+ "type": "string",
+ "format": "--certificate-fingerprint {value}",
+ "help": "Verify that the signer certificate matches with one of the specified SHA256 fingerprints. This option can be supplied multiple times to provide multiple fingerprints."
+ },
+ {
+ "name": "ConfigFile",
+ "type": "string",
+ "format": "--configfile {value}",
+ "help": "The NuGet configuration file (nuget.config) to use."
+ },
+ {
+ "name": "Verbosity",
+ "type": "DotNetVerbosity",
+ "format": "--verbosity {value}",
+ "help": "Sets the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic]."
+ }
+ ]
+ }
+ },
{
"help": "Adds a NuGet source.",
"postfix": "NuGetAddSource",
@@ -1968,6 +2157,14 @@
"warn",
"error"
]
+ },
+ {
+ "name": "DotNetNuGetSignHashAlgorithm",
+ "values": [
+ "sha256",
+ "sha384",
+ "sha512"
+ ]
}
]
}
diff --git a/source/Nuke.Common/Tools/NuGet/NuGet.Generated.cs b/source/Nuke.Common/Tools/NuGet/NuGet.Generated.cs
index c1f303036..b1772aba1 100644
--- a/source/Nuke.Common/Tools/NuGet/NuGet.Generated.cs
+++ b/source/Nuke.Common/Tools/NuGet/NuGet.Generated.cs
@@ -1,4 +1,4 @@
-// Generated from https://github.com/nuke-build/nuke/blob/master/source/Nuke.Common/Tools/NuGet/NuGet.json
+// Generated from https://github.com/nuke-build/nuke/blob/master/source/Nuke.Common/Tools/NuGet/NuGet.json
using JetBrains.Annotations;
using Newtonsoft.Json;
diff --git a/source/Nuke.Common/Tools/NuGet/NuGet.json b/source/Nuke.Common/Tools/NuGet/NuGet.json
index ddbafb6e5..41a669f28 100644
--- a/source/Nuke.Common/Tools/NuGet/NuGet.json
+++ b/source/Nuke.Common/Tools/NuGet/NuGet.json
@@ -96,6 +96,222 @@
]
}
},
+ {
+ "postfix": "Delete",
+ "definiteArgument": "delete",
+ "settingsClass": {
+ "properties": [
+ {
+ "name": "PackageId",
+ "type": "string",
+ "format": "{value}",
+ "position": 1,
+ "help": "Package Id to delete. The exact behavior depends on the source. For local folders, for instance, the package is deleted; for nuget.org the package is unlisted."
+ },
+ {
+ "name": "PackageVersion",
+ "type": "string",
+ "format": "{value}",
+ "position": 2,
+ "help": "Package Version to delete. The exact behavior depends on the source. For local folders, for instance, the package is deleted; for nuget.org the package is unlisted."
+ },
+ {
+ "name": "ApiKey",
+ "type": "string",
+ "format": "-ApiKey {value}",
+ "secret": true,
+ "help": "The API key for the target repository. If not present, the one specified in %AppData%\\NuGet\\NuGet.Config is used."
+ },
+ {
+ "name": "ConfigFile",
+ "type": "string",
+ "format": "-ConfigFile {value}",
+ "help": "The NuGet configuration file to apply. If not specified, %AppData%\\NuGet\\NuGet.Config (Windows) or ~/.nuget/NuGet/NuGet.Config (Mac/Linux) is used."
+ },
+ {
+ "name": "ForceEnglishOutput",
+ "type": "bool",
+ "format": "-ForceEnglishOutput",
+ "help": "(3.5+) Forces nuget.exe to run using an invariant, English-based culture."
+ },
+ {
+ "name": "NonInteractive",
+ "type": "bool",
+ "format": "-NonInteractive",
+ "help": "Suppresses prompts for user input or confirmations."
+ },
+ {
+ "name": "NoPrompt",
+ "type": "bool",
+ "format": "-NoPrompt",
+ "help": "Do not prompt when deleting."
+ },
+ {
+ "name": "Source",
+ "type": "string",
+ "format": "-Source {value}",
+ "help": "Specifies the server URL. NuGet identifies a UNC or local folder source and simply copies the file there instead of pushing it using HTTP. Also, starting with NuGet 3.4.2, this is a mandatory parameter unless the NuGet.Config file specifies a DefaultPushSource value (see Configuring NuGet behavior)."
+ },
+ {
+ "name": "Verbosity",
+ "type": "NuGetVerbosity",
+ "format": "-Verbosity {value}",
+ "help": "Specifies the amount of detail displayed in the output: normal, quiet, detailed."
+ }
+ ]
+ }
+ },
+ {
+ "postfix": "Sign",
+ "definiteArgument": "sign",
+ "settingsClass": {
+ "properties": [
+ {
+ "name": "TargetPath",
+ "type": "string",
+ "format": "{value}",
+ "position": 1,
+ "help": "Path of the package to sign."
+ },
+ {
+ "name": "CertificateFingerprint",
+ "type": "string",
+ "format": "-CertificateFingerprint {value}",
+ "help": "Specifies the fingerprint to be used to search for the certificate in a local certificate store."
+ },
+ {
+ "name": "CertificatePassword",
+ "type": "string",
+ "format": "-CertificatePassword {value}",
+ "secret": true,
+ "help": "Specifies the certificate password, if needed. If a certificate is password protected but no password is provided, the command will prompt for a password at run time, unless the -NonInteractive option is passed."
+ },
+ {
+ "name": "CertificatePath",
+ "type": "string",
+ "format": "-CertificatePath {value}",
+ "help": "Specifies the file path to the certificate to be used in signing the package."
+ },
+ {
+ "name": "CertificateStoreLocation",
+ "type": "string",
+ "format": "-CertificateStoreLocation {value}",
+ "help": "Specifies the name of the X.509 certificate store use to search for the certificate. Defaults to 'CurrentUser', the X.509 certificate store used by the current user. This option should be used when specifying the certificate via -CertificateSubjectName or -CertificateFingerprint options."
+ },
+ {
+ "name": "CertificateStoreName",
+ "type": "string",
+ "format": "-CertificateStoreName {value}",
+ "help": "Specifies the name of the X.509 certificate store to use to search for the certificate. Defaults to 'My', the X.509 certificate store for personal certificates. This option should be used when specifying the certificate via -CertificateSubjectName or -CertificateFingerprint options."
+ },
+ {
+ "name": "CertificateSubjectName",
+ "type": "string",
+ "format": "-CertificateSubjectName {value}",
+ "help": "Specifies the subject name of the certificate used to search a local certificate store for the certificate. The search is a case-insensitive string comparison using the supplied value, which will find all certificates with the subject name containing that string, regardless of other subject values. The certificate store can be specified by -CertificateStoreName and -CertificateStoreLocation options."
+ },
+ {
+ "name": "HashAlgorithm",
+ "type": "NuGetSignHashAlgorithm",
+ "format": "-HashAlgorithm {value}",
+ "help": "Hash algorithm to be used to sign the package. Defaults to SHA256. Possible values are SHA256, SHA384, and SHA512."
+ },
+ {
+ "name": "OutputDirectory",
+ "type": "string",
+ "format": "-OutputDirectory {value}",
+ "help": "Specifies the directory where the signed package should be saved. By default the original package is overwritten by the signed package."
+ },
+ {
+ "name": "Overwrite",
+ "type": "bool",
+ "format": "-Overwrite",
+ "help": "Switch to indicate if the current signature should be overwritten. By default the command will fail if the package already has a signature."
+ },
+ {
+ "name": "Timestamper",
+ "type": "string",
+ "format": "-Timestamper {value}",
+ "help": "URL to an RFC 3161 timestamping server."
+ },
+ {
+ "name": "TimestampHashAlgorithm",
+ "type": "NuGetSignHashAlgorithm",
+ "format": "-TimestampHashAlgorithm {value}",
+ "help": "Hash algorithm to be used by the RFC 3161 timestamp server. Defaults to SHA256."
+ },
+ {
+ "name": "ConfigFile",
+ "type": "string",
+ "format": "-ConfigFile {value}",
+ "help": "The NuGet configuration file to apply. If not specified, %AppData%\\NuGet\\NuGet.Config (Windows) or ~/.nuget/NuGet/NuGet.Config (Mac/Linux) is used."
+ },
+ {
+ "name": "ForceEnglishOutput",
+ "type": "bool",
+ "format": "-ForceEnglishOutput",
+ "help": "(3.5+) Forces nuget.exe to run using an invariant, English-based culture."
+ },
+ {
+ "name": "NonInteractive",
+ "type": "bool",
+ "format": "-NonInteractive",
+ "help": "Suppresses prompts for user input or confirmations."
+ },
+ {
+ "name": "Verbosity",
+ "type": "NuGetVerbosity",
+ "format": "-Verbosity {value}",
+ "help": "Specifies the amount of detail displayed in the output: normal, quiet, detailed."
+ }
+ ]
+ }
+ },
+ {
+ "postfix": "Verify",
+ "definiteArgument": "verify",
+ "settingsClass": {
+ "properties": [
+ {
+ "name": "TargetPath",
+ "type": "string",
+ "format": "-Signatures {value}",
+ "position": 1,
+ "help": "Path of the package to verify Signatures."
+ },
+ {
+ "name": "CertificateFingerprint",
+ "type": "string",
+ "format": "-CertificateFingerprint {value}",
+ "help": "Specifies one or more SHA-256 certificate fingerprints of certificates(s) which signed packages must be signed with. A certificate SHA-256 fingerprint is a SHA-256 hash of the certificate. Multiple inputs should be semicolon separated."
+ },
+ {
+ "name": "ConfigFile",
+ "type": "string",
+ "format": "-ConfigFile {value}",
+ "help": "The NuGet configuration file to apply. If not specified, %AppData%\\NuGet\\NuGet.Config (Windows) or ~/.nuget/NuGet/NuGet.Config (Mac/Linux) is used."
+ },
+ {
+ "name": "ForceEnglishOutput",
+ "type": "bool",
+ "format": "-ForceEnglishOutput",
+ "help": "(3.5+) Forces nuget.exe to run using an invariant, English-based culture."
+ },
+ {
+ "name": "NonInteractive",
+ "type": "bool",
+ "format": "-NonInteractive",
+ "help": "Suppresses prompts for user input or confirmations."
+ },
+ {
+ "name": "Verbosity",
+ "type": "NuGetVerbosity",
+ "format": "-Verbosity {value}",
+ "help": "Specifies the amount of detail displayed in the output: normal, quiet, detailed."
+ }
+ ]
+ }
+ },
{
"postfix": "Pack",
"definiteArgument": "pack",
@@ -637,6 +853,14 @@
"Highest",
"Ignore"
]
+ },
+ {
+ "name": "NuGetSignHashAlgorithm",
+ "values": [
+ "sha256",
+ "sha384",
+ "sha512"
+ ]
}
]
}