Private/Install/Resolve-PWSHYBKPIVArchitecture.ps1
|
function Resolve-PWSHYBKPIVArchitecture { <# .SYNOPSIS Resolves the configured installation architecture to win32 or win64. .DESCRIPTION "auto" (the default) resolves via [Environment]::Is64BitOperatingSystem; "win32" or "win64" pass through unchanged as an explicit override. Any other value is a configuration error and throws. .PARAMETER Architecture The installation.architecture config value: "auto", "win32", or "win64". .OUTPUTS String. "win32" or "win64". .EXAMPLE Resolve-PWSHYBKPIVArchitecture -Architecture 'auto' #> [CmdletBinding()] [OutputType([string])] param( [Parameter(Mandatory)] [string] $Architecture ) switch ($Architecture) { 'auto' { if ([Environment]::Is64BitOperatingSystem) { 'win64' } else { 'win32' } } 'win32' { 'win32' } 'win64' { 'win64' } default { throw "installation.architecture '$Architecture' is not one of auto/win32/win64." } } } |