pspulumiyaml.azurenative.servicelinker.psm1

using module pspulumiyaml
function Invoke-AzureNativeFunctionServicelinkerGetLinker
{
    param (
        [parameter(mandatory=$False,HelpMessage='The fully qualified Azure Resource manager identifier of the resource to be connected.)')]
        [string]
        $resourceUri,
        [parameter(mandatory=$False,HelpMessage='The name Linker resource.)')]
        [string]
        $linkerName
    )

    process
    {
        $arguments = @{}
        $arguments["linkerName"] = $linkerName
        $arguments["resourceUri"] = $resourceUri

        $functionObject = Invoke-PulumiFunction -Name azure-native:servicelinker:getLinker -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionServicelinkerListLinkerConfigurations
{
    param (
        [parameter(mandatory=$False,HelpMessage='The fully qualified Azure Resource manager identifier of the resource to be connected.)')]
        [string]
        $resourceUri,
        [parameter(mandatory=$False,HelpMessage='The name Linker resource.)')]
        [string]
        $linkerName
    )

    process
    {
        $arguments = @{}
        $arguments["linkerName"] = $linkerName
        $arguments["resourceUri"] = $resourceUri

        $functionObject = Invoke-PulumiFunction -Name azure-native:servicelinker:listLinkerConfigurations -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
class VNetSolution
{
    [ValidateSet('serviceEndpoint', 'privateLink')]
    [string] $type
}
function New-AzureNativeTypeServicelinkerVNetSolution
{
    param (
        [parameter(mandatory=$False,HelpMessage='Type of VNet solution.)')]
        [string]
        [ValidateSet('serviceEndpoint', 'privateLink')]
        $type
    )

    process
    {
        return $([VNetSolution]$PSBoundParameters)
    }
}
class UserAssignedIdentityAuthInfo
{
    [string] $subscriptionId
    [string] $authType
    [string] $clientId
}
function New-AzureNativeTypeServicelinkerUserAssignedIdentityAuthInfo
{
    param (
        [parameter(mandatory=$False,HelpMessage='Subscription id for userAssignedIdentity.)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='The authentication type.
Expected value is ''userAssignedIdentity''.)'
)]
        [string]
        $authType,
        [parameter(mandatory=$False,HelpMessage='Client Id for userAssignedIdentity.)')]
        [string]
        $clientId
    )

    process
    {
        return $([UserAssignedIdentityAuthInfo]$PSBoundParameters)
    }
}
class SecretStore
{
    [string] $keyVaultId
}
function New-AzureNativeTypeServicelinkerSecretStore
{
    param (
        [parameter(mandatory=$False,HelpMessage='The key vault id to store secret)')]
        [string]
        $keyVaultId
    )

    process
    {
        return $([SecretStore]$PSBoundParameters)
    }
}
function New-AzureNativeServicelinkerLinker
{
    [Alias('azure_native_servicelinker_linker')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name Linker resource.)')]
        [string]
        $linkerName,
        [parameter(mandatory=$False,HelpMessage='The VNet solution.)')]
        [VNetSolution]
        $vNetSolution,
        [parameter(mandatory=$False,HelpMessage='The resource Id of target service.)')]
        [string]
        $targetId,
        [parameter(mandatory=$False,HelpMessage='The fully qualified Azure Resource manager identifier of the resource to be connected.)')]
        [string]
        $resourceUri,
        [parameter(mandatory=$False,HelpMessage='The authentication type.)')]
        [UserAssignedIdentityAuthInfo]
        $authInfo,
        [parameter(mandatory=$False,HelpMessage='The application client type)')]
        [string]
        [ValidateSet('none', 'dotnet', 'java', 'python', 'go', 'php', 'ruby', 'django', 'nodejs', 'springBoot')]
        $clientType,
        [parameter(mandatory=$False,HelpMessage='An option to store secret value in secure place)')]
        [SecretStore]
        $secretStore,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:servicelinker:Linker")

        $resource.properties["resourceUri"] = $resourceUri

        if($PSBoundParameters.Keys -icontains 'linkerName')
        {
            $resource.properties["linkerName"] = $linkerName
        }

        if($PSBoundParameters.Keys -icontains 'vNetSolution')
        {
            $resource.properties["vNetSolution"] = $vNetSolution
        }

        if($PSBoundParameters.Keys -icontains 'targetId')
        {
            $resource.properties["targetId"] = $targetId
        }

        if($PSBoundParameters.Keys -icontains 'authInfo')
        {
            $resource.properties["authInfo"] = $authInfo
        }

        if($PSBoundParameters.Keys -icontains 'clientType')
        {
            $resource.properties["clientType"] = $clientType
        }

        if($PSBoundParameters.Keys -icontains 'secretStore')
        {
            $resource.properties["secretStore"] = $secretStore
        }

        $global:pulumiresources += $resource
        return $resource
    }
}