Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.solutions.kotlin
import com.pulumi.azurenative.solutions.ApplicationDefinitionArgs.builder
import com.pulumi.azurenative.solutions.kotlin.enums.ApplicationLockLevel
import com.pulumi.azurenative.solutions.kotlin.inputs.ApplicationAuthorizationArgs
import com.pulumi.azurenative.solutions.kotlin.inputs.ApplicationAuthorizationArgsBuilder
import com.pulumi.azurenative.solutions.kotlin.inputs.ApplicationDefinitionArtifactArgs
import com.pulumi.azurenative.solutions.kotlin.inputs.ApplicationDefinitionArtifactArgsBuilder
import com.pulumi.azurenative.solutions.kotlin.inputs.ApplicationDeploymentPolicyArgs
import com.pulumi.azurenative.solutions.kotlin.inputs.ApplicationDeploymentPolicyArgsBuilder
import com.pulumi.azurenative.solutions.kotlin.inputs.ApplicationManagementPolicyArgs
import com.pulumi.azurenative.solutions.kotlin.inputs.ApplicationManagementPolicyArgsBuilder
import com.pulumi.azurenative.solutions.kotlin.inputs.ApplicationNotificationPolicyArgs
import com.pulumi.azurenative.solutions.kotlin.inputs.ApplicationNotificationPolicyArgsBuilder
import com.pulumi.azurenative.solutions.kotlin.inputs.ApplicationPackageLockingPolicyDefinitionArgs
import com.pulumi.azurenative.solutions.kotlin.inputs.ApplicationPackageLockingPolicyDefinitionArgsBuilder
import com.pulumi.azurenative.solutions.kotlin.inputs.ApplicationPolicyArgs
import com.pulumi.azurenative.solutions.kotlin.inputs.ApplicationPolicyArgsBuilder
import com.pulumi.azurenative.solutions.kotlin.inputs.SkuArgs
import com.pulumi.azurenative.solutions.kotlin.inputs.SkuArgsBuilder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Any
import kotlin.Boolean
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.collections.Map
import kotlin.jvm.JvmName
/**
* Information about managed application definition.
* Azure REST API version: 2021-07-01. Prior API version in Azure Native 1.x: 2019-07-01.
* Other available API versions: 2017-12-01, 2023-12-01-preview.
* ## Example Usage
* ### Create or update managed application definition
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var applicationDefinition = new AzureNative.Solutions.ApplicationDefinition("applicationDefinition", new()
* {
* ApplicationDefinitionName = "myManagedApplicationDef",
* Authorizations = new[]
* {
* new AzureNative.Solutions.Inputs.ApplicationAuthorizationArgs
* {
* PrincipalId = "validprincipalguid",
* RoleDefinitionId = "validroleguid",
* },
* },
* Description = "myManagedApplicationDef description",
* DisplayName = "myManagedApplicationDef",
* LockLevel = AzureNative.Solutions.ApplicationLockLevel.None,
* PackageFileUri = "https://path/to/packagezipfile",
* ResourceGroupName = "rg",
* });
* });
* ```
* ```go
* package main
* import (
* solutions "github.com/pulumi/pulumi-azure-native-sdk/solutions/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := solutions.NewApplicationDefinition(ctx, "applicationDefinition", &solutions.ApplicationDefinitionArgs{
* ApplicationDefinitionName: pulumi.String("myManagedApplicationDef"),
* Authorizations: solutions.ApplicationAuthorizationArray{
* &solutions.ApplicationAuthorizationArgs{
* PrincipalId: pulumi.String("validprincipalguid"),
* RoleDefinitionId: pulumi.String("validroleguid"),
* },
* },
* Description: pulumi.String("myManagedApplicationDef description"),
* DisplayName: pulumi.String("myManagedApplicationDef"),
* LockLevel: solutions.ApplicationLockLevelNone,
* PackageFileUri: pulumi.String("https://path/to/packagezipfile"),
* ResourceGroupName: pulumi.String("rg"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.solutions.ApplicationDefinition;
* import com.pulumi.azurenative.solutions.ApplicationDefinitionArgs;
* import com.pulumi.azurenative.solutions.inputs.ApplicationAuthorizationArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
* import java.nio.file.Paths;
* public class App {
* public static void main(String[] args) {
* Pulumi.run(App::stack);
* }
* public static void stack(Context ctx) {
* var applicationDefinition = new ApplicationDefinition("applicationDefinition", ApplicationDefinitionArgs.builder()
* .applicationDefinitionName("myManagedApplicationDef")
* .authorizations(ApplicationAuthorizationArgs.builder()
* .principalId("validprincipalguid")
* .roleDefinitionId("validroleguid")
* .build())
* .description("myManagedApplicationDef description")
* .displayName("myManagedApplicationDef")
* .lockLevel("None")
* .packageFileUri("https://path/to/packagezipfile")
* .resourceGroupName("rg")
* .build());
* }
* }
* ```
* ## Import
* An existing resource can be imported using its type token, name, and identifier, e.g.
* ```sh
* $ pulumi import azure-native:solutions:ApplicationDefinition myManagedApplicationDef /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Solutions/applicationDefinitions/{applicationDefinitionName}
* ```
* @property applicationDefinitionName The name of the managed application definition.
* @property artifacts 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.
* @property authorizations The managed application provider authorizations.
* @property createUiDefinition The createUiDefinition json for the backing template with Microsoft.Solutions/applications resource. It can be a JObject or well-formed JSON string.
* @property deploymentPolicy The managed application deployment policy.
* @property description The managed application definition description.
* @property displayName The managed application definition display name.
* @property isEnabled A value indicating whether the package is enabled or not.
* @property location Resource location
* @property lockLevel The managed application lock level.
* @property lockingPolicy The managed application locking policy.
* @property mainTemplate The inline main template json which has resources to be provisioned. It can be a JObject or well-formed JSON string.
* @property managedBy ID of the resource that manages this resource.
* @property managementPolicy The managed application management policy that determines publisher's access to the managed resource group.
* @property notificationPolicy The managed application notification policy.
* @property packageFileUri The managed application definition package file Uri. Use this element
* @property policies The managed application provider policies.
* @property resourceGroupName The name of the resource group. The name is case insensitive.
* @property sku The SKU of the resource.
* @property storageAccountId The storage account id for bring your own storage scenario.
* @property tags Resource tags
*/
public data class ApplicationDefinitionArgs(
public val applicationDefinitionName: Output? = null,
public val artifacts: Output>? = null,
public val authorizations: Output>? = null,
public val createUiDefinition: Output? = null,
public val deploymentPolicy: Output? = null,
public val description: Output? = null,
public val displayName: Output? = null,
public val isEnabled: Output? = null,
public val location: Output? = null,
public val lockLevel: Output? = null,
public val lockingPolicy: Output? = null,
public val mainTemplate: Output? = null,
public val managedBy: Output? = null,
public val managementPolicy: Output? = null,
public val notificationPolicy: Output? = null,
public val packageFileUri: Output? = null,
public val policies: Output>? = null,
public val resourceGroupName: Output? = null,
public val sku: Output? = null,
public val storageAccountId: Output? = null,
public val tags: Output