import * as pulumi from "@pulumi/pulumi"; /** * Manages an Azure Container Registry Webhook. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as azure from "@pulumi/azure"; * * const example = new azure.core.ResourceGroup("example", { * name: "example-resources", * location: "West Europe", * }); * const acr = new azure.containerservice.Registry("acr", { * name: "containerRegistry1", * resourceGroupName: example.name, * location: example.location, * sku: "Standard", * adminEnabled: false, * }); * const webhook = new azure.containerservice.RegistryWebhook("webhook", { * name: "mywebhook", * resourceGroupName: example.name, * registryName: acr.name, * location: example.location, * serviceUri: "https://mywebhookreceiver.example/mytag", * status: "enabled", * scope: "mytag:*", * actions: ["push"], * customHeaders: { * "Content-Type": "application/json", * }, * }); * ``` * * ## API Providers * * * This resource uses the following Azure API Providers: * * * `Microsoft.ContainerRegistry` - 2025-11-01 * * ## Import * * Container Registry Webhooks can be imported using the `resource id`, e.g. * * ```sh * $ pulumi import azure:containerservice/registryWebhook:RegistryWebhook example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.ContainerRegistry/registries/myregistry1/webHooks/mywebhook1 * ``` */ export declare class RegistryWebhook extends pulumi.CustomResource { /** * Get an existing RegistryWebhook 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 state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: RegistryWebhookState, opts?: pulumi.CustomResourceOptions): RegistryWebhook; /** * Returns true if the given object is an instance of RegistryWebhook. 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 RegistryWebhook; /** * A list of actions that trigger the Webhook to post notifications. At least one action needs to be specified. Valid values are: `push`, `delete`, `quarantine`, `chartPush`, `chartDelete` */ readonly actions: pulumi.Output; /** * Custom headers that will be added to the webhook notifications request. */ readonly customHeaders: pulumi.Output<{ [key: string]: string; } | undefined>; /** * Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. */ readonly location: pulumi.Output; /** * Specifies the name of the Container Registry Webhook. Only Alphanumeric characters allowed. Changing this forces a new resource to be created. */ readonly name: pulumi.Output; /** * The Name of Container registry this Webhook belongs to. Changing this forces a new resource to be created. */ readonly registryName: pulumi.Output; /** * The name of the resource group in which to create the Container Registry Webhook. Changing this forces a new resource to be created. */ readonly resourceGroupName: pulumi.Output; /** * Specifies the scope of repositories that can trigger an event. For example, `foo:*` means events for all tags under repository `foo`. `foo:bar` means events for 'foo:bar' only. `foo` is equivalent to `foo:latest`. Empty means all events. Defaults to `""`. */ readonly scope: pulumi.Output; /** * Specifies the service URI for the Webhook to post notifications. */ readonly serviceUri: pulumi.Output; /** * Specifies if this Webhook triggers notifications or not. Valid values: `enabled` and `disabled`. Default is `enabled`. */ readonly status: pulumi.Output; /** * A mapping of tags to assign to the resource. */ readonly tags: pulumi.Output<{ [key: string]: string; } | undefined>; /** * Create a RegistryWebhook 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: RegistryWebhookArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering RegistryWebhook resources. */ export interface RegistryWebhookState { /** * A list of actions that trigger the Webhook to post notifications. At least one action needs to be specified. Valid values are: `push`, `delete`, `quarantine`, `chartPush`, `chartDelete` */ actions?: pulumi.Input[]>; /** * Custom headers that will be added to the webhook notifications request. */ customHeaders?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. */ location?: pulumi.Input; /** * Specifies the name of the Container Registry Webhook. Only Alphanumeric characters allowed. Changing this forces a new resource to be created. */ name?: pulumi.Input; /** * The Name of Container registry this Webhook belongs to. Changing this forces a new resource to be created. */ registryName?: pulumi.Input; /** * The name of the resource group in which to create the Container Registry Webhook. Changing this forces a new resource to be created. */ resourceGroupName?: pulumi.Input; /** * Specifies the scope of repositories that can trigger an event. For example, `foo:*` means events for all tags under repository `foo`. `foo:bar` means events for 'foo:bar' only. `foo` is equivalent to `foo:latest`. Empty means all events. Defaults to `""`. */ scope?: pulumi.Input; /** * Specifies the service URI for the Webhook to post notifications. */ serviceUri?: pulumi.Input; /** * Specifies if this Webhook triggers notifications or not. Valid values: `enabled` and `disabled`. Default is `enabled`. */ status?: pulumi.Input; /** * A mapping of tags to assign to the resource. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; }>; } /** * The set of arguments for constructing a RegistryWebhook resource. */ export interface RegistryWebhookArgs { /** * A list of actions that trigger the Webhook to post notifications. At least one action needs to be specified. Valid values are: `push`, `delete`, `quarantine`, `chartPush`, `chartDelete` */ actions: pulumi.Input[]>; /** * Custom headers that will be added to the webhook notifications request. */ customHeaders?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. */ location?: pulumi.Input; /** * Specifies the name of the Container Registry Webhook. Only Alphanumeric characters allowed. Changing this forces a new resource to be created. */ name?: pulumi.Input; /** * The Name of Container registry this Webhook belongs to. Changing this forces a new resource to be created. */ registryName: pulumi.Input; /** * The name of the resource group in which to create the Container Registry Webhook. Changing this forces a new resource to be created. */ resourceGroupName: pulumi.Input; /** * Specifies the scope of repositories that can trigger an event. For example, `foo:*` means events for all tags under repository `foo`. `foo:bar` means events for 'foo:bar' only. `foo` is equivalent to `foo:latest`. Empty means all events. Defaults to `""`. */ scope?: pulumi.Input; /** * Specifies the service URI for the Webhook to post notifications. */ serviceUri: pulumi.Input; /** * Specifies if this Webhook triggers notifications or not. Valid values: `enabled` and `disabled`. Default is `enabled`. */ status?: pulumi.Input; /** * A mapping of tags to assign to the resource. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; }>; }