Ich habe keine Erfahrung mit Jenkins, aber das ist, was ich in meinem Post-Build-Skript zu tun. Die Version wird über den Parameter @(VersionNumber)
an ein Powershell-Skript übergeben, das die Datei .nuspec
ändert. Ich nehme an, Sie müssen möglicherweise etwas Ähnliches tun, bevor Sie die Execute Windows Batch Command
Funktion aufrufen, um Ihre App freizugeben.
Visual Studio Postbuildereignis Befehlszeile
if $(ConfigurationName) ==Release "C:\windows\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -ExecutionPolicy RemoteSigned -file "$(ProjectDir)\"PostBuild.ps1 "$(ProjectDir) " @(VersionNumber)
PostBuild.ps1
param (
[string]$ProjectDir,
[string]$Revision
)
#write new version to nuspec
$nuspec_file_name = "Package.nuspec"
$nuspec_file_path = "$ProjectDir$nuspec_file_name"
Write-Host "nuspec file: $nuspec_file_path"
[xml]$nuspec_xml = Get-Content($nuspec_file_path)
$nuspec_xml.package.metadata.version = $Revision
$nuspec_xml.Save($nuspec_file_path)