This is an automated email from the ASF dual-hosted git repository.
freeandnil pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/logging-log4net.git
The following commit(s) were added to refs/heads/master by this push:
new 5e9e2b0e updated release script to work on windows
5e9e2b0e is described below
commit 5e9e2b0ea8a57a441e779d23429f6759a06d93ce
Author: Jan Friedrich <[email protected]>
AuthorDate: Tue Aug 19 20:43:23 2025 +0200
updated release script to work on windows
---
scripts/build-release.ps1 | 51 +++++++++++++++++++++++---------------
scripts/sign-log4net-libraries.ps1 | 2 +-
scripts/verify-release.ps1 | 2 +-
3 files changed, 33 insertions(+), 22 deletions(-)
diff --git a/scripts/build-release.ps1 b/scripts/build-release.ps1
index 95650079..8dc528c0 100644
--- a/scripts/build-release.ps1
+++ b/scripts/build-release.ps1
@@ -1,8 +1,26 @@
param(
- $Version = '3.1.0'
+ $Version = '3.2.0'
)
-"cleaning $PSScriptRoot/../build/ ..."
-rm -rf $PSScriptRoot/../build/*
+
+Set-StrictMode -Version Latest
+$ErrorActionPreference = 'Stop'
+
+function Write-HashAndSignature
+{
+ param
+ (
+ [Parameter(Mandatory=$true, HelpMessage='The file to hash.')]
+ [System.IO.FileInfo]$File
+ )
+ $File.FullName
+ $ComputedHash = (Get-FileHash -Algorithm 'SHA512'
$File).Hash.ToLowerInvariant()
+ $ComputedHash
+ Set-Content -Path "$($File.FullName).sha512" -Value "$ComputedHash
*./$($File.Name)"
+ gpg --armor --output "$($File.FullName).asc" --detach-sig $File.FullName
+}
+
+"cleaning $PSScriptRoot/../build/ ..."
+Remove-Item $PSScriptRoot/../build/ -Force -Recurse -ErrorAction
SilentlyContinue
'building ...'
dotnet test -c Release "-p:GeneratePackages=true;PackageVersion=$Version"
$PSScriptRoot/../src/log4net/log4net.csproj
'compressing source ...'
@@ -10,28 +28,21 @@ pushd $PSScriptRoot/..
git archive --format=zip --output
$PSScriptRoot/../build/artifacts/apache-log4net-source-$Version.zip master
popd
'compressing binaries ...'
-cp $PSScriptRoot/verify-release.* $PSScriptRoot/../build/artifacts/
-cp $PSScriptRoot/../LICENSE $PSScriptRoot/../build/Release/
-cp $PSScriptRoot/../NOTICE $PSScriptRoot/../build/Release/
+Copy-Item $PSScriptRoot/verify-release.* $PSScriptRoot/../build/artifacts/
+Copy-Item $PSScriptRoot/../LICENSE $PSScriptRoot/../build/Release/
+Copy-Item $PSScriptRoot/../NOTICE $PSScriptRoot/../build/Release/
pushd $PSScriptRoot/../build/Release
zip -r $PSScriptRoot/../build/artifacts/apache-log4net-binaries-$Version.zip .
popd
'signing ...'
-mv $PSScriptRoot/../build/artifacts/log4net.$Version.nupkg
$PSScriptRoot/../build/artifacts/apache-log4net.$Version.nupkg
-pushd $PSScriptRoot/../build/artifacts
-gpg --armor --output ./apache-log4net.$Version.nupkg.asc --detach-sig
./apache-log4net.$Version.nupkg
-sha512sum -b ./apache-log4net.$Version.nupkg >
./apache-log4net.$Version.nupkg.sha512
-gpg --armor --output ./apache-log4net-source-$Version.zip.asc --detach-sig
./apache-log4net-source-$Version.zip
-sha512sum -b ./apache-log4net-source-$Version.zip >
./apache-log4net-source-$Version.zip.sha512
-gpg --armor --output ./apache-log4net-binaries-$Version.zip.asc --detach-sig
./apache-log4net-binaries-$Version.zip
-sha512sum -b ./apache-log4net-binaries-$Version.zip >
./apache-log4net-binaries-$Version.zip.sha512
-gpg --armor --output ./verify-release.ps1.asc --detach-sig ./verify-release.ps1
-sha512sum -b ./verify-release.ps1 > ./verify-release.ps1.sha512
-gpg --armor --output ./verify-release.ps1.asc --detach-sig ./verify-release.sh
-sha512sum -b ./verify-release.ps1 > ./verify-release.sh.sha512
-popd
+Move-Item $PSScriptRoot/../build/artifacts/log4net.$Version.nupkg
$PSScriptRoot/../build/artifacts/apache-log4net.$Version.nupkg
+Write-HashAndSignature
$PSScriptRoot/../build/artifacts/apache-log4net.$Version.nupkg
+Write-HashAndSignature
$PSScriptRoot/../build/artifacts/apache-log4net-source-$Version.zip
+Write-HashAndSignature
$PSScriptRoot/../build/artifacts/apache-log4net-binaries-$Version.zip
+Write-HashAndSignature $PSScriptRoot/../build/artifacts/verify-release.ps1
+Write-HashAndSignature $PSScriptRoot/../build/artifacts/verify-release.sh
'cleaning site ...'
-rm -rf $PSScriptRoot/../target/*
+Remove-Item $PSScriptRoot/../target/ -Force -Recurse -ErrorAction
SilentlyContinue
'building site ...'
pushd $PSScriptRoot/..
./mvnw site
diff --git a/scripts/sign-log4net-libraries.ps1
b/scripts/sign-log4net-libraries.ps1
index a5926fc0..c00c58bf 100644
--- a/scripts/sign-log4net-libraries.ps1
+++ b/scripts/sign-log4net-libraries.ps1
@@ -1,6 +1,6 @@
# see https://infra.apache.org/release-signing#openpgp-ascii-detach-sig
$DidSomething = $false
-$Files = Get-Item $PSScriptRoot/../build/artifacts/* -Include *log4net*.nupkg,
*log4net*.zip
+$Files = Get-Item $PSScriptRoot/../build/artifacts/* -Include *log4net*.nupkg,
*log4net*.zip, verify-release.*
foreach ($File in $Files)
{
$DidSomething = $true
diff --git a/scripts/verify-release.ps1 b/scripts/verify-release.ps1
index af34aad9..f99e4276 100644
--- a/scripts/verify-release.ps1
+++ b/scripts/verify-release.ps1
@@ -26,7 +26,7 @@ function Verify-Hash
$Filename = $Filename.Substring(1).Trim()
}
- $ComputedHash = (Get-FileHash -Algorithm 'SHA512'
"$($File.DirectoryName)/$Filename").Hash.ToUpper()
+ $ComputedHash = (Get-FileHash -Algorithm 'SHA512'
"$($File.DirectoryName)/$Filename").Hash.ToUpperInvariant()
if($Hash -eq $ComputedHash)
{