build: sign release package assemblies

This commit is contained in:
Meik
2026-07-01 14:58:38 +02:00
parent 9a07024fdd
commit c95a6c1145
3 changed files with 41 additions and 8 deletions

View File

@@ -8,6 +8,12 @@
<M42PackageTemplateDir Condition="'$(M42PackageTemplateDir)' == ''">$(MSBuildProjectDirectory)\..\PackageTemplate</M42PackageTemplateDir>
<M42PackageOutputRoot Condition="'$(M42PackageOutputRoot)' == ''">$(MSBuildProjectDirectory)\..\artifacts</M42PackageOutputRoot>
<M42PackageBuildScript Condition="'$(M42PackageBuildScript)' == ''">$(MSBuildProjectDirectory)\BuildM42Package.ps1</M42PackageBuildScript>
<M42SignAssemblies Condition="'$(M42SignAssemblies)' == '' AND $([System.String]::Copy('$(Configuration)').StartsWith('Release'))">true</M42SignAssemblies>
<M42SignAssemblies Condition="'$(M42SignAssemblies)' == ''">false</M42SignAssemblies>
<M42SignTool Condition="'$(M42SignTool)' == ''">$(MSBuildProjectDirectory)\..\..\..\Common Code\Tools\signtool.exe</M42SignTool>
<M42SignTimestampUrl Condition="'$(M42SignTimestampUrl)' == ''">http://rfc3161timestamp.globalsign.com/advanced</M42SignTimestampUrl>
<M42SignDescription Condition="'$(M42SignDescription)' == ''">C4IT - F4SD - WebApi for M42</M42SignDescription>
<M42SignOptions Condition="'$(M42SignOptions)' == ''">/a</M42SignOptions>
</PropertyGroup>
<Target Name="M42_BuildAllRids"
@@ -75,6 +81,23 @@
Condition="'$(M42RootAssembliesDir)' != ''" />
</Target>
<Target Name="M42_SignPackageAssemblies"
BeforeTargets="M42_BuildPackage"
Condition="'$(RuntimeIdentifier)' == '' AND '$(M42SignAssemblies)' == 'true'">
<ItemGroup>
<_M42AssembliesToSign Include="$(M42BasePackageAssembliesDir)\**\*.dll" />
</ItemGroup>
<Error Condition="!Exists('$(M42SignTool)')"
Text="signtool.exe was not found: $(M42SignTool). Set M42SignTool or disable signing with /p:M42SignAssemblies=false." />
<Message Importance="High"
Text="Signing Matrix42 package assemblies with $(M42SignTool)." />
<Exec Condition="'@(_M42AssembliesToSign)' != ''"
Command="&quot;$(M42SignTool)&quot; sign $(M42SignOptions) /tr &quot;$(M42SignTimestampUrl)&quot; /td SHA256 /fd SHA256 /d &quot;$(M42SignDescription)&quot; &quot;%(_M42AssembliesToSign.FullPath)&quot;" />
</Target>
<Target Name="M42_BuildPackage"
AfterTargets="Build"
Condition="'$(RuntimeIdentifier)' == '' AND '$(M42BuildPackage)' == 'true'">

View File

@@ -1,10 +1,9 @@
set ProductName="C4IT First Aid Service Desk Matrix42 ESM Addon"
set SignTool=..\..\..\Common Code\Tools\signtool.exe
set TimeStamp=http://rfc3161timestamp.globalsign.com/advanced
"%SignTool%" sign /a /tr %TimeStamp% /td SHA256 /fd SHA256 /d %ProductName% ".\bin\Release\C4ITF4SDM42WebApi.dll" ".\bin\Release\C4ITF4SDM42WebApiHelper.dll"
pause
@echo off
setlocal
pushd "%~dp0.."
dotnet build "F4SDM42WebApi\F4SD - M42WebApi.csproj" -c Release %*
set EXITCODE=%ERRORLEVEL%
popd
exit /b %EXITCODE%