Public/Invoke-DuneResourceProviderInitialization.ps1
|
<# .SYNOPSIS Initialize a resource provider. .DESCRIPTION Invokes the initialization endpoint for a resource provider. Provide either a `DuneResourceProvider` object via pipeline or the resource provider id string. .PARAMETER ResourceProvider A `DuneResourceProvider` object; pipeline input is supported. When provided, the provider id is taken from this object. .PARAMETER ResourceProviderId The id (string) of the resource provider to initialize. .EXAMPLE PS> Invoke-DuneResourceProviderInitialization -ResourceProviderId "provider-guid" Initialize the resource provider identified by the given id. .EXAMPLE PS> Get-DuneResourceProvider -Name "azure" | Invoke-DuneResourceProviderInitialization Pipeline example using the `ResourceProvider` parameter set. #> function Invoke-DuneResourceProviderInitialization { [CmdletBinding(DefaultParameterSetName = "ResourceProvider")] param ( [Parameter(ParameterSetName = "ResourceProvider", ValueFromPipeline)] [DuneResourceProvider]$ResourceProvider, [Parameter(ParameterSetName = "ResourceProviderId")] [string]$ResourceProviderId ) begin { Write-Debug "$($MyInvocation.MyCommand)|begin" } process { Write-Debug "$($MyInvocation.MyCommand)|process|$($PSCmdlet.ParameterSetName)" if ($PSCmdlet.ParameterSetName -eq 'ResourceProvider') { $ResourceProviderId = $ResourceProvider.Id } Invoke-DuneApiRequest -Uri "resourceproviders/$($ResourceProviderId)/initialize" -Method POST } end { Write-Debug "$($MyInvocation.MyCommand)|end" } } |