Public/Remove-DuneResourceGroupTemplate.ps1
|
<# .SYNOPSIS Removes DuneResourceGroupTemplate object. .DESCRIPTION Removes DuneResourceGroupTemplate object. .PARAMETER Id Specifies the DuneResourceGroupTemplate id. .PARAMETER ResourceGroupTemplate Specifies the DuneResourceGroupTemplate object. .INPUTS DuneResourceGroupTemplate object. .OUTPUTS Invoke-WebRequest output. .EXAMPLE > Get-DuneResourceGroupTemplate foo | Remove-DuneResourceGroupTemplate .LINK https://gitlab.com/yendico1/products/starburst/backend-workflow/ps-modules/starburst/-/blob/main/Starburst/Public/Remove-DuneResourceGroupTemplate.ps1 #> function Remove-DuneResourceGroupTemplate { [CmdletBinding( SupportsShouldProcess, ConfirmImpact = 'High', DefaultParameterSetName = 'Id' )] param ( [Parameter(Mandatory, ParameterSetName = "Id")] [guid]$Id, [Parameter(Mandatory, ParameterSetName = "ResourceGroupTemplate", ValueFromPipeline)] [DuneResourceGroupTemplate]$ResourceGroupTemplate ) begin { Write-Debug "$($MyInvocation.MyCommand)|begin" $Uri = "resourcegrouptemplates" } process { Write-Debug "$($MyInvocation.MyCommand)|process|$($PSCmdlet.ParameterSetName)" switch ($PSCmdlet.ParameterSetName) { 'Id' { Write-Debug "$($MyInvocation.MyCommand)|process|$($PSCmdlet.ParameterSetName)|$($Id)" $ResourceGroupTemplate = Get-DuneResourceGroupTemplate -Id $Id } 'ResourceGroupTemplate' { Write-Debug "$($MyInvocation.MyCommand)|process|$($PSCmdlet.ParameterSetName)|$($ResourceGroupTemplate.Id)" } Default { return } } $Url = $("{0}/{1}" -f $Uri, $ResourceGroupTemplate.Id) if ($PSCmdlet.ShouldProcess($ResourceGroupTemplate.Name)) { $Null = Invoke-DuneApiRequest $Url -Method DELETE } } end { Write-Debug "$($MyInvocation.MyCommand)|end" } } |