pspulumiyaml.azurenative.operationsmanagement.psm1

using module pspulumiyaml
function Invoke-AzureNativeFunctionOperationsmanagementGetManagementConfiguration
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group to get. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='User Management Configuration Name.)')]
        [string]
        $managementConfigurationName
    )

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:operationsmanagement:getManagementConfiguration -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionOperationsmanagementGetManagementAssociation
{
    param (
        [parameter(mandatory=$False,HelpMessage='Parent resource name.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='Resource type for the parent resource)')]
        [string]
        $resourceType,
        [parameter(mandatory=$False,HelpMessage='User ManagementAssociation Name.)')]
        [string]
        $managementAssociationName,
        [parameter(mandatory=$False,HelpMessage='Provider name for the parent resource.)')]
        [string]
        $providerName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group to get. The name is case insensitive.)')]
        [string]
        $resourceGroupName
    )

    process
    {
        $arguments = @{}
        $arguments["managementAssociationName"] = $managementAssociationName
        $arguments["providerName"] = $providerName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["resourceName"] = $resourceName
        $arguments["resourceType"] = $resourceType

        $functionObject = Invoke-PulumiFunction -Name azure-native:operationsmanagement:getManagementAssociation -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionOperationsmanagementGetSolution
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group to get. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='User Solution Name.)')]
        [string]
        $solutionName
    )

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:operationsmanagement:getSolution -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
class SolutionPlan
{
    [string] $publisher
    [string] $promotionCode
    [string] $name
    [string] $product
}
function New-AzureNativeTypeOperationsmanagementSolutionPlan
{
    param (
        [parameter(mandatory=$False,HelpMessage='Publisher name. For gallery solution, it is Microsoft.)')]
        [string]
        $publisher,
        [parameter(mandatory=$False,HelpMessage='promotionCode, Not really used now, can you left as empty)')]
        [string]
        $promotionCode,
        [parameter(mandatory=$False,HelpMessage='name of the solution to be created. For Microsoft published solution it should be in the format of solutionType(workspaceName). SolutionType part is case sensitive. For third party solution, it can be anything.)')]
        [string]
        $name,
        [parameter(mandatory=$False,HelpMessage='name of the solution to enabled/add. For Microsoft published gallery solution it should be in the format of OMSGallery/<solutionType>. This is case sensitive)')]
        [string]
        $product
    )

    process
    {
        return $([SolutionPlan]$PSBoundParameters)
    }
}
class SolutionProperties
{
    [string[]] $referencedResources
    [string] $workspaceResourceId
    [string[]] $containedResources
}
function New-AzureNativeTypeOperationsmanagementSolutionProperties
{
    param (
        [parameter(mandatory=$False,HelpMessage='The resources that will be referenced from this solution. Deleting any of those solution out of band will break the solution.)')]
        [string[]]
        $referencedResources,
        [parameter(mandatory=$False,HelpMessage='The azure resourceId for the workspace where the solution will be deployed/enabled.)')]
        [string]
        $workspaceResourceId,
        [parameter(mandatory=$False,HelpMessage='The azure resources that will be contained within the solutions. They will be locked and gets deleted automatically when the solution is deleted.)')]
        [string[]]
        $containedResources
    )

    process
    {
        return $([SolutionProperties]$PSBoundParameters)
    }
}
function New-AzureNativeOperationsmanagementSolution
{
    [Alias('azure_native_operationsmanagement_solution')]
    param (
        [parameter(mandatory=$False,HelpMessage='User Solution Name.)')]
        [string]
        $solutionName,
        [parameter(mandatory=$False,HelpMessage='Plan for solution object supported by the OperationsManagement resource provider.)')]
        [SolutionPlan]
        $plan,
        [parameter(mandatory=$False,HelpMessage='Properties for solution object supported by the OperationsManagement resource provider.)')]
        [SolutionProperties]
        $properties,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group to get. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Resource tags)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='Resource location)')]
        [string]
        $location,
        [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:operationsmanagement:Solution")

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

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

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

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

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
class ArmTemplateParameter
{
    [string] $name
    [string] $value
}
function New-AzureNativeTypeOperationsmanagementArmTemplateParameter
{
    param (
        [parameter(mandatory=$False,HelpMessage='name of the parameter.)')]
        [string]
        $name,
        [parameter(mandatory=$False,HelpMessage='value for the parameter. In Jtoken )')]
        [string]
        $value
    )

    process
    {
        return $([ArmTemplateParameter]$PSBoundParameters)
    }
}
class ManagementConfigurationProperties
{
    [object] $template
    [string] $parentResourceType
    [ArmTemplateParameter[]] $parameters
    [string] $applicationId
}
function New-AzureNativeTypeOperationsmanagementManagementConfigurationProperties
{
    param (
        [parameter(mandatory=$False,HelpMessage='The Json object containing the ARM template to deploy)')]
        $template,
        [parameter(mandatory=$False,HelpMessage='The type of the parent resource.)')]
        [string]
        $parentResourceType,
        [parameter(mandatory=$False,HelpMessage='Parameters to run the ARM template)')]
        $parameters,
        [parameter(mandatory=$False,HelpMessage='The applicationId of the appliance for this Management.)')]
        [string]
        $applicationId
    )

    process
    {
        return $([ManagementConfigurationProperties]$PSBoundParameters)
    }
}
function New-AzureNativeOperationsmanagementManagementConfiguration
{
    [Alias('azure_native_operationsmanagement_managementconfiguration')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource location)')]
        [string]
        $location,
        [parameter(mandatory=$False,HelpMessage='Properties for ManagementConfiguration object supported by the OperationsManagement resource provider.)')]
        [ManagementConfigurationProperties]
        $properties,
        [parameter(mandatory=$False,HelpMessage='User Management Configuration Name.)')]
        [string]
        $managementConfigurationName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group to get. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [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:operationsmanagement:ManagementConfiguration")

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

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

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
class ManagementAssociationProperties
{
    [string] $applicationId
}
function New-AzureNativeTypeOperationsmanagementManagementAssociationProperties
{
    param (
        [parameter(mandatory=$False,HelpMessage='The applicationId of the appliance for this association.)')]
        [string]
        $applicationId
    )

    process
    {
        return $([ManagementAssociationProperties]$PSBoundParameters)
    }
}
function New-AzureNativeOperationsmanagementManagementAssociation
{
    [Alias('azure_native_operationsmanagement_managementassociation')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource type for the parent resource)')]
        [string]
        $resourceType,
        [parameter(mandatory=$False,HelpMessage='User ManagementAssociation Name.)')]
        [string]
        $managementAssociationName,
        [parameter(mandatory=$False,HelpMessage='Properties for ManagementAssociation object supported by the OperationsManagement resource provider.)')]
        [ManagementAssociationProperties]
        $properties,
        [parameter(mandatory=$False,HelpMessage='Provider name for the parent resource.)')]
        [string]
        $providerName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group to get. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Parent resource name.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='Resource location)')]
        [string]
        $location,
        [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:operationsmanagement:ManagementAssociation")

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

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

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

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

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