fix(template): Handle Git version tag vs filename mismatch
GitHub release tag: v2.54.0.windows.1 Filename in release: Git-2.54.0-64-bit.exe (no .windows.1) Extract base version for filename via regex: $gitVersionBase = $GitVersion -replace '\.windows\.\d+$', '' URL now correctly formed as: .../download/v2.54.0.windows.1/Git-2.54.0-64-bit.exe Reverted GitVersion back to '2.54.0.windows.1' (needed for tag). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -144,7 +144,7 @@ param(
|
|||||||
[string] $AdminPassword = '',
|
[string] $AdminPassword = '',
|
||||||
|
|
||||||
# Git for Windows version (latest stable)
|
# Git for Windows version (latest stable)
|
||||||
[string] $GitVersion = '2.54.0',
|
[string] $GitVersion = '2.54.0.windows.1',
|
||||||
|
|
||||||
# 7-Zip version (latest stable)
|
# 7-Zip version (latest stable)
|
||||||
[string] $SevenZipVersion = '24.07'
|
[string] $SevenZipVersion = '24.07'
|
||||||
@@ -997,7 +997,9 @@ $gitExe = Join-Path $gitDir 'bin\git.exe'
|
|||||||
if (Test-Path $gitExe) {
|
if (Test-Path $gitExe) {
|
||||||
Write-Host "Git for Windows already installed: $(& $gitExe --version 2>&1)"
|
Write-Host "Git for Windows already installed: $(& $gitExe --version 2>&1)"
|
||||||
} else {
|
} else {
|
||||||
$gitUrl = "https://github.com/git-for-windows/git/releases/download/v$GitVersion/Git-$GitVersion-64-bit.exe"
|
# Extract base version (e.g. '2.54.0' from '2.54.0.windows.1') for filename
|
||||||
|
$gitVersionBase = $GitVersion -replace '\.windows\.\d+$', ''
|
||||||
|
$gitUrl = "https://github.com/git-for-windows/git/releases/download/v$GitVersion/Git-$gitVersionBase-64-bit.exe"
|
||||||
$gitInstaller = 'C:\CI\git_installer.exe'
|
$gitInstaller = 'C:\CI\git_installer.exe'
|
||||||
|
|
||||||
Write-Host "Downloading Git for Windows $GitVersion..."
|
Write-Host "Downloading Git for Windows $GitVersion..."
|
||||||
@@ -1007,7 +1009,7 @@ if (Test-Path $gitExe) {
|
|||||||
throw "Failed to download Git from $gitUrl : $_"
|
throw "Failed to download Git from $gitUrl : $_"
|
||||||
}
|
}
|
||||||
|
|
||||||
Assert-Hash -FilePath $gitInstaller -Label "Git-$GitVersion-64-bit.exe" `
|
Assert-Hash -FilePath $gitInstaller -Label "Git-$gitVersionBase-64-bit.exe" `
|
||||||
-Expected $script:Hashes['GitForWindows']
|
-Expected $script:Hashes['GitForWindows']
|
||||||
|
|
||||||
Write-Host "Installing Git for Windows (silent, with PATH)..."
|
Write-Host "Installing Git for Windows (silent, with PATH)..."
|
||||||
|
|||||||
Reference in New Issue
Block a user