pspulumiyaml.azurenative.solutions.psm1
using module pspulumiyaml function Invoke-AzureNativeFunctionSolutionsGetJitRequest { 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 JIT request.)')] [string] $jitRequestName ) process { $arguments = @{} $arguments["jitRequestName"] = $jitRequestName $arguments["resourceGroupName"] = $resourceGroupName $functionObject = Invoke-PulumiFunction -Name azure-native:solutions:getJitRequest -variableName $([guid]::NewGuid().Guid) -Arguments $arguments return $functionObject } } function Invoke-AzureNativeFunctionSolutionsGetApplicationDefinition { 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 managed application definition.)')] [string] $applicationDefinitionName ) process { $arguments = @{} $arguments["applicationDefinitionName"] = $applicationDefinitionName $arguments["resourceGroupName"] = $resourceGroupName $functionObject = Invoke-PulumiFunction -Name azure-native:solutions:getApplicationDefinition -variableName $([guid]::NewGuid().Guid) -Arguments $arguments return $functionObject } } function Invoke-AzureNativeFunctionSolutionsGetApplication { 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 managed application.)')] [string] $applicationName ) process { $arguments = @{} $arguments["applicationName"] = $applicationName $arguments["resourceGroupName"] = $resourceGroupName $functionObject = Invoke-PulumiFunction -Name azure-native:solutions:getApplication -variableName $([guid]::NewGuid().Guid) -Arguments $arguments return $functionObject } } class JitSchedulingPolicy { [string] $startTime [string] $duration } function New-AzureNativeTypeSolutionsJitSchedulingPolicy { param ( [parameter(mandatory=$False,HelpMessage='The start time of the request.)')] [string] $startTime, [parameter(mandatory=$False,HelpMessage=')')] [string] $duration ) process { return $([JitSchedulingPolicy]$PSBoundParameters) } } function New-AzureNativeSolutionsJitRequest { [Alias('azure_native_solutions_jitrequest')] 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 JIT request.)')] [string] $jitRequestName, [parameter(mandatory=$False,HelpMessage='The parent application id.)')] [string] $applicationResourceId, [parameter(mandatory=$False,HelpMessage='Resource tags)')] [hashtable] $tags, [parameter(mandatory=$False,HelpMessage='The JIT authorization policies.)')] $jitAuthorizationPolicies, [parameter(mandatory=$False,HelpMessage='The JIT request properties.)')] [JitSchedulingPolicy] $jitSchedulingPolicy, [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 ) process { $resource = [pulumiresource]::new($pulumiid, "azure-native:solutions:JitRequest") $resource.properties["applicationResourceId"] = $applicationResourceId $resource.properties["jitAuthorizationPolicies"] = $jitAuthorizationPolicies $resource.properties["jitSchedulingPolicy"] = $jitSchedulingPolicy $resource.properties["resourceGroupName"] = $resourceGroupName if($PSBoundParameters.Keys -icontains 'jitRequestName') { $resource.properties["jitRequestName"] = $jitRequestName } if($PSBoundParameters.Keys -icontains 'tags') { $resource.properties["tags"] = $tags } if($PSBoundParameters.Keys -icontains 'location') { $resource.properties["location"] = $location } $global:pulumiresources += $resource return $resource } } class ApplicationManagementPolicy { [ValidateSet('NotSpecified', 'Unmanaged', 'Managed')] [string] $mode } function New-AzureNativeTypeSolutionsApplicationManagementPolicy { param ( [parameter(mandatory=$False,HelpMessage='The managed application management mode.)')] [string] [ValidateSet('NotSpecified', 'Unmanaged', 'Managed')] $mode ) process { return $([ApplicationManagementPolicy]$PSBoundParameters) } } class ApplicationNotificationEndpoint { [string] $uri } function New-AzureNativeTypeSolutionsApplicationNotificationEndpoint { param ( [parameter(mandatory=$False,HelpMessage='The managed application notification endpoint uri.)')] [string] $uri ) process { return $([ApplicationNotificationEndpoint]$PSBoundParameters) } } class ApplicationNotificationPolicy { [ApplicationNotificationEndpoint[]] $notificationEndpoints } function New-AzureNativeTypeSolutionsApplicationNotificationPolicy { param ( [parameter(mandatory=$False,HelpMessage='The managed application notification endpoint.)')] $notificationEndpoints ) process { return $([ApplicationNotificationPolicy]$PSBoundParameters) } } class Sku { [string] $name [string] $model [string] $size [string] $tier [string] $family [int] $capacity } function New-AzureNativeTypeSolutionsSku { param ( [parameter(mandatory=$False,HelpMessage='The SKU name.)')] [string] $name, [parameter(mandatory=$False,HelpMessage='The SKU model.)')] [string] $model, [parameter(mandatory=$False,HelpMessage='The SKU size.)')] [string] $size, [parameter(mandatory=$False,HelpMessage='The SKU tier.)')] [string] $tier, [parameter(mandatory=$False,HelpMessage='The SKU family.)')] [string] $family, [parameter(mandatory=$False,HelpMessage='The SKU capacity.)')] [int] $capacity ) process { return $([Sku]$PSBoundParameters) } } class ApplicationDeploymentPolicy { [ValidateSet('NotSpecified', 'Incremental', 'Complete')] [string] $deploymentMode } function New-AzureNativeTypeSolutionsApplicationDeploymentPolicy { param ( [parameter(mandatory=$False,HelpMessage='The managed application deployment mode.)')] [string] [ValidateSet('NotSpecified', 'Incremental', 'Complete')] $deploymentMode ) process { return $([ApplicationDeploymentPolicy]$PSBoundParameters) } } class ApplicationPackageLockingPolicyDefinition { [string[]] $allowedDataActions [string[]] $allowedActions } function New-AzureNativeTypeSolutionsApplicationPackageLockingPolicyDefinition { param ( [parameter(mandatory=$False,HelpMessage='The deny assignment excluded data actions.)')] [string[]] $allowedDataActions, [parameter(mandatory=$False,HelpMessage='The deny assignment excluded actions.)')] [string[]] $allowedActions ) process { return $([ApplicationPackageLockingPolicyDefinition]$PSBoundParameters) } } function New-AzureNativeSolutionsApplicationDefinition { [Alias('azure_native_solutions_applicationdefinition')] param ( [parameter(mandatory=$False,HelpMessage='The managed application lock level.)')] $lockLevel, [parameter(mandatory=$False,HelpMessage='The managed application definition package file Uri. Use this element)')] [string] $packageFileUri, [parameter(mandatory=$False,HelpMessage='The name of the resource group. 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=$False,HelpMessage='The createUiDefinition json for the backing template with Microsoft.Solutions/applications resource. It can be a JObject or well-formed JSON string.)')] $createUiDefinition, [parameter(mandatory=$False,HelpMessage='The managed application management policy that determines publisher''s access to the managed resource group.)')] [ApplicationManagementPolicy] $managementPolicy, [parameter(mandatory=$False,HelpMessage='ID of the resource that manages this resource.)')] [string] $managedBy, [parameter(mandatory=$False,HelpMessage='The managed application notification policy.)')] [ApplicationNotificationPolicy] $notificationPolicy, [parameter(mandatory=$False,HelpMessage='The managed application provider authorizations.)')] $authorizations, [parameter(mandatory=$False,HelpMessage='The name of the managed application definition.)')] [string] $applicationDefinitionName, [parameter(mandatory=$False,HelpMessage='The collection of managed application artifacts. The portal will use the files specified as artifacts to construct the user experience of creating a managed application from a managed application definition.)')] $artifacts, [parameter(mandatory=$False,HelpMessage='The SKU of the resource.)')] [Sku] $sku, [parameter(mandatory=$False,HelpMessage='The managed application definition description.)')] [string] $description, [parameter(mandatory=$False,HelpMessage='A value indicating whether the package is enabled or not.)')] [bool] $isEnabled, [parameter(mandatory=$False,HelpMessage='The managed application deployment policy.)')] [ApplicationDeploymentPolicy] $deploymentPolicy, [parameter(mandatory=$False,HelpMessage='The managed application locking policy.)')] [ApplicationPackageLockingPolicyDefinition] $lockingPolicy, [parameter(mandatory=$False,HelpMessage='The inline main template json which has resources to be provisioned. It can be a JObject or well-formed JSON string.)')] $mainTemplate, [parameter(mandatory=$False,HelpMessage='The managed application definition display name.)')] [string] $displayName, [parameter(mandatory=$False,HelpMessage='The managed application provider policies.)')] $policies, [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:solutions:ApplicationDefinition") $resource.properties["lockLevel"] = $lockLevel $resource.properties["resourceGroupName"] = $resourceGroupName if($PSBoundParameters.Keys -icontains 'packageFileUri') { $resource.properties["packageFileUri"] = $packageFileUri } if($PSBoundParameters.Keys -icontains 'tags') { $resource.properties["tags"] = $tags } if($PSBoundParameters.Keys -icontains 'location') { $resource.properties["location"] = $location } if($PSBoundParameters.Keys -icontains 'createUiDefinition') { $resource.properties["createUiDefinition"] = $createUiDefinition } if($PSBoundParameters.Keys -icontains 'managementPolicy') { $resource.properties["managementPolicy"] = $managementPolicy } if($PSBoundParameters.Keys -icontains 'managedBy') { $resource.properties["managedBy"] = $managedBy } if($PSBoundParameters.Keys -icontains 'notificationPolicy') { $resource.properties["notificationPolicy"] = $notificationPolicy } if($PSBoundParameters.Keys -icontains 'authorizations') { $resource.properties["authorizations"] = $authorizations } if($PSBoundParameters.Keys -icontains 'applicationDefinitionName') { $resource.properties["applicationDefinitionName"] = $applicationDefinitionName } if($PSBoundParameters.Keys -icontains 'artifacts') { $resource.properties["artifacts"] = $artifacts } if($PSBoundParameters.Keys -icontains 'sku') { $resource.properties["sku"] = $sku } if($PSBoundParameters.Keys -icontains 'description') { $resource.properties["description"] = $description } if($PSBoundParameters.Keys -icontains 'isEnabled') { $resource.properties["isEnabled"] = $isEnabled } if($PSBoundParameters.Keys -icontains 'deploymentPolicy') { $resource.properties["deploymentPolicy"] = $deploymentPolicy } if($PSBoundParameters.Keys -icontains 'lockingPolicy') { $resource.properties["lockingPolicy"] = $lockingPolicy } if($PSBoundParameters.Keys -icontains 'mainTemplate') { $resource.properties["mainTemplate"] = $mainTemplate } if($PSBoundParameters.Keys -icontains 'displayName') { $resource.properties["displayName"] = $displayName } if($PSBoundParameters.Keys -icontains 'policies') { $resource.properties["policies"] = $policies } $global:pulumiresources += $resource return $resource } } class JitApproverDefinition { [string] $displayName [string] $id [ValidateSet('user', 'group')] [string] $type } function New-AzureNativeTypeSolutionsJitApproverDefinition { param ( [parameter(mandatory=$False,HelpMessage='The approver display name.)')] [string] $displayName, [parameter(mandatory=$False,HelpMessage='The approver service principal Id.)')] [string] $id, [parameter(mandatory=$False,HelpMessage='The approver type.)')] [string] [ValidateSet('user', 'group')] $type ) process { return $([JitApproverDefinition]$PSBoundParameters) } } class ApplicationJitAccessPolicy { [JitApproverDefinition[]] $jitApprovers [ValidateSet('NotSpecified', 'AutoApprove', 'ManualApprove')] [string] $jitApprovalMode [ValidateSet('NotSpecified', 'AutoApprove', 'ManualApprove')] [bool] $jitAccessEnabled [ValidateSet('NotSpecified', 'AutoApprove', 'ManualApprove')] [string] $maximumJitAccessDuration } function New-AzureNativeTypeSolutionsApplicationJitAccessPolicy { param ( [parameter(mandatory=$False,HelpMessage='The JIT approvers)')] $jitApprovers, [parameter(mandatory=$False,HelpMessage='JIT approval mode.)')] [string] [ValidateSet('NotSpecified', 'AutoApprove', 'ManualApprove')] $jitApprovalMode, [parameter(mandatory=$False,HelpMessage='Whether the JIT access is enabled.)')] [bool] $jitAccessEnabled, [parameter(mandatory=$False,HelpMessage='The maximum duration JIT access is granted. This is an ISO8601 time period value.)')] [string] $maximumJitAccessDuration ) process { return $([ApplicationJitAccessPolicy]$PSBoundParameters) } } class Plan { [string] $promotionCode [string] $name [string] $product [string] $version [string] $publisher } function New-AzureNativeTypeSolutionsPlan { param ( [parameter(mandatory=$False,HelpMessage='The promotion code.)')] [string] $promotionCode, [parameter(mandatory=$False,HelpMessage='The plan name.)')] [string] $name, [parameter(mandatory=$False,HelpMessage='The product code.)')] [string] $product, [parameter(mandatory=$False,HelpMessage='The plan''s version.)')] [string] $version, [parameter(mandatory=$False,HelpMessage='The publisher ID.)')] [string] $publisher ) process { return $([Plan]$PSBoundParameters) } } class Identity { [ValidateSet('SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', 'None')] [object] $type [ValidateSet('SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', 'None')] [object] $userAssignedIdentities } function New-AzureNativeTypeSolutionsIdentity { param ( [parameter(mandatory=$False,HelpMessage='The identity type.)')] $type, [parameter(mandatory=$False,HelpMessage='The list of user identities associated with the resource. The user identity dictionary key references will be resource ids in the form: ''/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}''.)')] [object] $userAssignedIdentities ) process { return $([Identity]$PSBoundParameters) } } function New-AzureNativeSolutionsApplication { [Alias('azure_native_solutions_application')] param ( [parameter(mandatory=$False,HelpMessage='The SKU of the resource.)')] [Sku] $sku, [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 managed resource group Id.)')] [string] $managedResourceGroupId, [parameter(mandatory=$False,HelpMessage='The managed application Jit access policy.)')] [ApplicationJitAccessPolicy] $jitAccessPolicy, [parameter(mandatory=$False,HelpMessage='The plan information.)')] [Plan] $plan, [parameter(mandatory=$False,HelpMessage='The identity of the resource.)')] [Identity] $identity, [parameter(mandatory=$False,HelpMessage='Resource location)')] [string] $location, [parameter(mandatory=$False,HelpMessage='The fully qualified path of managed application definition Id.)')] [string] $applicationDefinitionId, [parameter(mandatory=$False,HelpMessage='The name of the managed application.)')] [string] $applicationName, [parameter(mandatory=$False,HelpMessage='The kind of the managed application. Allowed values are MarketPlace and ServiceCatalog.)')] [string] $kind, [parameter(mandatory=$False,HelpMessage='ID of the resource that manages this resource.)')] [string] $managedBy, [parameter(mandatory=$False,HelpMessage='Name and value pairs that define the managed application parameters. It can be a JObject or a well formed JSON string.)')] $parameters, [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:solutions:Application") $resource.properties["kind"] = $kind $resource.properties["resourceGroupName"] = $resourceGroupName if($PSBoundParameters.Keys -icontains 'sku') { $resource.properties["sku"] = $sku } if($PSBoundParameters.Keys -icontains 'tags') { $resource.properties["tags"] = $tags } if($PSBoundParameters.Keys -icontains 'managedResourceGroupId') { $resource.properties["managedResourceGroupId"] = $managedResourceGroupId } if($PSBoundParameters.Keys -icontains 'jitAccessPolicy') { $resource.properties["jitAccessPolicy"] = $jitAccessPolicy } if($PSBoundParameters.Keys -icontains 'plan') { $resource.properties["plan"] = $plan } if($PSBoundParameters.Keys -icontains 'identity') { $resource.properties["identity"] = $identity } if($PSBoundParameters.Keys -icontains 'location') { $resource.properties["location"] = $location } if($PSBoundParameters.Keys -icontains 'applicationDefinitionId') { $resource.properties["applicationDefinitionId"] = $applicationDefinitionId } if($PSBoundParameters.Keys -icontains 'applicationName') { $resource.properties["applicationName"] = $applicationName } if($PSBoundParameters.Keys -icontains 'managedBy') { $resource.properties["managedBy"] = $managedBy } if($PSBoundParameters.Keys -icontains 'parameters') { $resource.properties["parameters"] = $parameters } $global:pulumiresources += $resource return $resource } } |