Release verification
Releases of log4net can be verified with following steps:
-
Windows (PowerShell)
-
Prerequisites (winget - in case of problems see next section choco)
winget install -e --id GnuPG.Gpg4win
winget install -e --id TortoiseSVN.TortoiseSVN # or any other subversion client
winget install -e --id Mono.Mono
winget install -e --id Microsoft.DotNet.SDK.8
After installation, verify that gpg and svn are in the path and add them when not.
-
Prerequisites (choco - only in case of problems with winget)
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
choco install gpg4win
choco install tortoisesvn # or any other subversion client
choco install mono
choco install dotnet-8.0-sdk
-
Check out the release distribution
svn co https://dist.apache.org/repos/dist/dev/logging/log4net/{releaseVersion} log4net-{releaseVersion}
pushd log4net-{releaseVersion}
-
Verify and extract
-
switch to the directory where you extracted the sources (in case you didn't use verify-release.ps1)
-
Verify the build
dotnet test ./src/log4net.sln
-
Linux
-
Check out the release distribution
svn co https://dist.apache.org/repos/dist/dev/logging/log4net/{releaseVersion} log4net-{releaseVersion} && cd $_
-
Verify checksums
sha512sum --check *.sha512
-
Import the release manager GPG keys, unless you haven’t earlier done so
wget -O - https://downloads.apache.org/logging/KEYS | gpg --import
-
Verify signatures
for sigFile in *.asc; do gpg --verify $sigFile; done
-
Extract sources
umask 0022
unzip -q *-src.zip -d src
cd src
-
Verify the build
- install docker (if you haven't already)
-
docker build -t log4net-builder .
docker run -it log4net-builder
# this will
# - install all dependencies in the container
# - build src/log4net.sln
# inside the container run
dotnet test /logging-log4net/src/log4net.sln
|