Public/Edit-Pipeline.ps1
function Edit-Pipeline { [CmdletBinding()] param ( [Parameter( Mandatory, ValueFromPipeline )] $Pipeline, [Parameter( Mandatory )] [ValidateSet( 'InvertDependencies' )] [string] $Operation ) process { switch ($Operation) { InvertDependencies { $Pipeline | Get-Activity | ForEach-Object { $Activity = $_ $Activity | Get-Dependency | ForEach-Object { $PredecessorActivity = $Pipeline | Get-Activity -Name $_.Activity $PredecessorActivity | Add-Dependency -OnActivity $Activity -Condition $_.dependencyConditions $Activity | Remove-Dependency -OnActivity $PredecessorActivity } } } Default { Write-Error "Invalid Operation $Operation" } } } } |