16 Commits
v1.1.4 ... main

Author SHA1 Message Date
Alexandre JARDON
c1dbeeea1c Add service signing 2025-03-15 11:31:17 +01:00
Alexandre JARDON
1e221eafe7 Review build 2025-03-15 09:51:17 +01:00
Alexandre JARDON
ca7224391d Review build 2025-03-15 09:49:43 +01:00
Alexandre JARDON
25ed7571a1 Review build 2025-03-15 09:48:11 +01:00
Alexandre JARDON
9f36ca794e Review build 2025-03-15 09:43:53 +01:00
Alexandre JARDON
ea4006b290 Review build 2025-03-15 09:42:58 +01:00
Alexandre JARDON
cb99fc2470 Review build 2025-03-15 09:40:18 +01:00
Alexandre JARDON
76c9ed376c Review build 2025-03-15 09:38:48 +01:00
Alexandre JARDON
e01fc6c7c9 Review build 2025-03-15 09:37:21 +01:00
Alexandre JARDON
30a3360f72 Review build 2025-03-15 09:35:10 +01:00
Alexandre JARDON
1fb7093032 Review build 2025-03-15 09:32:57 +01:00
Alexandre JARDON
00e27a77de Review build 2025-03-15 09:28:11 +01:00
Alexandre JARDON
b4b06f361e Review build 2025-03-15 09:26:26 +01:00
Alexandre JARDON
f682432188 Review build 2025-03-15 09:24:43 +01:00
Alexandre JARDON
838a206ed3 Review build 2025-03-15 09:20:40 +01:00
Alexandre JARDON
cfcd5550f2 Review build 2025-03-14 15:59:09 +01:00
2 changed files with 21 additions and 6 deletions

View File

@@ -21,8 +21,22 @@ Trap {
# Reset working dir on error # Reset working dir on error
Pop-Location Pop-Location
} }
# If signing, get the certificate
if ($Sign) {
$cert=Get-ChildItem Cert:\CurrentUser\My -CodeSigningCert | Where-Object { $_.Thumbprint -eq $CertificateThumbprint } $cert=Get-ChildItem Cert:\CurrentUser\My -CodeSigningCert | Where-Object { $_.Thumbprint -eq $CertificateThumbprint }
}
# Building service executable
Write-Output "Building WinBGP service"
& "..\service\WinBGP-Service.ps1" -Build
Move-Item -Path "..\builder\WinBGP-Service.exe" -Destination "..\service\WinBGP-Service.exe" -Force
if ($Sign) {
& "C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x64\signtool.exe" sign /sha1 $CertificateThumbprint /tr http://time.certum.pl/ /td sha256 /fd sha256 /v "..\service\WinBGP-Service.exe"
}
# Building engine
Write-Output "Building engine"
New-Item -ItemType Directory -Path "..\engine" -Force | Out-Null
Get-ChildItem -Path '..\src' | Where-Object {$_.Extension -eq '.ps1'} | ForEach-Object { Get-ChildItem -Path '..\src' | Where-Object {$_.Extension -eq '.ps1'} | ForEach-Object {
Copy-Item -Path $_.FullName -Destination "..\engine" -Force Copy-Item -Path $_.FullName -Destination "..\engine" -Force
if ($Sign) { if ($Sign) {
@@ -30,17 +44,18 @@ Get-ChildItem -Path '..\src' | Where-Object {$_.Extension -eq '.ps1'} | ForEach
} }
} }
Write-Verbose "Creating winbgp-${Version}-${Arch}.msi" Write-Output "Building winbgp-${Version}-${Arch}.msi"
$wixArch = @{"amd64" = "x64"; "arm64" = "arm64"}[$Arch] $wixArch = @{"amd64" = "x64"; "arm64" = "arm64"}[$Arch]
Invoke-Expression "wix build -arch $wixArch -o .\WinBGP-$($Version)-$($Arch).msi .\files.wxs .\main.wxs -d ProductName=WinBGP -d Version=$($MsiVersion) -ext WixToolset.Firewall.wixext -ext WixToolset.UI.wixext -ext WixToolset.Util.wixext" Invoke-Expression "wix build -arch $wixArch -o .\WinBGP-$($Version)-$($Arch).msi .\files.wxs .\main.wxs -d ProductName=WinBGP -d Version=$($MsiVersion) -ext WixToolset.Firewall.wixext -ext WixToolset.UI.wixext -ext WixToolset.Util.wixext"
Write-Verbose "Done!" Write-Output "Build complete !"
Pop-Location
# Clean temporary build folder # Clean temporary build folder
Remove-Item -Path "..\engine\*" Remove-Item -Path "..\engine\*"
Write-Output "Release build"
New-Item -ItemType Directory -Path "..\release" -Force | Out-Null
Copy-Item -Path "WinBGP-$($Version)-$($Arch).msi" -Destination "..\release" -Force Copy-Item -Path "WinBGP-$($Version)-$($Arch).msi" -Destination "..\release" -Force
if ($Sign) { if ($Sign) {
& "C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x64\signtool.exe" sign /sha1 $CertificateThumbprint /tr http://time.certum.pl/ /td sha256 /fd sha256 /v "..\release\WinBGP-$($Version)-$($Arch).msi" & "C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x64\signtool.exe" sign /sha1 $CertificateThumbprint /tr http://time.certum.pl/ /td sha256 /fd sha256 /v "..\release\WinBGP-$($Version)-$($Arch).msi"

View File

@@ -897,10 +897,10 @@ if ($Build) { # Install the service
# Generate the service .EXE from the C# source embedded in this script # Generate the service .EXE from the C# source embedded in this script
# Overwrite for builder # Overwrite for builder
$exeFullName=".\$exeName" $exeFullName=$exeName
try { try {
Write-Verbose "Compiling $exeFullName" Write-Output "Compiling $exeFullName"
Add-Type -TypeDefinition $source -Language CSharp -OutputAssembly $exeFullName -OutputType ConsoleApplication -ReferencedAssemblies "System.ServiceProcess" -Debug:$false Add-Type -TypeDefinition $source -Language CSharp -OutputAssembly $exeFullName -OutputType ConsoleApplication -ReferencedAssemblies "System.ServiceProcess" -Debug:$false
} catch { } catch {
$msg = $_.Exception.Message $msg = $_.Exception.Message