private/Invoke-PhpSdkStarter.ps1
|
function Invoke-PhpSdkStarter { <# .SYNOPSIS Invoke phpsdk-starter.bat with the provided build configuration. .PARAMETER BuildDirectory Build directory containing the PHP SDK. .PARAMETER VsConfig Visual Studio configuration for the build. .PARAMETER Arch PHP Architecture .PARAMETER Task Task script to run through the PHP SDK starter. #> [OutputType()] param ( [Parameter(Mandatory = $true, Position=0, HelpMessage='Build directory')] [string] $BuildDirectory, [Parameter(Mandatory = $true, Position=1, HelpMessage='Visual Studio configuration')] [PSCustomObject] $VsConfig, [Parameter(Mandatory = $true, Position=2, HelpMessage='PHP Architecture')] [ValidateNotNull()] [ValidateSet('x86', 'x64')] [string] $Arch, [Parameter(Mandatory = $true, Position=3, HelpMessage='Task script')] [string] $Task ) begin { } process { $process = Start-Process -FilePath "$BuildDirectory\php-sdk\phpsdk-starter.bat" ` -ArgumentList @('-c', $VsConfig.vs, '-a', $Arch, '-s', $VsConfig.toolset, '-t', $Task) ` -NoNewWindow ` -Wait ` -PassThru if ($process.ExitCode -ne 0) { throw "build failed with errorlevel $($process.ExitCode)" } } end { } } |