RuleArgs

data class RuleArgs(val action: Output<ActionArgs>? = null, val correlationFilter: Output<CorrelationFilterArgs>? = null, val filterType: Output<FilterType>? = null, val namespaceName: Output<String>? = null, val resourceGroupName: Output<String>? = null, val ruleName: Output<String>? = null, val sqlFilter: Output<SqlFilterArgs>? = null, val subscriptionName: Output<String>? = null, val topicName: Output<String>? = null) : ConvertibleToJava<RuleArgs>

Description of Rule Resource. Uses Azure REST API version 2024-01-01. In version 2.x of the Azure Native provider, it used API version 2022-01-01-preview. Other available API versions: 2018-01-01-preview, 2021-01-01-preview, 2021-06-01-preview, 2021-11-01, 2022-01-01-preview, 2022-10-01-preview, 2023-01-01-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native servicebus [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

RulesCreateCorrelationFilter

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var rule = new AzureNative.ServiceBus.Rule("rule", new()
{
CorrelationFilter = new AzureNative.ServiceBus.Inputs.CorrelationFilterArgs
{
Properties =
{
{ "topicHint", "Crop" },
},
},
FilterType = AzureNative.ServiceBus.FilterType.CorrelationFilter,
NamespaceName = "sdk-Namespace-1319",
ResourceGroupName = "resourceGroupName",
RuleName = "sdk-Rules-6571",
SubscriptionName = "sdk-Subscriptions-8691",
TopicName = "sdk-Topics-2081",
});
});
package main
import (
servicebus "github.com/pulumi/pulumi-azure-native-sdk/servicebus/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := servicebus.NewRule(ctx, "rule", &servicebus.RuleArgs{
CorrelationFilter: &servicebus.CorrelationFilterArgs{
Properties: pulumi.StringMap{
"topicHint": pulumi.String("Crop"),
},
},
FilterType: servicebus.FilterTypeCorrelationFilter,
NamespaceName: pulumi.String("sdk-Namespace-1319"),
ResourceGroupName: pulumi.String("resourceGroupName"),
RuleName: pulumi.String("sdk-Rules-6571"),
SubscriptionName: pulumi.String("sdk-Subscriptions-8691"),
TopicName: pulumi.String("sdk-Topics-2081"),
})
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.servicebus.Rule;
import com.pulumi.azurenative.servicebus.RuleArgs;
import com.pulumi.azurenative.servicebus.inputs.CorrelationFilterArgs;
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 rule = new Rule("rule", RuleArgs.builder()
.correlationFilter(CorrelationFilterArgs.builder()
.properties(Map.of("topicHint", "Crop"))
.build())
.filterType("CorrelationFilter")
.namespaceName("sdk-Namespace-1319")
.resourceGroupName("resourceGroupName")
.ruleName("sdk-Rules-6571")
.subscriptionName("sdk-Subscriptions-8691")
.topicName("sdk-Topics-2081")
.build());
}
}

RulesCreateOrUpdate

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var rule = new AzureNative.ServiceBus.Rule("rule", new()
{
NamespaceName = "sdk-Namespace-1319",
ResourceGroupName = "resourceGroupName",
RuleName = "sdk-Rules-6571",
SubscriptionName = "sdk-Subscriptions-8691",
TopicName = "sdk-Topics-2081",
});
});
package main
import (
servicebus "github.com/pulumi/pulumi-azure-native-sdk/servicebus/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := servicebus.NewRule(ctx, "rule", &servicebus.RuleArgs{
NamespaceName: pulumi.String("sdk-Namespace-1319"),
ResourceGroupName: pulumi.String("resourceGroupName"),
RuleName: pulumi.String("sdk-Rules-6571"),
SubscriptionName: pulumi.String("sdk-Subscriptions-8691"),
TopicName: pulumi.String("sdk-Topics-2081"),
})
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.servicebus.Rule;
import com.pulumi.azurenative.servicebus.RuleArgs;
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 rule = new Rule("rule", RuleArgs.builder()
.namespaceName("sdk-Namespace-1319")
.resourceGroupName("resourceGroupName")
.ruleName("sdk-Rules-6571")
.subscriptionName("sdk-Subscriptions-8691")
.topicName("sdk-Topics-2081")
.build());
}
}

RulesCreateSqlFilter

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var rule = new AzureNative.ServiceBus.Rule("rule", new()
{
FilterType = AzureNative.ServiceBus.FilterType.SqlFilter,
NamespaceName = "sdk-Namespace-1319",
ResourceGroupName = "resourceGroupName",
RuleName = "sdk-Rules-6571",
SqlFilter = new AzureNative.ServiceBus.Inputs.SqlFilterArgs
{
SqlExpression = "myproperty=test",
},
SubscriptionName = "sdk-Subscriptions-8691",
TopicName = "sdk-Topics-2081",
});
});
package main
import (
servicebus "github.com/pulumi/pulumi-azure-native-sdk/servicebus/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := servicebus.NewRule(ctx, "rule", &servicebus.RuleArgs{
FilterType: servicebus.FilterTypeSqlFilter,
NamespaceName: pulumi.String("sdk-Namespace-1319"),
ResourceGroupName: pulumi.String("resourceGroupName"),
RuleName: pulumi.String("sdk-Rules-6571"),
SqlFilter: &servicebus.SqlFilterArgs{
SqlExpression: pulumi.String("myproperty=test"),
},
SubscriptionName: pulumi.String("sdk-Subscriptions-8691"),
TopicName: pulumi.String("sdk-Topics-2081"),
})
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.servicebus.Rule;
import com.pulumi.azurenative.servicebus.RuleArgs;
import com.pulumi.azurenative.servicebus.inputs.SqlFilterArgs;
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 rule = new Rule("rule", RuleArgs.builder()
.filterType("SqlFilter")
.namespaceName("sdk-Namespace-1319")
.resourceGroupName("resourceGroupName")
.ruleName("sdk-Rules-6571")
.sqlFilter(SqlFilterArgs.builder()
.sqlExpression("myproperty=test")
.build())
.subscriptionName("sdk-Subscriptions-8691")
.topicName("sdk-Topics-2081")
.build());
}
}

Import

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

$ pulumi import azure-native:servicebus:Rule sdk-Rules-6571 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}

Constructors

Link copied to clipboard
constructor(action: Output<ActionArgs>? = null, correlationFilter: Output<CorrelationFilterArgs>? = null, filterType: Output<FilterType>? = null, namespaceName: Output<String>? = null, resourceGroupName: Output<String>? = null, ruleName: Output<String>? = null, sqlFilter: Output<SqlFilterArgs>? = null, subscriptionName: Output<String>? = null, topicName: Output<String>? = null)

Properties

Link copied to clipboard
val action: Output<ActionArgs>? = null

Represents the filter actions which are allowed for the transformation of a message that have been matched by a filter expression.

Link copied to clipboard

Properties of correlationFilter

Link copied to clipboard
val filterType: Output<FilterType>? = null

Filter type that is evaluated against a BrokeredMessage.

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

The namespace name

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

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

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

The rule name.

Link copied to clipboard
val sqlFilter: Output<SqlFilterArgs>? = null

Properties of sqlFilter

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

The subscription name.

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

The topic name.

Functions

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