public/release/Add-PSTSReleaseDefinitionArtefact.ps1
function Add-PSTSReleaseDefinitionArtefact { param( [Parameter(Mandatory=$true)][string] $project, [Parameter(Mandatory=$true)][string] $buildName, [Parameter(Mandatory=$true)][string] $aliasName, [Parameter(Mandatory=$true)][object] $definition ) process { $pr = Get-PSTSProject | Where-Object {$_.name -eq $project} $bd = Get-PSTSBuildDefinition -project $project | Where-Object {$_.name -eq $buildName} [ReleaseDefinitionArtefact]$artefact = [ReleaseDefinitionArtefact]::new() $artefact.alias = $aliasName $artefact.definitionReference.project.id = $pr.id $artefact.definitionReference.project.name = $pr.name $artefact.definitionReference.definition.id = $bd.id $artefact.definitionReference.definition.name = $bd.name $artefact.definitionReference.IsMultiDefinitionType.id = "false" $artefact.definitionReference.IsMultiDefinitionType.name = "false" $artefact.definitionReference.artifactSourceDefinitionUrl.id = "https://dev.azure.com/tgits-code/_permalink/_build/index?collectionId=ff34ac67-1eb2-48aa-8c7d-7af711f4816a&projectId=$($pr.id)&definitionId=$($bd.id)" $artefact.type = "Build" $artefact.sourceId = "$($pr.id):$($bd.id)" $artefact.definitionReference.defaultVersionType.id = "latestType" $artefact.definitionReference.defaultVersionType.name = "Latest" $artefact.isPrimary = $true $artefact.isRetained = $false $definition.artifacts+=$artefact return $definition } } |