param( [Parameter(Mandatory = $true)][string]$Manifest, [string[]]$Product = @('all'), [switch]$ValidateOnly ) . (Join-Path $PSScriptRoot 'coordination-common.ps1') try { $configuration = Read-CoordinationManifest -Manifest $Manifest $selection = Resolve-CoordinationSelection -Configuration $configuration -Product $Product -Operation start if ($ValidateOnly) { Write-Host "Coordination manifest is valid for: $(($selection.Name) -join ', ')."; exit 0 } foreach ($item in $selection) { Start-CoordinationProduct -Configuration $configuration -Product $item } exit 0 } catch { Write-Error $_.Exception.Message exit 1 }