private/Import-PsakeConfiguration.ps1
|
function Import-PsakeConfiguration { <# .SYNOPSIS Load psake-config.ps1 file .DESCRIPTION Load psake-config.ps1 if present in the directory of the current build script. If that file doesn't exist, load the default psake-config.ps1 file from the module directory. .PARAMETER ConfigurationDirectory The directory to search for the psake-config.ps1 file. #> [CmdletBinding()] param( [string] $ConfigurationDirectory = (Split-Path -Path $PSScriptRoot -Parent) ) Write-Debug "Searching for psake-config in '$ConfigurationDirectory'" $configFilePath = Join-Path -Path $ConfigurationDirectory -ChildPath $psakeConfigFile $defaultConfigFilePath = Join-Path -Path (Split-Path -Path $PSScriptRoot -Parent) -ChildPath $psakeConfigFile if (Test-Path -LiteralPath $configFilePath -PathType Leaf) { $configFileToLoad = $configFilePath } elseIf (Test-Path -LiteralPath $defaultConfigFilePath -PathType Leaf) { $configFileToLoad = $defaultConfigFilePath } else { throw 'Cannot find psake-config.ps1' } Write-Debug "Loading psake configuration from '$configFileToLoad'" try { $config = Get-CurrentConfigurationOrDefault . $configFileToLoad } catch { throw 'Error Loading Configuration from {0}: {1}' -f $configFileToLoad, $_ } } |