You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Cake.Common.Tools.SignTool is currently missing support for several flags relating to certificate locations.
All of these should be optional, I'd propose the following additional properties are added to the SignToolSignSettings class:
signtool sign flag
Property Name
Type
/ac
AdditionalCertificatePath
string
/s
CertStoreName
string
/sm
UseMachineStore
bool
Additionally, the TimeStampUri property of SignToolSettings is currently mandatory due to the following code in SignToolSignRunner.cs:
if (settings.TimeStampUri == null)
{
const string format = "{0}: Timestamp server URL is required but not specified.";
var message = string.Format(CultureInfo.InvariantCulture, format, GetToolName());
throw new CakeException(message);
}
Using a timestamp server should be completely optional as it significantly slows down the signing process and is often unnecessary for things such as internal release builds.
Also, it's worth noting that it's not possible to use ProcessArgumentBuilder's Append() or Prepend() methods to add any parameters to SignTool either, as Prepend() inserts them before the "sign" parameter of "signtool.exe sign", and Append() inserts them after the list of files to sign. Currently we're using reflection to insert into the private _tokens list within ProcessArgument which is obviously not ideal.
The text was updated successfully, but these errors were encountered:
@ben-wallis There is a workaround, as suggest by Joseph Musser: create a new instance of ProcessArgumentBuilder, merge arguments and return it as result.
Cake.Common.Tools.SignTool
is currently missing support for several flags relating to certificate locations.All of these should be optional, I'd propose the following additional properties are added to the
SignToolSignSettings
class:/ac
string
/s
string
/sm
bool
Additionally, the
TimeStampUri
property ofSignToolSettings
is currently mandatory due to the following code inSignToolSignRunner.cs
:Using a timestamp server should be completely optional as it significantly slows down the signing process and is often unnecessary for things such as internal release builds.
Also, it's worth noting that it's not possible to use
ProcessArgumentBuilder
'sAppend()
orPrepend()
methods to add any parameters to SignTool either, asPrepend()
inserts them before the "sign" parameter of "signtool.exe sign", andAppend()
inserts them after the list of files to sign. Currently we're using reflection to insert into the private_tokens
list withinProcessArgument
which is obviously not ideal.The text was updated successfully, but these errors were encountered: