Subscription

Manages a ServiceBus Subscription.

Example Usage

using Pulumi;
using Azure = Pulumi.Azure;

class MyStack : Stack
{
    public MyStack()
    {
        var exampleResourceGroup = new Azure.Core.ResourceGroup("exampleResourceGroup", new Azure.Core.ResourceGroupArgs
        {
            Location = "West Europe",
        });
        var exampleNamespace = new Azure.ServiceBus.Namespace("exampleNamespace", new Azure.ServiceBus.NamespaceArgs
        {
            Location = exampleResourceGroup.Location,
            ResourceGroupName = exampleResourceGroup.Name,
            Sku = "Standard",
            Tags = 
            {
                { "source", "example" },
            },
        });
        var exampleTopic = new Azure.ServiceBus.Topic("exampleTopic", new Azure.ServiceBus.TopicArgs
        {
            ResourceGroupName = exampleResourceGroup.Name,
            NamespaceName = exampleNamespace.Name,
            EnablePartitioning = true,
        });
        var exampleSubscription = new Azure.ServiceBus.Subscription("exampleSubscription", new Azure.ServiceBus.SubscriptionArgs
        {
            ResourceGroupName = exampleResourceGroup.Name,
            NamespaceName = exampleNamespace.Name,
            TopicName = exampleTopic.Name,
            MaxDeliveryCount = 1,
        });
    }

}
package main

import (
    "github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
    "github.com/pulumi/pulumi-azure/sdk/v3/go/azure/servicebus"
    "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
            Location: pulumi.String("West Europe"),
        })
        if err != nil {
            return err
        }
        exampleNamespace, err := servicebus.NewNamespace(ctx, "exampleNamespace", &servicebus.NamespaceArgs{
            Location:          exampleResourceGroup.Location,
            ResourceGroupName: exampleResourceGroup.Name,
            Sku:               pulumi.String("Standard"),
            Tags: pulumi.Map{
                "source": pulumi.String("example"),
            },
        })
        if err != nil {
            return err
        }
        exampleTopic, err := servicebus.NewTopic(ctx, "exampleTopic", &servicebus.TopicArgs{
            ResourceGroupName:  exampleResourceGroup.Name,
            NamespaceName:      exampleNamespace.Name,
            EnablePartitioning: pulumi.Bool(true),
        })
        if err != nil {
            return err
        }
        _, err = servicebus.NewSubscription(ctx, "exampleSubscription", &servicebus.SubscriptionArgs{
            ResourceGroupName: exampleResourceGroup.Name,
            NamespaceName:     exampleNamespace.Name,
            TopicName:         exampleTopic.Name,
            MaxDeliveryCount:  pulumi.Int(1),
        })
        if err != nil {
            return err
        }
        return nil
    })
}
import pulumi
import pulumi_azure as azure

example_resource_group = azure.core.ResourceGroup("exampleResourceGroup", location="West Europe")
example_namespace = azure.servicebus.Namespace("exampleNamespace",
    location=example_resource_group.location,
    resource_group_name=example_resource_group.name,
    sku="Standard",
    tags={
        "source": "example",
    })
example_topic = azure.servicebus.Topic("exampleTopic",
    resource_group_name=example_resource_group.name,
    namespace_name=example_namespace.name,
    enable_partitioning=True)
example_subscription = azure.servicebus.Subscription("exampleSubscription",
    resource_group_name=example_resource_group.name,
    namespace_name=example_namespace.name,
    topic_name=example_topic.name,
    max_delivery_count=1)
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleNamespace = new azure.servicebus.Namespace("exampleNamespace", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    sku: "Standard",
    tags: {
        source: "example",
    },
});
const exampleTopic = new azure.servicebus.Topic("exampleTopic", {
    resourceGroupName: exampleResourceGroup.name,
    namespaceName: exampleNamespace.name,
    enablePartitioning: true,
});
const exampleSubscription = new azure.servicebus.Subscription("exampleSubscription", {
    resourceGroupName: exampleResourceGroup.name,
    namespaceName: exampleNamespace.name,
    topicName: exampleTopic.name,
    maxDeliveryCount: 1,
});

Deprecated: azure.eventhub.Subscription has been deprecated in favor of azure.servicebus.Subscription

Create a Subscription Resource

def Subscription(resource_name, opts=None, auto_delete_on_idle=None, dead_lettering_on_message_expiration=None, default_message_ttl=None, enable_batched_operations=None, forward_dead_lettered_messages_to=None, forward_to=None, lock_duration=None, max_delivery_count=None, name=None, namespace_name=None, requires_session=None, resource_group_name=None, topic_name=None, __props__=None);
func NewSubscription(ctx *Context, name string, args SubscriptionArgs, opts ...ResourceOption) (*Subscription, error)
name string
The unique name of the resource.
args SubscriptionArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
opts ResourceOptions
A bag of options that control this resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args SubscriptionArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args SubscriptionArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

Subscription Resource Properties

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

Inputs

The Subscription resource accepts the following input properties:

MaxDeliveryCount int

The maximum number of deliveries.

NamespaceName string

The name of the ServiceBus Namespace to create this Subscription in. Changing this forces a new resource to be created.

ResourceGroupName string

The name of the resource group in which to create the namespace. Changing this forces a new resource to be created.

TopicName string

The name of the ServiceBus Topic to create this Subscription in. Changing this forces a new resource to be created.

AutoDeleteOnIdle string

The idle interval after which the topic is automatically deleted as an ISO 8601 duration. The minimum duration is 5 minutes or P5M.

DeadLetteringOnMessageExpiration bool

Boolean flag which controls whether the Subscription has dead letter support when a message expires. Defaults to false.

DefaultMessageTtl string

The Default message timespan to live as an ISO 8601 duration. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself.

EnableBatchedOperations bool

Boolean flag which controls whether the Subscription supports batched operations. Defaults to false.

ForwardDeadLetteredMessagesTo string

The name of a Queue or Topic to automatically forward Dead Letter messages to.

ForwardTo string

The name of a Queue or Topic to automatically forward messages to.

LockDuration string

The lock duration for the subscription as an ISO 8601 duration. The default value is 1 minute or P1M.

Name string

Specifies the name of the ServiceBus Subscription resource. Changing this forces a new resource to be created.

RequiresSession bool

Boolean flag which controls whether this Subscription supports the concept of a session. Defaults to false. Changing this forces a new resource to be created.

MaxDeliveryCount int

The maximum number of deliveries.

NamespaceName string

The name of the ServiceBus Namespace to create this Subscription in. Changing this forces a new resource to be created.

ResourceGroupName string

The name of the resource group in which to create the namespace. Changing this forces a new resource to be created.

TopicName string

The name of the ServiceBus Topic to create this Subscription in. Changing this forces a new resource to be created.

AutoDeleteOnIdle string

The idle interval after which the topic is automatically deleted as an ISO 8601 duration. The minimum duration is 5 minutes or P5M.

DeadLetteringOnMessageExpiration bool

Boolean flag which controls whether the Subscription has dead letter support when a message expires. Defaults to false.

DefaultMessageTtl string

The Default message timespan to live as an ISO 8601 duration. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself.

EnableBatchedOperations bool

Boolean flag which controls whether the Subscription supports batched operations. Defaults to false.

ForwardDeadLetteredMessagesTo string

The name of a Queue or Topic to automatically forward Dead Letter messages to.

ForwardTo string

The name of a Queue or Topic to automatically forward messages to.

LockDuration string

The lock duration for the subscription as an ISO 8601 duration. The default value is 1 minute or P1M.

Name string

Specifies the name of the ServiceBus Subscription resource. Changing this forces a new resource to be created.

RequiresSession bool

Boolean flag which controls whether this Subscription supports the concept of a session. Defaults to false. Changing this forces a new resource to be created.

maxDeliveryCount number

The maximum number of deliveries.

namespaceName string

The name of the ServiceBus Namespace to create this Subscription in. Changing this forces a new resource to be created.

resourceGroupName string

The name of the resource group in which to create the namespace. Changing this forces a new resource to be created.

topicName string

The name of the ServiceBus Topic to create this Subscription in. Changing this forces a new resource to be created.

autoDeleteOnIdle string

The idle interval after which the topic is automatically deleted as an ISO 8601 duration. The minimum duration is 5 minutes or P5M.

deadLetteringOnMessageExpiration boolean

Boolean flag which controls whether the Subscription has dead letter support when a message expires. Defaults to false.

defaultMessageTtl string

The Default message timespan to live as an ISO 8601 duration. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself.

enableBatchedOperations boolean

Boolean flag which controls whether the Subscription supports batched operations. Defaults to false.

forwardDeadLetteredMessagesTo string

The name of a Queue or Topic to automatically forward Dead Letter messages to.

forwardTo string

The name of a Queue or Topic to automatically forward messages to.

lockDuration string

The lock duration for the subscription as an ISO 8601 duration. The default value is 1 minute or P1M.

name string

Specifies the name of the ServiceBus Subscription resource. Changing this forces a new resource to be created.

requiresSession boolean

Boolean flag which controls whether this Subscription supports the concept of a session. Defaults to false. Changing this forces a new resource to be created.

max_delivery_count float

The maximum number of deliveries.

namespace_name str

The name of the ServiceBus Namespace to create this Subscription in. Changing this forces a new resource to be created.

resource_group_name str

The name of the resource group in which to create the namespace. Changing this forces a new resource to be created.

topic_name str

The name of the ServiceBus Topic to create this Subscription in. Changing this forces a new resource to be created.

auto_delete_on_idle str

The idle interval after which the topic is automatically deleted as an ISO 8601 duration. The minimum duration is 5 minutes or P5M.

dead_lettering_on_message_expiration bool

Boolean flag which controls whether the Subscription has dead letter support when a message expires. Defaults to false.

default_message_ttl str

The Default message timespan to live as an ISO 8601 duration. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself.

enable_batched_operations bool

Boolean flag which controls whether the Subscription supports batched operations. Defaults to false.

forward_dead_lettered_messages_to str

The name of a Queue or Topic to automatically forward Dead Letter messages to.

forward_to str

The name of a Queue or Topic to automatically forward messages to.

lock_duration str

The lock duration for the subscription as an ISO 8601 duration. The default value is 1 minute or P1M.

name str

Specifies the name of the ServiceBus Subscription resource. Changing this forces a new resource to be created.

requires_session bool

Boolean flag which controls whether this Subscription supports the concept of a session. Defaults to false. Changing this forces a new resource to be created.

Outputs

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

Id string
The provider-assigned unique ID for this managed resource.
Id string
The provider-assigned unique ID for this managed resource.
id string
The provider-assigned unique ID for this managed resource.
id str
The provider-assigned unique ID for this managed resource.

Look up an Existing Subscription Resource

Get an existing Subscription resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: SubscriptionState, opts?: CustomResourceOptions): Subscription
static get(resource_name, id, opts=None, auto_delete_on_idle=None, dead_lettering_on_message_expiration=None, default_message_ttl=None, enable_batched_operations=None, forward_dead_lettered_messages_to=None, forward_to=None, lock_duration=None, max_delivery_count=None, name=None, namespace_name=None, requires_session=None, resource_group_name=None, topic_name=None, __props__=None);
func GetSubscription(ctx *Context, name string, id IDInput, state *SubscriptionState, opts ...ResourceOption) (*Subscription, error)
public static Subscription Get(string name, Input<string> id, SubscriptionState? state, CustomResourceOptions? opts = null)
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.

The following state arguments are supported:

AutoDeleteOnIdle string

The idle interval after which the topic is automatically deleted as an ISO 8601 duration. The minimum duration is 5 minutes or P5M.

DeadLetteringOnMessageExpiration bool

Boolean flag which controls whether the Subscription has dead letter support when a message expires. Defaults to false.

DefaultMessageTtl string

The Default message timespan to live as an ISO 8601 duration. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself.

EnableBatchedOperations bool

Boolean flag which controls whether the Subscription supports batched operations. Defaults to false.

ForwardDeadLetteredMessagesTo string

The name of a Queue or Topic to automatically forward Dead Letter messages to.

ForwardTo string

The name of a Queue or Topic to automatically forward messages to.

LockDuration string

The lock duration for the subscription as an ISO 8601 duration. The default value is 1 minute or P1M.

MaxDeliveryCount int

The maximum number of deliveries.

Name string

Specifies the name of the ServiceBus Subscription resource. Changing this forces a new resource to be created.

NamespaceName string

The name of the ServiceBus Namespace to create this Subscription in. Changing this forces a new resource to be created.

RequiresSession bool

Boolean flag which controls whether this Subscription supports the concept of a session. Defaults to false. Changing this forces a new resource to be created.

ResourceGroupName string

The name of the resource group in which to create the namespace. Changing this forces a new resource to be created.

TopicName string

The name of the ServiceBus Topic to create this Subscription in. Changing this forces a new resource to be created.

AutoDeleteOnIdle string

The idle interval after which the topic is automatically deleted as an ISO 8601 duration. The minimum duration is 5 minutes or P5M.

DeadLetteringOnMessageExpiration bool

Boolean flag which controls whether the Subscription has dead letter support when a message expires. Defaults to false.

DefaultMessageTtl string

The Default message timespan to live as an ISO 8601 duration. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself.

EnableBatchedOperations bool

Boolean flag which controls whether the Subscription supports batched operations. Defaults to false.

ForwardDeadLetteredMessagesTo string

The name of a Queue or Topic to automatically forward Dead Letter messages to.

ForwardTo string

The name of a Queue or Topic to automatically forward messages to.

LockDuration string

The lock duration for the subscription as an ISO 8601 duration. The default value is 1 minute or P1M.

MaxDeliveryCount int

The maximum number of deliveries.

Name string

Specifies the name of the ServiceBus Subscription resource. Changing this forces a new resource to be created.

NamespaceName string

The name of the ServiceBus Namespace to create this Subscription in. Changing this forces a new resource to be created.

RequiresSession bool

Boolean flag which controls whether this Subscription supports the concept of a session. Defaults to false. Changing this forces a new resource to be created.

ResourceGroupName string

The name of the resource group in which to create the namespace. Changing this forces a new resource to be created.

TopicName string

The name of the ServiceBus Topic to create this Subscription in. Changing this forces a new resource to be created.

autoDeleteOnIdle string

The idle interval after which the topic is automatically deleted as an ISO 8601 duration. The minimum duration is 5 minutes or P5M.

deadLetteringOnMessageExpiration boolean

Boolean flag which controls whether the Subscription has dead letter support when a message expires. Defaults to false.

defaultMessageTtl string

The Default message timespan to live as an ISO 8601 duration. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself.

enableBatchedOperations boolean

Boolean flag which controls whether the Subscription supports batched operations. Defaults to false.

forwardDeadLetteredMessagesTo string

The name of a Queue or Topic to automatically forward Dead Letter messages to.

forwardTo string

The name of a Queue or Topic to automatically forward messages to.

lockDuration string

The lock duration for the subscription as an ISO 8601 duration. The default value is 1 minute or P1M.

maxDeliveryCount number

The maximum number of deliveries.

name string

Specifies the name of the ServiceBus Subscription resource. Changing this forces a new resource to be created.

namespaceName string

The name of the ServiceBus Namespace to create this Subscription in. Changing this forces a new resource to be created.

requiresSession boolean

Boolean flag which controls whether this Subscription supports the concept of a session. Defaults to false. Changing this forces a new resource to be created.

resourceGroupName string

The name of the resource group in which to create the namespace. Changing this forces a new resource to be created.

topicName string

The name of the ServiceBus Topic to create this Subscription in. Changing this forces a new resource to be created.

auto_delete_on_idle str

The idle interval after which the topic is automatically deleted as an ISO 8601 duration. The minimum duration is 5 minutes or P5M.

dead_lettering_on_message_expiration bool

Boolean flag which controls whether the Subscription has dead letter support when a message expires. Defaults to false.

default_message_ttl str

The Default message timespan to live as an ISO 8601 duration. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself.

enable_batched_operations bool

Boolean flag which controls whether the Subscription supports batched operations. Defaults to false.

forward_dead_lettered_messages_to str

The name of a Queue or Topic to automatically forward Dead Letter messages to.

forward_to str

The name of a Queue or Topic to automatically forward messages to.

lock_duration str

The lock duration for the subscription as an ISO 8601 duration. The default value is 1 minute or P1M.

max_delivery_count float

The maximum number of deliveries.

name str

Specifies the name of the ServiceBus Subscription resource. Changing this forces a new resource to be created.

namespace_name str

The name of the ServiceBus Namespace to create this Subscription in. Changing this forces a new resource to be created.

requires_session bool

Boolean flag which controls whether this Subscription supports the concept of a session. Defaults to false. Changing this forces a new resource to be created.

resource_group_name str

The name of the resource group in which to create the namespace. Changing this forces a new resource to be created.

topic_name str

The name of the ServiceBus Topic to create this Subscription in. Changing this forces a new resource to be created.

Package Details

Repository
https://github.com/pulumi/pulumi-azure
License
Apache-2.0
Notes
This Pulumi package is based on the azurerm Terraform Provider.