pspulumiyaml.azurenative.storagepool.psm1

using module pspulumiyaml
function Invoke-AzureNativeFunctionStoragepoolGetDiskPool
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the Disk pool.)')]
        [string]
        $diskPoolName
    )

    process
    {
        $arguments = @{}
        $arguments["diskPoolName"] = $diskPoolName
        $arguments["resourceGroupName"] = $resourceGroupName

        $functionObject = Invoke-PulumiFunction -Name azure-native:storagepool:getDiskPool -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionStoragepoolGetIscsiTarget
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the iSCSI target.)')]
        [string]
        $iscsiTargetName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the Disk pool.)')]
        [string]
        $diskPoolName
    )

    process
    {
        $arguments = @{}
        $arguments["diskPoolName"] = $diskPoolName
        $arguments["iscsiTargetName"] = $iscsiTargetName
        $arguments["resourceGroupName"] = $resourceGroupName

        $functionObject = Invoke-PulumiFunction -Name azure-native:storagepool:getIscsiTarget -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function New-AzureNativeStoragepoolIscsiTarget
{
    [Alias('azure_native_storagepool_iscsitarget')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the iSCSI target.)')]
        [string]
        $iscsiTargetName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='List of iSCSI target portal groups. Can have 1 portal group at most.)')]
        $tpgs,
        [parameter(mandatory=$False,HelpMessage='The name of the Disk pool.)')]
        [string]
        $diskPoolName,
        [parameter(mandatory=$False,HelpMessage='iSCSI target IQN (iSCSI Qualified Name); example: "iqn.2005-03.org.iscsi:server".)')]
        [string]
        $targetIqn,
        [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:storagepool:IscsiTarget")

        $resource.properties["diskPoolName"] = $diskPoolName
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["tpgs"] = $tpgs

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeStoragepoolDiskPool
{
    [Alias('azure_native_storagepool_diskpool')]
    param (
        [parameter(mandatory=$False,HelpMessage='List of Azure Managed Disks to attach to a Disk pool. Can attach 8 disks at most.)')]
        $disks,
        [parameter(mandatory=$False,HelpMessage='List of additional capabilities for a Disk pool.)')]
        [string[]]
        $additionalCapabilities,
        [parameter(mandatory=$False,HelpMessage='Determines the SKU of VM deployed for Disk pool)')]
        [string]
        [ValidateSet('Basic', 'Standard', 'Premium')]
        $tier,
        [parameter(mandatory=$False,HelpMessage='The name of the Disk pool.)')]
        [string]
        $diskPoolName,
        [parameter(mandatory=$False,HelpMessage='Azure Resource ID of a Subnet for the Disk pool.)')]
        [string]
        $subnetId,
        [parameter(mandatory=$False,HelpMessage='Resource tags.)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Logical zone for Disk pool resource; example: ["1"].)')]
        [string[]]
        $availabilityZones,
        [parameter(mandatory=$False,HelpMessage='The geo-location where the resource lives.)')]
        [string]
        $location,
        [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:storagepool:DiskPool")

        $resource.properties["availabilityZones"] = $availabilityZones
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["subnetId"] = $subnetId
        $resource.properties["tier"] = $tier

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

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

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

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

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

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