azure-native.extendedlocation.ResourceSyncRule

Resource Sync Rules definition. API Version: 2021-08-31-preview.

Example Usage

Create/Update Resource Sync Rule

using System.Collections.Generic;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var resourceSyncRule = new AzureNative.ExtendedLocation.ResourceSyncRule("resourceSyncRule", new()
    {
        ChildResourceName = "resourceSyncRule01",
        Location = "West US",
        Priority = 999,
        ResourceGroupName = "testresourcegroup",
        ResourceName = "customLocation01",
        Selector = new AzureNative.ExtendedLocation.Inputs.ResourceSyncRulePropertiesSelectorArgs
        {
            MatchLabels = 
            {
                { "key1", "value1" },
            },
        },
        TargetResourceGroup = "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup",
    });

});
package main

import (
	extendedlocation "github.com/pulumi/pulumi-azure-native/sdk/go/azure/extendedlocation"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := extendedlocation.NewResourceSyncRule(ctx, "resourceSyncRule", &extendedlocation.ResourceSyncRuleArgs{
			ChildResourceName: pulumi.String("resourceSyncRule01"),
			Location:          pulumi.String("West US"),
			Priority:          pulumi.Int(999),
			ResourceGroupName: pulumi.String("testresourcegroup"),
			ResourceName:      pulumi.String("customLocation01"),
			Selector: &extendedlocation.ResourceSyncRulePropertiesSelectorArgs{
				MatchLabels: pulumi.StringMap{
					"key1": pulumi.String("value1"),
				},
			},
			TargetResourceGroup: pulumi.String("/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup"),
		})
		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.extendedlocation.ResourceSyncRule;
import com.pulumi.azurenative.extendedlocation.ResourceSyncRuleArgs;
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 resourceSyncRule = new ResourceSyncRule("resourceSyncRule", ResourceSyncRuleArgs.builder()        
            .childResourceName("resourceSyncRule01")
            .location("West US")
            .priority(999)
            .resourceGroupName("testresourcegroup")
            .resourceName("customLocation01")
            .selector(Map.of("matchLabels", Map.of("key1", "value1")))
            .targetResourceGroup("/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup")
            .build());

    }
}
import pulumi
import pulumi_azure_native as azure_native

resource_sync_rule = azure_native.extendedlocation.ResourceSyncRule("resourceSyncRule",
    child_resource_name="resourceSyncRule01",
    location="West US",
    priority=999,
    resource_group_name="testresourcegroup",
    resource_name_="customLocation01",
    selector=azure_native.extendedlocation.ResourceSyncRulePropertiesSelectorArgs(
        match_labels={
            "key1": "value1",
        },
    ),
    target_resource_group="/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup")
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const resourceSyncRule = new azure_native.extendedlocation.ResourceSyncRule("resourceSyncRule", {
    childResourceName: "resourceSyncRule01",
    location: "West US",
    priority: 999,
    resourceGroupName: "testresourcegroup",
    resourceName: "customLocation01",
    selector: {
        matchLabels: {
            key1: "value1",
        },
    },
    targetResourceGroup: "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup",
});
resources:
  resourceSyncRule:
    type: azure-native:extendedlocation:ResourceSyncRule
    properties:
      childResourceName: resourceSyncRule01
      location: West US
      priority: 999
      resourceGroupName: testresourcegroup
      resourceName: customLocation01
      selector:
        matchLabels:
          key1: value1
      targetResourceGroup: /subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup

Create ResourceSyncRule Resource

new ResourceSyncRule(name: string, args: ResourceSyncRuleArgs, opts?: CustomResourceOptions);
@overload
def ResourceSyncRule(resource_name: str,
                     opts: Optional[ResourceOptions] = None,
                     child_resource_name: Optional[str] = None,
                     location: Optional[str] = None,
                     priority: Optional[int] = None,
                     resource_group_name: Optional[str] = None,
                     resource_name_: Optional[str] = None,
                     selector: Optional[ResourceSyncRulePropertiesSelectorArgs] = None,
                     tags: Optional[Mapping[str, str]] = None,
                     target_resource_group: Optional[str] = None)
@overload
def ResourceSyncRule(resource_name: str,
                     args: ResourceSyncRuleArgs,
                     opts: Optional[ResourceOptions] = None)
func NewResourceSyncRule(ctx *Context, name string, args ResourceSyncRuleArgs, opts ...ResourceOption) (*ResourceSyncRule, error)
public ResourceSyncRule(string name, ResourceSyncRuleArgs args, CustomResourceOptions? opts = null)
public ResourceSyncRule(String name, ResourceSyncRuleArgs args)
public ResourceSyncRule(String name, ResourceSyncRuleArgs args, CustomResourceOptions options)
type: azure-native:extendedlocation:ResourceSyncRule
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args ResourceSyncRuleArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
args ResourceSyncRuleArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args ResourceSyncRuleArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args ResourceSyncRuleArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args ResourceSyncRuleArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

ResourceSyncRule Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The ResourceSyncRule resource accepts the following input properties:

ResourceGroupName string

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

ResourceName string

Custom Locations name.

ChildResourceName string

Resource Sync Rule name.

Location string

The geo-location where the resource lives

Priority int

Priority represents a priority of the Resource Sync Rule

Selector Pulumi.AzureNative.ExtendedLocation.Inputs.ResourceSyncRulePropertiesSelectorArgs

A label selector is composed of two parts, matchLabels and matchExpressions. The first part, matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'. The second part, matchExpressions is a list of resource selector requirements. Valid operators include In, NotIn, Exists, and DoesNotExist. The values set must be non-empty in the case of In and NotIn. The values set must be empty in the case of Exists and DoesNotExist. All of the requirements, from both matchLabels and matchExpressions must all be satisfied in order to match.

Tags Dictionary<string, string>

Resource tags.

TargetResourceGroup string

For an unmapped custom resource, its labels will be used to find matching resource sync rules. If this resource sync rule is one of the matching rules with highest priority, then the unmapped custom resource will be projected to the target resource group associated with this resource sync rule. The user creating this resource sync rule should have write permissions on the target resource group and this write permission will be validated when creating the resource sync rule.

ResourceGroupName string

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

ResourceName string

Custom Locations name.

ChildResourceName string

Resource Sync Rule name.

Location string

The geo-location where the resource lives

Priority int

Priority represents a priority of the Resource Sync Rule

Selector ResourceSyncRulePropertiesSelectorArgs

A label selector is composed of two parts, matchLabels and matchExpressions. The first part, matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'. The second part, matchExpressions is a list of resource selector requirements. Valid operators include In, NotIn, Exists, and DoesNotExist. The values set must be non-empty in the case of In and NotIn. The values set must be empty in the case of Exists and DoesNotExist. All of the requirements, from both matchLabels and matchExpressions must all be satisfied in order to match.

Tags map[string]string

Resource tags.

TargetResourceGroup string

For an unmapped custom resource, its labels will be used to find matching resource sync rules. If this resource sync rule is one of the matching rules with highest priority, then the unmapped custom resource will be projected to the target resource group associated with this resource sync rule. The user creating this resource sync rule should have write permissions on the target resource group and this write permission will be validated when creating the resource sync rule.

resourceGroupName String

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

resourceName String

Custom Locations name.

childResourceName String

Resource Sync Rule name.

location String

The geo-location where the resource lives

priority Integer

Priority represents a priority of the Resource Sync Rule

selector ResourceSyncRulePropertiesSelectorArgs

A label selector is composed of two parts, matchLabels and matchExpressions. The first part, matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'. The second part, matchExpressions is a list of resource selector requirements. Valid operators include In, NotIn, Exists, and DoesNotExist. The values set must be non-empty in the case of In and NotIn. The values set must be empty in the case of Exists and DoesNotExist. All of the requirements, from both matchLabels and matchExpressions must all be satisfied in order to match.

tags Map<String,String>

Resource tags.

targetResourceGroup String

For an unmapped custom resource, its labels will be used to find matching resource sync rules. If this resource sync rule is one of the matching rules with highest priority, then the unmapped custom resource will be projected to the target resource group associated with this resource sync rule. The user creating this resource sync rule should have write permissions on the target resource group and this write permission will be validated when creating the resource sync rule.

resourceGroupName string

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

resourceName string

Custom Locations name.

childResourceName string

Resource Sync Rule name.

location string

The geo-location where the resource lives

priority number

Priority represents a priority of the Resource Sync Rule

selector ResourceSyncRulePropertiesSelectorArgs

A label selector is composed of two parts, matchLabels and matchExpressions. The first part, matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'. The second part, matchExpressions is a list of resource selector requirements. Valid operators include In, NotIn, Exists, and DoesNotExist. The values set must be non-empty in the case of In and NotIn. The values set must be empty in the case of Exists and DoesNotExist. All of the requirements, from both matchLabels and matchExpressions must all be satisfied in order to match.

tags {[key: string]: string}

Resource tags.

targetResourceGroup string

For an unmapped custom resource, its labels will be used to find matching resource sync rules. If this resource sync rule is one of the matching rules with highest priority, then the unmapped custom resource will be projected to the target resource group associated with this resource sync rule. The user creating this resource sync rule should have write permissions on the target resource group and this write permission will be validated when creating the resource sync rule.

resource_group_name str

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

resource_name str

Custom Locations name.

child_resource_name str

Resource Sync Rule name.

location str

The geo-location where the resource lives

priority int

Priority represents a priority of the Resource Sync Rule

selector ResourceSyncRulePropertiesSelectorArgs

A label selector is composed of two parts, matchLabels and matchExpressions. The first part, matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'. The second part, matchExpressions is a list of resource selector requirements. Valid operators include In, NotIn, Exists, and DoesNotExist. The values set must be non-empty in the case of In and NotIn. The values set must be empty in the case of Exists and DoesNotExist. All of the requirements, from both matchLabels and matchExpressions must all be satisfied in order to match.

tags Mapping[str, str]

Resource tags.

target_resource_group str

For an unmapped custom resource, its labels will be used to find matching resource sync rules. If this resource sync rule is one of the matching rules with highest priority, then the unmapped custom resource will be projected to the target resource group associated with this resource sync rule. The user creating this resource sync rule should have write permissions on the target resource group and this write permission will be validated when creating the resource sync rule.

resourceGroupName String

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

resourceName String

Custom Locations name.

childResourceName String

Resource Sync Rule name.

location String

The geo-location where the resource lives

priority Number

Priority represents a priority of the Resource Sync Rule

selector Property Map

A label selector is composed of two parts, matchLabels and matchExpressions. The first part, matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'. The second part, matchExpressions is a list of resource selector requirements. Valid operators include In, NotIn, Exists, and DoesNotExist. The values set must be non-empty in the case of In and NotIn. The values set must be empty in the case of Exists and DoesNotExist. All of the requirements, from both matchLabels and matchExpressions must all be satisfied in order to match.

tags Map<String>

Resource tags.

targetResourceGroup String

For an unmapped custom resource, its labels will be used to find matching resource sync rules. If this resource sync rule is one of the matching rules with highest priority, then the unmapped custom resource will be projected to the target resource group associated with this resource sync rule. The user creating this resource sync rule should have write permissions on the target resource group and this write permission will be validated when creating the resource sync rule.

Outputs

All input properties are implicitly available as output properties. Additionally, the ResourceSyncRule resource produces the following output properties:

Id string

The provider-assigned unique ID for this managed resource.

Name string

The name of the resource

ProvisioningState string

Provisioning State for the Resource Sync Rule.

SystemData Pulumi.AzureNative.ExtendedLocation.Outputs.SystemDataResponse

Metadata pertaining to creation and last modification of the resource

Type string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

Id string

The provider-assigned unique ID for this managed resource.

Name string

The name of the resource

ProvisioningState string

Provisioning State for the Resource Sync Rule.

SystemData SystemDataResponse

Metadata pertaining to creation and last modification of the resource

Type string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

id String

The provider-assigned unique ID for this managed resource.

name String

The name of the resource

provisioningState String

Provisioning State for the Resource Sync Rule.

systemData SystemDataResponse

Metadata pertaining to creation and last modification of the resource

type String

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

id string

The provider-assigned unique ID for this managed resource.

name string

The name of the resource

provisioningState string

Provisioning State for the Resource Sync Rule.

systemData SystemDataResponse

Metadata pertaining to creation and last modification of the resource

type string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

id str

The provider-assigned unique ID for this managed resource.

name str

The name of the resource

provisioning_state str

Provisioning State for the Resource Sync Rule.

system_data SystemDataResponse

Metadata pertaining to creation and last modification of the resource

type str

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

id String

The provider-assigned unique ID for this managed resource.

name String

The name of the resource

provisioningState String

Provisioning State for the Resource Sync Rule.

systemData Property Map

Metadata pertaining to creation and last modification of the resource

type String

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

Supporting Types

ResourceSyncRulePropertiesResponseSelector

MatchLabels Dictionary<string, string>

MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'.

MatchLabels map[string]string

MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'.

matchLabels Map<String,String>

MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'.

matchLabels {[key: string]: string}

MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'.

match_labels Mapping[str, str]

MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'.

matchLabels Map<String>

MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'.

ResourceSyncRulePropertiesSelector

MatchLabels Dictionary<string, string>

MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'.

MatchLabels map[string]string

MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'.

matchLabels Map<String,String>

MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'.

matchLabels {[key: string]: string}

MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'.

match_labels Mapping[str, str]

MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'.

matchLabels Map<String>

MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is 'key', the operator is 'In', and the values array contains only 'value'.

SystemDataResponse

CreatedAt string

The timestamp of resource creation (UTC).

CreatedBy string

The identity that created the resource.

CreatedByType string

The type of identity that created the resource.

LastModifiedAt string

The timestamp of resource last modification (UTC)

LastModifiedBy string

The identity that last modified the resource.

LastModifiedByType string

The type of identity that last modified the resource.

CreatedAt string

The timestamp of resource creation (UTC).

CreatedBy string

The identity that created the resource.

CreatedByType string

The type of identity that created the resource.

LastModifiedAt string

The timestamp of resource last modification (UTC)

LastModifiedBy string

The identity that last modified the resource.

LastModifiedByType string

The type of identity that last modified the resource.

createdAt String

The timestamp of resource creation (UTC).

createdBy String

The identity that created the resource.

createdByType String

The type of identity that created the resource.

lastModifiedAt String

The timestamp of resource last modification (UTC)

lastModifiedBy String

The identity that last modified the resource.

lastModifiedByType String

The type of identity that last modified the resource.

createdAt string

The timestamp of resource creation (UTC).

createdBy string

The identity that created the resource.

createdByType string

The type of identity that created the resource.

lastModifiedAt string

The timestamp of resource last modification (UTC)

lastModifiedBy string

The identity that last modified the resource.

lastModifiedByType string

The type of identity that last modified the resource.

created_at str

The timestamp of resource creation (UTC).

created_by str

The identity that created the resource.

created_by_type str

The type of identity that created the resource.

last_modified_at str

The timestamp of resource last modification (UTC)

last_modified_by str

The identity that last modified the resource.

last_modified_by_type str

The type of identity that last modified the resource.

createdAt String

The timestamp of resource creation (UTC).

createdBy String

The identity that created the resource.

createdByType String

The type of identity that created the resource.

lastModifiedAt String

The timestamp of resource last modification (UTC)

lastModifiedBy String

The identity that last modified the resource.

lastModifiedByType String

The type of identity that last modified the resource.

Import

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

$ pulumi import azure-native:extendedlocation:ResourceSyncRule resourceSyncRule01 /subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ExtendedLocation/customLocations/customLocation01/resourcesyncrules/resourceSyncRule01 

Package Details

Repository
Azure Native pulumi/pulumi-azure-native
License
Apache-2.0