PolicyAssignmentArtifactArgs

data class PolicyAssignmentArtifactArgs(val artifactName: Output<String>? = null, val blueprintName: Output<String>? = null, val dependsOn: Output<List<String>>? = null, val description: Output<String>? = null, val displayName: Output<String>? = null, val kind: Output<String>? = null, val parameters: Output<Map<String, ParameterValueArgs>>? = null, val policyDefinitionId: Output<String>? = null, val resourceGroup: Output<String>? = null, val resourceScope: Output<String>? = null) : ConvertibleToJava<PolicyAssignmentArtifactArgs>

Blueprint artifact that applies a Policy assignment. Uses Azure REST API version 2018-11-01-preview. In version 2.x of the Azure Native provider, it used API version 2018-11-01-preview.

Example Usage

MG-ARMTemplateArtifact

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var policyAssignmentArtifact = new AzureNative.Blueprint.PolicyAssignmentArtifact("policyAssignmentArtifact", new()
{
ArtifactName = "storageTemplate",
BlueprintName = "simpleBlueprint",
ResourceScope = "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup",
});
});
package main
import (
blueprint "github.com/pulumi/pulumi-azure-native-sdk/blueprint/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := blueprint.NewPolicyAssignmentArtifact(ctx, "policyAssignmentArtifact", &blueprint.PolicyAssignmentArtifactArgs{
ArtifactName: pulumi.String("storageTemplate"),
BlueprintName: pulumi.String("simpleBlueprint"),
ResourceScope: pulumi.String("providers/Microsoft.Management/managementGroups/ContosoOnlineGroup"),
})
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.blueprint.PolicyAssignmentArtifact;
import com.pulumi.azurenative.blueprint.PolicyAssignmentArtifactArgs;
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 policyAssignmentArtifact = new PolicyAssignmentArtifact("policyAssignmentArtifact", PolicyAssignmentArtifactArgs.builder()
.artifactName("storageTemplate")
.blueprintName("simpleBlueprint")
.resourceScope("providers/Microsoft.Management/managementGroups/ContosoOnlineGroup")
.build());
}
}

MG-PolicyAssignmentArtifact

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var policyAssignmentArtifact = new AzureNative.Blueprint.PolicyAssignmentArtifact("policyAssignmentArtifact", new()
{
ArtifactName = "costCenterPolicy",
BlueprintName = "simpleBlueprint",
DisplayName = "force costCenter tag on all resources",
Kind = "policyAssignment",
Parameters =
{
{ "tagName", new AzureNative.Blueprint.Inputs.ParameterValueArgs
{
Value = "costCenter",
} },
{ "tagValue", new AzureNative.Blueprint.Inputs.ParameterValueArgs
{
Value = "[parameter('costCenter')]",
} },
},
PolicyDefinitionId = "/providers/Microsoft.Authorization/policyDefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62",
ResourceScope = "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup",
});
});
package main
import (
blueprint "github.com/pulumi/pulumi-azure-native-sdk/blueprint/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := blueprint.NewPolicyAssignmentArtifact(ctx, "policyAssignmentArtifact", &blueprint.PolicyAssignmentArtifactArgs{
ArtifactName: pulumi.String("costCenterPolicy"),
BlueprintName: pulumi.String("simpleBlueprint"),
DisplayName: pulumi.String("force costCenter tag on all resources"),
Kind: pulumi.String("policyAssignment"),
Parameters: blueprint.ParameterValueMap{
"tagName": &blueprint.ParameterValueArgs{
Value: pulumi.Any("costCenter"),
},
"tagValue": &blueprint.ParameterValueArgs{
Value: pulumi.Any("[parameter('costCenter')]"),
},
},
PolicyDefinitionId: pulumi.String("/providers/Microsoft.Authorization/policyDefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62"),
ResourceScope: pulumi.String("providers/Microsoft.Management/managementGroups/ContosoOnlineGroup"),
})
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.blueprint.PolicyAssignmentArtifact;
import com.pulumi.azurenative.blueprint.PolicyAssignmentArtifactArgs;
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 policyAssignmentArtifact = new PolicyAssignmentArtifact("policyAssignmentArtifact", PolicyAssignmentArtifactArgs.builder()
.artifactName("costCenterPolicy")
.blueprintName("simpleBlueprint")
.displayName("force costCenter tag on all resources")
.kind("policyAssignment")
.parameters(Map.ofEntries(
Map.entry("tagName", Map.of("value", "costCenter")),
Map.entry("tagValue", Map.of("value", "[parameter('costCenter')]"))
))
.policyDefinitionId("/providers/Microsoft.Authorization/policyDefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62")
.resourceScope("providers/Microsoft.Management/managementGroups/ContosoOnlineGroup")
.build());
}
}

MG-RoleAssignmentArtifact

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var policyAssignmentArtifact = new AzureNative.Blueprint.PolicyAssignmentArtifact("policyAssignmentArtifact", new()
{
ArtifactName = "ownerAssignment",
BlueprintName = "simpleBlueprint",
ResourceScope = "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup",
});
});
package main
import (
blueprint "github.com/pulumi/pulumi-azure-native-sdk/blueprint/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := blueprint.NewPolicyAssignmentArtifact(ctx, "policyAssignmentArtifact", &blueprint.PolicyAssignmentArtifactArgs{
ArtifactName: pulumi.String("ownerAssignment"),
BlueprintName: pulumi.String("simpleBlueprint"),
ResourceScope: pulumi.String("providers/Microsoft.Management/managementGroups/ContosoOnlineGroup"),
})
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.blueprint.PolicyAssignmentArtifact;
import com.pulumi.azurenative.blueprint.PolicyAssignmentArtifactArgs;
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 policyAssignmentArtifact = new PolicyAssignmentArtifact("policyAssignmentArtifact", PolicyAssignmentArtifactArgs.builder()
.artifactName("ownerAssignment")
.blueprintName("simpleBlueprint")
.resourceScope("providers/Microsoft.Management/managementGroups/ContosoOnlineGroup")
.build());
}
}

Sub-ARMTemplateArtifact

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var policyAssignmentArtifact = new AzureNative.Blueprint.PolicyAssignmentArtifact("policyAssignmentArtifact", new()
{
ArtifactName = "storageTemplate",
BlueprintName = "simpleBlueprint",
ResourceScope = "subscriptions/00000000-0000-0000-0000-000000000000",
});
});
package main
import (
blueprint "github.com/pulumi/pulumi-azure-native-sdk/blueprint/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := blueprint.NewPolicyAssignmentArtifact(ctx, "policyAssignmentArtifact", &blueprint.PolicyAssignmentArtifactArgs{
ArtifactName: pulumi.String("storageTemplate"),
BlueprintName: pulumi.String("simpleBlueprint"),
ResourceScope: pulumi.String("subscriptions/00000000-0000-0000-0000-000000000000"),
})
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.blueprint.PolicyAssignmentArtifact;
import com.pulumi.azurenative.blueprint.PolicyAssignmentArtifactArgs;
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 policyAssignmentArtifact = new PolicyAssignmentArtifact("policyAssignmentArtifact", PolicyAssignmentArtifactArgs.builder()
.artifactName("storageTemplate")
.blueprintName("simpleBlueprint")
.resourceScope("subscriptions/00000000-0000-0000-0000-000000000000")
.build());
}
}

Sub-PolicyAssignmentArtifact

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var policyAssignmentArtifact = new AzureNative.Blueprint.PolicyAssignmentArtifact("policyAssignmentArtifact", new()
{
ArtifactName = "costCenterPolicy",
BlueprintName = "simpleBlueprint",
DisplayName = "force costCenter tag on all resources",
Kind = "policyAssignment",
Parameters =
{
{ "tagName", new AzureNative.Blueprint.Inputs.ParameterValueArgs
{
Value = "costCenter",
} },
{ "tagValue", new AzureNative.Blueprint.Inputs.ParameterValueArgs
{
Value = "[parameter('costCenter')]",
} },
},
PolicyDefinitionId = "/providers/Microsoft.Authorization/policyDefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62",
ResourceScope = "subscriptions/00000000-0000-0000-0000-000000000000",
});
});
package main
import (
blueprint "github.com/pulumi/pulumi-azure-native-sdk/blueprint/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := blueprint.NewPolicyAssignmentArtifact(ctx, "policyAssignmentArtifact", &blueprint.PolicyAssignmentArtifactArgs{
ArtifactName: pulumi.String("costCenterPolicy"),
BlueprintName: pulumi.String("simpleBlueprint"),
DisplayName: pulumi.String("force costCenter tag on all resources"),
Kind: pulumi.String("policyAssignment"),
Parameters: blueprint.ParameterValueMap{
"tagName": &blueprint.ParameterValueArgs{
Value: pulumi.Any("costCenter"),
},
"tagValue": &blueprint.ParameterValueArgs{
Value: pulumi.Any("[parameter('costCenter')]"),
},
},
PolicyDefinitionId: pulumi.String("/providers/Microsoft.Authorization/policyDefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62"),
ResourceScope: pulumi.String("subscriptions/00000000-0000-0000-0000-000000000000"),
})
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.blueprint.PolicyAssignmentArtifact;
import com.pulumi.azurenative.blueprint.PolicyAssignmentArtifactArgs;
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 policyAssignmentArtifact = new PolicyAssignmentArtifact("policyAssignmentArtifact", PolicyAssignmentArtifactArgs.builder()
.artifactName("costCenterPolicy")
.blueprintName("simpleBlueprint")
.displayName("force costCenter tag on all resources")
.kind("policyAssignment")
.parameters(Map.ofEntries(
Map.entry("tagName", Map.of("value", "costCenter")),
Map.entry("tagValue", Map.of("value", "[parameter('costCenter')]"))
))
.policyDefinitionId("/providers/Microsoft.Authorization/policyDefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62")
.resourceScope("subscriptions/00000000-0000-0000-0000-000000000000")
.build());
}
}

Sub-RoleAssignmentArtifact

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var policyAssignmentArtifact = new AzureNative.Blueprint.PolicyAssignmentArtifact("policyAssignmentArtifact", new()
{
ArtifactName = "ownerAssignment",
BlueprintName = "simpleBlueprint",
ResourceScope = "subscriptions/00000000-0000-0000-0000-000000000000",
});
});
package main
import (
blueprint "github.com/pulumi/pulumi-azure-native-sdk/blueprint/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := blueprint.NewPolicyAssignmentArtifact(ctx, "policyAssignmentArtifact", &blueprint.PolicyAssignmentArtifactArgs{
ArtifactName: pulumi.String("ownerAssignment"),
BlueprintName: pulumi.String("simpleBlueprint"),
ResourceScope: pulumi.String("subscriptions/00000000-0000-0000-0000-000000000000"),
})
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.blueprint.PolicyAssignmentArtifact;
import com.pulumi.azurenative.blueprint.PolicyAssignmentArtifactArgs;
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 policyAssignmentArtifact = new PolicyAssignmentArtifact("policyAssignmentArtifact", PolicyAssignmentArtifactArgs.builder()
.artifactName("ownerAssignment")
.blueprintName("simpleBlueprint")
.resourceScope("subscriptions/00000000-0000-0000-0000-000000000000")
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:blueprint:PolicyAssignmentArtifact ownerAssignment /{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/artifacts/{artifactName}

Constructors

Link copied to clipboard
constructor(artifactName: Output<String>? = null, blueprintName: Output<String>? = null, dependsOn: Output<List<String>>? = null, description: Output<String>? = null, displayName: Output<String>? = null, kind: Output<String>? = null, parameters: Output<Map<String, ParameterValueArgs>>? = null, policyDefinitionId: Output<String>? = null, resourceGroup: Output<String>? = null, resourceScope: Output<String>? = null)

Properties

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

Name of the blueprint artifact.

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

Name of the blueprint definition.

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

Artifacts which need to be deployed before the specified artifact.

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

Multi-line explain this resource.

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

One-liner string explain this resource.

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

Specifies the kind of blueprint artifact. Expected value is 'policyAssignment'.

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

Parameter values for the policy definition.

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

Azure resource ID of the policy definition.

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

Name of the resource group placeholder to which the policy will be assigned.

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

The scope of the resource. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: '/subscriptions/{subscriptionId}').

Functions

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