BuildHelpers
BuildHelpers copied to clipboard
Set-BuildEnvironment fails when git is not installed
Hello,
Set-BuildEnvironment fails when git is not installed.
This has been an issue in the past, so there must have been a regression error at some point.
BuildHelpers Version
2.0.16
PowerShell Version
7.2.5 (Core)
Cause Locations
-
Get-BuildVariable.ps1(line 79) -
Get-ProjectName.ps1(line 57)
Error Source
The lines that are failing both fail for the same reason...
if(!$PSboundParameters.ContainsKey('GitPath')) {
$GitPath = (Get-Command $GitPath -CommandType Application -ErrorAction SilentlyContinue)[0].Path
}
(Get-Command $GitPath -CommandType Application -ErrorAction SilentlyContinue) returns $null because git is not found, then the code goes on to access $null[0].Path, which generates an InvalidOperationException: Cannot index into a null array.
Expected Behavior
No errors should occur when git is missing
Actual Behavior
InvalidOperation: C:\Users\Administrator\Documents\PowerShell\Modules\BuildHelpers\2.0.16\Public\Get-BuildVariable.ps1:79
Line |
79 | $GitPath = (Get-Command $GitPath -CommandType Application -Er …
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Cannot index into a null array.
InvalidOperation: C:\Users\Administrator\Documents\PowerShell\Modules\BuildHelpers\2.0.16\Public\Get-ProjectName.ps1:57
Line |
57 | $GitPath = (Get-Command $GitPath -ErrorAction SilentlyContinu …
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Cannot index into a null array.
Steps to Reproduce
On a system without git installed...
Install-Module -Name BuildHelpers -RequiredVersion 2.0.16 -Scope CurrentUser
Import-Module BuildHelpers
Set-BuildEnvironment
Workarounds
Install git
References (similar issue from the past)
- Issue #57