pspulumiyaml.azurenative.datalakeanalytics.psm1

using module pspulumiyaml
function Invoke-AzureNativeFunctionDatalakeanalyticsListStorageAccountSasTokens
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the Azure storage container for which the SAS token is being requested.)')]
        [string]
        $containerName,
        [parameter(mandatory=$False,HelpMessage='The name of the Azure storage account for which the SAS token is being requested.)')]
        [string]
        $storageAccountName,
        [parameter(mandatory=$False,HelpMessage='The name of the Azure resource group.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the Data Lake Analytics account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["containerName"] = $containerName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["storageAccountName"] = $storageAccountName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datalakeanalytics:listStorageAccountSasTokens -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatalakeanalyticsGetAccount
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the Azure resource group.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the Data Lake Analytics account.)')]
        [string]
        $accountName
    )

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:datalakeanalytics:getAccount -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatalakeanalyticsGetFirewallRule
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the Azure resource group.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the firewall rule to retrieve.)')]
        [string]
        $firewallRuleName,
        [parameter(mandatory=$False,HelpMessage='The name of the Data Lake Analytics account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["firewallRuleName"] = $firewallRuleName
        $arguments["resourceGroupName"] = $resourceGroupName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datalakeanalytics:getFirewallRule -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatalakeanalyticsGetComputePolicy
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the compute policy to retrieve.)')]
        [string]
        $computePolicyName,
        [parameter(mandatory=$False,HelpMessage='The name of the Azure resource group.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the Data Lake Analytics account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["computePolicyName"] = $computePolicyName
        $arguments["resourceGroupName"] = $resourceGroupName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datalakeanalytics:getComputePolicy -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function New-AzureNativeDatalakeanalyticsFirewallRule
{
    [Alias('azure_native_datalakeanalytics_firewallrule')]
    param (
        [parameter(mandatory=$False,HelpMessage='The end IP address for the firewall rule. This can be either ipv4 or ipv6. Start and End should be in the same protocol.)')]
        [string]
        $endIpAddress,
        [parameter(mandatory=$False,HelpMessage='The start IP address for the firewall rule. This can be either ipv4 or ipv6. Start and End should be in the same protocol.)')]
        [string]
        $startIpAddress,
        [parameter(mandatory=$False,HelpMessage='The name of the Azure resource group.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the firewall rule to create or update.)')]
        [string]
        $firewallRuleName,
        [parameter(mandatory=$False,HelpMessage='The name of the Data Lake Analytics account.)')]
        [string]
        $accountName,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

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

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["endIpAddress"] = $endIpAddress
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["startIpAddress"] = $startIpAddress

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatalakeanalyticsComputePolicy
{
    [Alias('azure_native_datalakeanalytics_computepolicy')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the Azure resource group.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the Data Lake Analytics account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The maximum degree of parallelism per job this user can use to submit jobs. This property, the min priority per job property, or both must be passed.)')]
        [int]
        $maxDegreeOfParallelismPerJob,
        [parameter(mandatory=$False,HelpMessage='The type of AAD object the object identifier refers to.)')]
        [string]
        [ValidateSet('User', 'Group', 'ServicePrincipal')]
        $objectType,
        [parameter(mandatory=$False,HelpMessage='The minimum priority per job this user can use to submit jobs. This property, the max degree of parallelism per job property, or both must be passed.)')]
        [int]
        $minPriorityPerJob,
        [parameter(mandatory=$False,HelpMessage='The AAD object identifier for the entity to create a policy for.)')]
        [string]
        $objectId,
        [parameter(mandatory=$False,HelpMessage='The name of the compute policy to create or update.)')]
        [string]
        $computePolicyName,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

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

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["objectId"] = $objectId
        $resource.properties["objectType"] = $objectType
        $resource.properties["resourceGroupName"] = $resourceGroupName

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

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatalakeanalyticsAccount
{
    [Alias('azure_native_datalakeanalytics_account')]
    param (
        [parameter(mandatory=$False,HelpMessage='The number of days that job metadata is retained.)')]
        [int]
        $queryStoreRetention,
        [parameter(mandatory=$False,HelpMessage='The current state of allowing or disallowing IPs originating within Azure through the firewall. If the firewall is disabled, this is not enforced.)')]
        $firewallAllowAzureIps,
        [parameter(mandatory=$False,HelpMessage='The current state of the IP address firewall for this account.)')]
        $firewallState,
        [parameter(mandatory=$False,HelpMessage='The resource location.)')]
        [string]
        $location,
        [parameter(mandatory=$False,HelpMessage='The commitment tier for the next month.)')]
        $newTier,
        [parameter(mandatory=$False,HelpMessage='The default Data Lake Store account associated with this account.)')]
        [string]
        $defaultDataLakeStoreAccount,
        [parameter(mandatory=$False,HelpMessage='The list of firewall rules associated with this account.)')]
        $firewallRules,
        [parameter(mandatory=$False,HelpMessage='The resource tags.)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='The maximum supported degree of parallelism for this account.)')]
        [int]
        $maxDegreeOfParallelism,
        [parameter(mandatory=$False,HelpMessage='The list of Azure Blob Storage accounts associated with this account.)')]
        $storageAccounts,
        [parameter(mandatory=$False,HelpMessage='The maximum supported degree of parallelism per job for this account.)')]
        [int]
        $maxDegreeOfParallelismPerJob,
        [parameter(mandatory=$False,HelpMessage='The name of the Azure resource group.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The minimum supported priority per job for this account.)')]
        [int]
        $minPriorityPerJob,
        [parameter(mandatory=$False,HelpMessage='The maximum supported jobs running under the account at the same time.)')]
        [int]
        $maxJobCount,
        [parameter(mandatory=$False,HelpMessage='The name of the Data Lake Analytics account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The list of Data Lake Store accounts associated with this account.)')]
        $dataLakeStoreAccounts,
        [parameter(mandatory=$False,HelpMessage='The list of compute policies associated with this account.)')]
        $computePolicies,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

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

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["dataLakeStoreAccounts"] = $dataLakeStoreAccounts
        $resource.properties["defaultDataLakeStoreAccount"] = $defaultDataLakeStoreAccount
        $resource.properties["resourceGroupName"] = $resourceGroupName

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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