ApplicationDefinitionArgs

data class ApplicationDefinitionArgs(val applicationDefinitionName: Output<String>? = null, val artifacts: Output<List<ApplicationDefinitionArtifactArgs>>? = null, val authorizations: Output<List<ApplicationAuthorizationArgs>>? = null, val createUiDefinition: Output<Any>? = null, val deploymentPolicy: Output<ApplicationDeploymentPolicyArgs>? = null, val description: Output<String>? = null, val displayName: Output<String>? = null, val isEnabled: Output<Boolean>? = null, val location: Output<String>? = null, val lockLevel: Output<ApplicationLockLevel>? = null, val lockingPolicy: Output<ApplicationPackageLockingPolicyDefinitionArgs>? = null, val mainTemplate: Output<Any>? = null, val managedBy: Output<String>? = null, val managementPolicy: Output<ApplicationManagementPolicyArgs>? = null, val notificationPolicy: Output<ApplicationNotificationPolicyArgs>? = null, val packageFileUri: Output<String>? = null, val policies: Output<List<ApplicationPolicyArgs>>? = null, val resourceGroupName: Output<String>? = null, val sku: Output<SkuArgs>? = null, val storageAccountId: Output<String>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<ApplicationDefinitionArgs>

Information about managed application definition. Uses Azure REST API version 2021-07-01. In version 2.x of the Azure Native provider, it used API version 2021-07-01. Other available API versions: 2023-12-01-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native solutions [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

Create or update managed application definition

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",
});
});
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
})
}
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.

$ pulumi import azure-native:solutions:ApplicationDefinition myManagedApplicationDef /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Solutions/applicationDefinitions/{applicationDefinitionName}

Constructors

Link copied to clipboard
constructor(applicationDefinitionName: Output<String>? = null, artifacts: Output<List<ApplicationDefinitionArtifactArgs>>? = null, authorizations: Output<List<ApplicationAuthorizationArgs>>? = null, createUiDefinition: Output<Any>? = null, deploymentPolicy: Output<ApplicationDeploymentPolicyArgs>? = null, description: Output<String>? = null, displayName: Output<String>? = null, isEnabled: Output<Boolean>? = null, location: Output<String>? = null, lockLevel: Output<ApplicationLockLevel>? = null, lockingPolicy: Output<ApplicationPackageLockingPolicyDefinitionArgs>? = null, mainTemplate: Output<Any>? = null, managedBy: Output<String>? = null, managementPolicy: Output<ApplicationManagementPolicyArgs>? = null, notificationPolicy: Output<ApplicationNotificationPolicyArgs>? = null, packageFileUri: Output<String>? = null, policies: Output<List<ApplicationPolicyArgs>>? = null, resourceGroupName: Output<String>? = null, sku: Output<SkuArgs>? = null, storageAccountId: Output<String>? = null, tags: Output<Map<String, String>>? = null)

Properties

Link copied to clipboard
val applicationDefinitionName: Output<String>? = null

The name of the managed application definition.

Link copied to clipboard

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.

Link copied to clipboard

The managed application provider authorizations.

Link copied to clipboard
val createUiDefinition: Output<Any>? = null

The createUiDefinition json for the backing template with Microsoft.Solutions/applications resource. It can be a JObject or well-formed JSON string.

Link copied to clipboard

The managed application deployment policy.

Link copied to clipboard
val description: Output<String>? = null

The managed application definition description.

Link copied to clipboard
val displayName: Output<String>? = null

The managed application definition display name.

Link copied to clipboard
val isEnabled: Output<Boolean>? = null

A value indicating whether the package is enabled or not.

Link copied to clipboard
val location: Output<String>? = null

Resource location

Link copied to clipboard

The managed application locking policy.

Link copied to clipboard
val lockLevel: Output<ApplicationLockLevel>? = null

The managed application lock level.

Link copied to clipboard
val mainTemplate: Output<Any>? = null

The inline main template json which has resources to be provisioned. It can be a JObject or well-formed JSON string.

Link copied to clipboard
val managedBy: Output<String>? = null

ID of the resource that manages this resource.

Link copied to clipboard

The managed application management policy that determines publisher's access to the managed resource group.

Link copied to clipboard

The managed application notification policy.

Link copied to clipboard
val packageFileUri: Output<String>? = null

The managed application definition package file Uri. Use this element

Link copied to clipboard
val policies: Output<List<ApplicationPolicyArgs>>? = null

The managed application provider policies.

Link copied to clipboard
val resourceGroupName: Output<String>? = null

The name of the resource group. The name is case insensitive.

Link copied to clipboard
val sku: Output<SkuArgs>? = null

The SKU of the resource.

Link copied to clipboard
val storageAccountId: Output<String>? = null

The storage account id for bring your own storage scenario.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

Resource tags

Functions

Link copied to clipboard
open override fun toJava(): ApplicationDefinitionArgs