DefinitionArgs

data class DefinitionArgs(val authorizations: Output<List<DefinitionAuthorizationArgs>>? = null, val description: Output<String>? = null, val eligibleAuthorizations: Output<List<DefinitionEligibleAuthorizationArgs>>? = null, val lighthouseDefinitionId: Output<String>? = null, val managingTenantId: Output<String>? = null, val name: Output<String>? = null, val plan: Output<DefinitionPlanArgs>? = null, val scope: Output<String>? = null) : ConvertibleToJava<DefinitionArgs>

Manages a Lighthouse Definition.

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.authorization.AuthorizationFunctions;
import com.pulumi.azure.authorization.inputs.GetRoleDefinitionArgs;
import com.pulumi.azure.lighthouse.Definition;
import com.pulumi.azure.lighthouse.DefinitionArgs;
import com.pulumi.azure.lighthouse.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 contributor = AuthorizationFunctions.getRoleDefinition(GetRoleDefinitionArgs.builder()
.roleDefinitionId("b24988ac-6180-42a0-ab88-20f7382dd24c")
.build());
var example = new Definition("example", DefinitionArgs.builder()
.description("This is a lighthouse definition created IaC")
.managingTenantId("00000000-0000-0000-0000-000000000000")
.scope("/subscriptions/00000000-0000-0000-0000-000000000000")
.authorizations(DefinitionAuthorizationArgs.builder()
.principalId("00000000-0000-0000-0000-000000000000")
.roleDefinitionId(contributor.applyValue(getRoleDefinitionResult -> getRoleDefinitionResult.roleDefinitionId()))
.principalDisplayName("Tier 1 Support")
.build())
.build());
}
}

Import

Lighthouse Definitions can be imported using the resource id, e.g.

$ pulumi import azure:lighthouse/definition:Definition example /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ManagedServices/registrationDefinitions/00000000-0000-0000-0000-000000000000

Constructors

Link copied to clipboard
fun DefinitionArgs(authorizations: Output<List<DefinitionAuthorizationArgs>>? = null, description: Output<String>? = null, eligibleAuthorizations: Output<List<DefinitionEligibleAuthorizationArgs>>? = null, lighthouseDefinitionId: Output<String>? = null, managingTenantId: Output<String>? = null, name: Output<String>? = null, plan: Output<DefinitionPlanArgs>? = null, scope: Output<String>? = null)

Functions

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

Properties

Link copied to clipboard

An authorization block as defined below.

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

A description of the Lighthouse Definition.

Link copied to clipboard

An eligible_authorization block as defined below.

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

A unique UUID/GUID which identifies this lighthouse definition - one will be generated if not specified. Changing this forces a new resource to be created.

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

The ID of the managing tenant. Changing this forces a new resource to be created.

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

The name of the Lighthouse Definition. Changing this forces a new resource to be created.

Link copied to clipboard
val plan: Output<DefinitionPlanArgs>? = null

A plan block as defined below.

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

The ID of the managed subscription. Changing this forces a new resource to be created.