plaster/ModuleBuild/scaffold/build/dotSource/Get-BuildEnvironment.ps1
function Script:Get-BuildEnvironment { <# .SYNOPSIS Retrieves all the stored settings in a buildenvironment.json file. .DESCRIPTION Retrieves all the stored settings in a buildenvironment.json file. .PARAMETER Path Specifies the path to a buildenvironment.json file. .LINK https://github.com/zloeber/ModuleBuild .EXAMPLE TBD #> [CmdletBinding()] param( [parameter(Position = 0, ValueFromPipeline = $TRUE)] [String]$Path ) process { # If no path was specified take a few guesses if ([string]::IsNullOrEmpty($Path)) { $Path = (Get-ChildItem -File -Filter "*.buildenvironment.json" -Path '.\','..\','.\build\' | select -First 1).FullName if ([string]::IsNullOrEmpty($Path)) { throw 'Unable to locate a *.buildenvironment.json file to parse!' } } if (-not (Test-Path $Path)) { throw "Unable to find the file: $Path" } try { $LoadedBuildEnv = Get-Content $Path | ConvertFrom-Json $LoadedBuildEnv } catch { throw "Unable to load the build file in $Path" } } } |