pspulumiyaml.azurenative.deploymentmanager.psm1

using module pspulumiyaml
function Invoke-AzureNativeFunctionDeploymentmanagerGetServiceUnit
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service unit resource.)')]
        [string]
        $serviceUnitName,
        [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 service topology .)')]
        [string]
        $serviceTopologyName,
        [parameter(mandatory=$False,HelpMessage='The name of the service resource.)')]
        [string]
        $serviceName
    )

    process
    {
        $arguments = @{}
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["serviceName"] = $serviceName
        $arguments["serviceTopologyName"] = $serviceTopologyName
        $arguments["serviceUnitName"] = $serviceUnitName

        $functionObject = Invoke-PulumiFunction -Name azure-native:deploymentmanager:getServiceUnit -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDeploymentmanagerGetServiceTopology
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service topology .)')]
        [string]
        $serviceTopologyName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName
    )

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:deploymentmanager:getServiceTopology -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDeploymentmanagerGetService
{
    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 service topology .)')]
        [string]
        $serviceTopologyName,
        [parameter(mandatory=$False,HelpMessage='The name of the service resource.)')]
        [string]
        $serviceName
    )

    process
    {
        $arguments = @{}
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["serviceName"] = $serviceName
        $arguments["serviceTopologyName"] = $serviceTopologyName

        $functionObject = Invoke-PulumiFunction -Name azure-native:deploymentmanager:getService -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDeploymentmanagerGetArtifactSource
{
    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 artifact source.)')]
        [string]
        $artifactSourceName
    )

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:deploymentmanager:getArtifactSource -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDeploymentmanagerGetRollout
{
    param (
        [parameter(mandatory=$False,HelpMessage='The rollout name.)')]
        [string]
        $rolloutName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Rollout retry attempt ordinal to get the result of. If not specified, result of the latest attempt will be returned.)')]
        [int]
        $retryAttempt
    )

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

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:deploymentmanager:getRollout -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDeploymentmanagerGetStep
{
    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 deployment step.)')]
        [string]
        $stepName
    )

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:deploymentmanager:getStep -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function New-AzureNativeDeploymentmanagerService
{
    [Alias('azure_native_deploymentmanager_service')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service topology .)')]
        [string]
        $serviceTopologyName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The subscription to which the resources in the service belong to or should be deployed to.)')]
        [string]
        $targetSubscriptionId,
        [parameter(mandatory=$False,HelpMessage='Resource tags.)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='The Azure location to which the resources in the service belong to or should be deployed to.)')]
        [string]
        $targetLocation,
        [parameter(mandatory=$False,HelpMessage='The name of the service resource.)')]
        [string]
        $serviceName,
        [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:deploymentmanager:Service")

        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["serviceTopologyName"] = $serviceTopologyName
        $resource.properties["targetLocation"] = $targetLocation
        $resource.properties["targetSubscriptionId"] = $targetSubscriptionId

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

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
class ServiceUnitArtifacts
{
    [string] $templateArtifactSourceRelativePath
    [string] $parametersArtifactSourceRelativePath
    [string] $parametersUri
    [string] $templateUri
}
function New-AzureNativeTypeDeploymentmanagerServiceUnitArtifacts
{
    param (
        [parameter(mandatory=$False,HelpMessage='The path to the ARM template file relative to the artifact source.)')]
        [string]
        $templateArtifactSourceRelativePath,
        [parameter(mandatory=$False,HelpMessage='The path to the ARM parameters file relative to the artifact source.)')]
        [string]
        $parametersArtifactSourceRelativePath,
        [parameter(mandatory=$False,HelpMessage='The full URI of the ARM parameters file with the SAS token.)')]
        [string]
        $parametersUri,
        [parameter(mandatory=$False,HelpMessage='The full URI of the ARM template file with the SAS token.)')]
        [string]
        $templateUri
    )

    process
    {
        return $([ServiceUnitArtifacts]$PSBoundParameters)
    }
}
function New-AzureNativeDeploymentmanagerServiceUnit
{
    [Alias('azure_native_deploymentmanager_serviceunit')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The artifacts for the service unit.)')]
        [ServiceUnitArtifacts]
        $artifacts,
        [parameter(mandatory=$False,HelpMessage='The name of the service unit resource.)')]
        [string]
        $serviceUnitName,
        [parameter(mandatory=$False,HelpMessage='The name of the service resource.)')]
        [string]
        $serviceName,
        [parameter(mandatory=$False,HelpMessage='The Azure Resource Group to which the resources in the service unit belong to or should be deployed to.)')]
        [string]
        $targetResourceGroup,
        [parameter(mandatory=$False,HelpMessage='Resource tags.)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='Describes the type of ARM deployment to be performed on the resource.)')]
        $deploymentMode,
        [parameter(mandatory=$False,HelpMessage='The name of the service topology .)')]
        [string]
        $serviceTopologyName,
        [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:deploymentmanager:ServiceUnit")

        $resource.properties["deploymentMode"] = $deploymentMode
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["serviceName"] = $serviceName
        $resource.properties["serviceTopologyName"] = $serviceTopologyName
        $resource.properties["targetResourceGroup"] = $targetResourceGroup

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

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

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
class Identity
{
    [string[]] $identityIds
    [string] $type
}
function New-AzureNativeTypeDeploymentmanagerIdentity
{
    param (
        [parameter(mandatory=$False,HelpMessage='The list of identities.)')]
        [string[]]
        $identityIds,
        [parameter(mandatory=$False,HelpMessage='The identity type.)')]
        [string]
        $type
    )

    process
    {
        return $([Identity]$PSBoundParameters)
    }
}
function New-AzureNativeDeploymentmanagerRollout
{
    [Alias('azure_native_deploymentmanager_rollout')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The rollout name.)')]
        [string]
        $rolloutName,
        [parameter(mandatory=$False,HelpMessage='Identity for the resource.)')]
        [Identity]
        $identity,
        [parameter(mandatory=$False,HelpMessage='The resource Id of the service topology from which service units are being referenced in step groups to be deployed.)')]
        [string]
        $targetServiceTopologyId,
        [parameter(mandatory=$False,HelpMessage='The reference to the artifact source resource Id where the payload is located.)')]
        [string]
        $artifactSourceId,
        [parameter(mandatory=$False,HelpMessage='The version of the build being deployed.)')]
        [string]
        $buildVersion,
        [parameter(mandatory=$False,HelpMessage='Resource tags.)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='The list of step groups that define the orchestration.)')]
        $stepGroups,
        [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:deploymentmanager:Rollout")

        $resource.properties["buildVersion"] = $buildVersion
        $resource.properties["identity"] = $identity
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["stepGroups"] = $stepGroups
        $resource.properties["targetServiceTopologyId"] = $targetServiceTopologyId

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

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

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDeploymentmanagerServiceTopology
{
    [Alias('azure_native_deploymentmanager_servicetopology')]
    param (
        [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='The name of the service topology .)')]
        [string]
        $serviceTopologyName,
        [parameter(mandatory=$False,HelpMessage='The resource Id of the artifact source that contains the artifacts that can be referenced in the service units.)')]
        [string]
        $artifactSourceId,
        [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:deploymentmanager:ServiceTopology")

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

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

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

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
class SasAuthentication
{
    [string] $type
    [string] $sasUri
}
function New-AzureNativeTypeDeploymentmanagerSasAuthentication
{
    param (
        [parameter(mandatory=$False,HelpMessage='The authentication type
Expected value is ''Sas''.)'
)]
        [string]
        $type,
        [parameter(mandatory=$False,HelpMessage='The SAS URI to the Azure Storage blob container. Any offset from the root of the container to where the artifacts are located can be defined in the artifactRoot.)')]
        [string]
        $sasUri
    )

    process
    {
        return $([SasAuthentication]$PSBoundParameters)
    }
}
function New-AzureNativeDeploymentmanagerArtifactSource
{
    [Alias('azure_native_deploymentmanager_artifactsource')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource tags.)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='The path from the location that the ''authentication'' property [say, a SAS URI to the blob container] refers to, to the location of the artifacts. This can be used to differentiate different versions of the artifacts. Or, different types of artifacts like binaries or templates. The location referenced by the authentication property concatenated with this optional artifactRoot path forms the artifact source location where the artifacts are expected to be found.)')]
        [string]
        $artifactRoot,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The type of artifact source used.)')]
        [string]
        $sourceType,
        [parameter(mandatory=$False,HelpMessage='The authentication method to use to access the artifact source.)')]
        [SasAuthentication]
        $authentication,
        [parameter(mandatory=$False,HelpMessage='The geo-location where the resource lives)')]
        [string]
        $location,
        [parameter(mandatory=$False,HelpMessage='The name of the artifact source.)')]
        [string]
        $artifactSourceName,
        [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:deploymentmanager:ArtifactSource")

        $resource.properties["authentication"] = $authentication
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["sourceType"] = $sourceType

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

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

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
class WaitStepAttributes
{
    [string] $duration
}
function New-AzureNativeTypeDeploymentmanagerWaitStepAttributes
{
    param (
        [parameter(mandatory=$False,HelpMessage='The duration in ISO 8601 format of how long the wait should be.)')]
        [string]
        $duration
    )

    process
    {
        return $([WaitStepAttributes]$PSBoundParameters)
    }
}
class WaitStepProperties
{
    [string] $stepType
    [WaitStepAttributes] $attributes
}
function New-AzureNativeTypeDeploymentmanagerWaitStepProperties
{
    param (
        [parameter(mandatory=$False,HelpMessage='The type of step.
Expected value is ''Wait''.)'
)]
        [string]
        $stepType,
        [parameter(mandatory=$False,HelpMessage='The Wait attributes)')]
        [WaitStepAttributes]
        $attributes
    )

    process
    {
        return $([WaitStepProperties]$PSBoundParameters)
    }
}
function New-AzureNativeDeploymentmanagerStep
{
    [Alias('azure_native_deploymentmanager_step')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The properties that define the step.)')]
        [WaitStepProperties]
        $properties,
        [parameter(mandatory=$False,HelpMessage='The name of the deployment step.)')]
        [string]
        $stepName,
        [parameter(mandatory=$False,HelpMessage='Resource tags.)')]
        [hashtable]
        $tags,
        [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:deploymentmanager:Step")

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

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

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

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

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