DefinitionArgs

data class DefinitionArgs(val authorizations: Output<List<DefinitionAuthorizationArgs>>? = null, val createUiDefinition: Output<String>? = null, val description: Output<String>? = null, val displayName: Output<String>? = null, val location: Output<String>? = null, val lockLevel: Output<String>? = null, val mainTemplate: Output<String>? = null, val name: Output<String>? = null, val packageEnabled: Output<Boolean>? = null, val packageFileUri: Output<String>? = null, val resourceGroupName: Output<String>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<DefinitionArgs>

Manages a Managed Application Definition.

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.CoreFunctions;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.managedapplication.Definition;
import com.pulumi.azure.managedapplication.DefinitionArgs;
import com.pulumi.azure.managedapplication.inputs.DefinitionAuthorizationArgs;
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) {
final var current = CoreFunctions.getClientConfig();
var exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()
.location("West Europe")
.build());
var exampleDefinition = new Definition("exampleDefinition", DefinitionArgs.builder()
.location(exampleResourceGroup.location())
.resourceGroupName(exampleResourceGroup.name())
.lockLevel("ReadOnly")
.packageFileUri("https://github.com/Azure/azure-managedapp-samples/raw/master/Managed Application Sample Packages/201-managed-storage-account/managedstorage.zip")
.displayName("TestManagedApplicationDefinition")
.description("Test Managed Application Definition")
.authorizations(DefinitionAuthorizationArgs.builder()
.servicePrincipalId(current.applyValue(getClientConfigResult -> getClientConfigResult.objectId()))
.roleDefinitionId("a094b430-dad3-424d-ae58-13f72fd72591")
.build())
.build());
}
}

Import

Managed Application Definition can be imported using the resource id, e.g.

$ pulumi import azure:managedapplication/definition:Definition example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Solutions/applicationDefinitions/appDefinition1

Constructors

Link copied to clipboard
fun DefinitionArgs(authorizations: Output<List<DefinitionAuthorizationArgs>>? = null, createUiDefinition: Output<String>? = null, description: Output<String>? = null, displayName: Output<String>? = null, location: Output<String>? = null, lockLevel: Output<String>? = null, mainTemplate: Output<String>? = null, name: Output<String>? = null, packageEnabled: Output<Boolean>? = null, packageFileUri: Output<String>? = null, resourceGroupName: Output<String>? = null, tags: Output<Map<String, String>>? = null)

Functions

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

Properties

Link copied to clipboard

One or more authorization block defined below.

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

Specifies the createUiDefinition JSON for the backing template with Microsoft.Solutions/applications resource.

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

Specifies the managed application definition description.

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

Specifies the managed application definition display name.

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

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

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

Specifies the managed application lock level. Valid values include CanNotDelete, None, ReadOnly. Changing this forces a new resource to be created.

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

Specifies the inline main template JSON which has resources to be provisioned.

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

Specifies the name of the Managed Application Definition. Changing this forces a new resource to be created.

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

Is the package enabled? Defaults to true.

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

Specifies the managed application definition package file Uri.

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

The name of the Resource Group where the Managed Application Definition should exist. Changing this forces a new resource to be created.

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

A mapping of tags to assign to the resource.