@pulumi/azure-native
Version:
[](https://slack.pulumi.com) [](https://npmjs.com/package/@pulumi/azure-native) [ • 6.17 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* Resource Sync Rules definition.
*
* Uses Azure REST API version 2021-08-31-preview. In version 2.x of the Azure Native provider, it used API version 2021-08-31-preview.
*/
export declare class ResourceSyncRule extends pulumi.CustomResource {
/**
* Get an existing ResourceSyncRule resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): ResourceSyncRule;
/**
* Returns true if the given object is an instance of ResourceSyncRule. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is ResourceSyncRule;
/**
* The Azure API version of the resource.
*/
readonly azureApiVersion: pulumi.Output<string>;
/**
* The geo-location where the resource lives
*/
readonly location: pulumi.Output<string>;
/**
* The name of the resource
*/
readonly name: pulumi.Output<string>;
/**
* Priority represents a priority of the Resource Sync Rule
*/
readonly priority: pulumi.Output<number | undefined>;
/**
* Provisioning State for the Resource Sync Rule.
*/
readonly provisioningState: pulumi.Output<string>;
/**
* 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.
*/
readonly selector: pulumi.Output<outputs.extendedlocation.ResourceSyncRulePropertiesResponseSelector | undefined>;
/**
* Metadata pertaining to creation and last modification of the resource
*/
readonly systemData: pulumi.Output<outputs.extendedlocation.SystemDataResponse>;
/**
* Resource tags.
*/
readonly tags: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* 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.
*/
readonly targetResourceGroup: pulumi.Output<string | undefined>;
/**
* The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
*/
readonly type: pulumi.Output<string>;
/**
* Create a ResourceSyncRule resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: ResourceSyncRuleArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a ResourceSyncRule resource.
*/
export interface ResourceSyncRuleArgs {
/**
* Resource Sync Rule name.
*/
childResourceName?: pulumi.Input<string>;
/**
* The geo-location where the resource lives
*/
location?: pulumi.Input<string>;
/**
* Priority represents a priority of the Resource Sync Rule
*/
priority?: pulumi.Input<number>;
/**
* The name of the resource group. The name is case insensitive.
*/
resourceGroupName: pulumi.Input<string>;
/**
* Custom Locations name.
*/
resourceName: pulumi.Input<string>;
/**
* 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.
*/
selector?: pulumi.Input<inputs.extendedlocation.ResourceSyncRulePropertiesSelectorArgs>;
/**
* Resource tags.
*/
tags?: pulumi.Input<{
[key: string]: pulumi.Input<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.
*/
targetResourceGroup?: pulumi.Input<string>;
}