1. Packages
  2. Rabbitmq Provider
  3. API Docs
  4. FederationUpstream
RabbitMQ v3.3.6 published on Monday, Oct 7, 2024 by Pulumi

rabbitmq.FederationUpstream

Explore with Pulumi AI

rabbitmq logo
RabbitMQ v3.3.6 published on Monday, Oct 7, 2024 by Pulumi

    The rabbitmq.FederationUpstream resource creates and manages a federation upstream parameter.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as rabbitmq from "@pulumi/rabbitmq";
    
    const test = new rabbitmq.VHost("test", {name: "test"});
    const guest = new rabbitmq.Permissions("guest", {
        user: "guest",
        vhost: test.name,
        permissions: {
            configure: ".*",
            write: ".*",
            read: ".*",
        },
    });
    // downstream exchange
    const foo = new rabbitmq.Exchange("foo", {
        name: "foo",
        vhost: guest.vhost,
        settings: {
            type: "topic",
            durable: true,
        },
    });
    // upstream broker
    const fooFederationUpstream = new rabbitmq.FederationUpstream("foo", {
        name: "foo",
        vhost: guest.vhost,
        definition: {
            uri: "amqp://guest:guest@upstream-server-name:5672/%2f",
            prefetchCount: 1000,
            reconnectDelay: 5,
            ackMode: "on-confirm",
            trustUserId: false,
            maxHops: 1,
        },
    });
    const fooPolicy = new rabbitmq.Policy("foo", {
        name: "foo",
        vhost: guest.vhost,
        policy: {
            pattern: pulumi.interpolate`(^${foo.name}$)`,
            priority: 1,
            applyTo: "exchanges",
            definition: {
                "federation-upstream": fooFederationUpstream.name,
            },
        },
    });
    
    import pulumi
    import pulumi_rabbitmq as rabbitmq
    
    test = rabbitmq.VHost("test", name="test")
    guest = rabbitmq.Permissions("guest",
        user="guest",
        vhost=test.name,
        permissions={
            "configure": ".*",
            "write": ".*",
            "read": ".*",
        })
    # downstream exchange
    foo = rabbitmq.Exchange("foo",
        name="foo",
        vhost=guest.vhost,
        settings={
            "type": "topic",
            "durable": True,
        })
    # upstream broker
    foo_federation_upstream = rabbitmq.FederationUpstream("foo",
        name="foo",
        vhost=guest.vhost,
        definition={
            "uri": "amqp://guest:guest@upstream-server-name:5672/%2f",
            "prefetch_count": 1000,
            "reconnect_delay": 5,
            "ack_mode": "on-confirm",
            "trust_user_id": False,
            "max_hops": 1,
        })
    foo_policy = rabbitmq.Policy("foo",
        name="foo",
        vhost=guest.vhost,
        policy={
            "pattern": foo.name.apply(lambda name: f"(^{name}$)"),
            "priority": 1,
            "apply_to": "exchanges",
            "definition": {
                "federation_upstream": foo_federation_upstream.name,
            },
        })
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-rabbitmq/sdk/v3/go/rabbitmq"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		test, err := rabbitmq.NewVHost(ctx, "test", &rabbitmq.VHostArgs{
    			Name: pulumi.String("test"),
    		})
    		if err != nil {
    			return err
    		}
    		guest, err := rabbitmq.NewPermissions(ctx, "guest", &rabbitmq.PermissionsArgs{
    			User:  pulumi.String("guest"),
    			Vhost: test.Name,
    			Permissions: &rabbitmq.PermissionsPermissionsArgs{
    				Configure: pulumi.String(".*"),
    				Write:     pulumi.String(".*"),
    				Read:      pulumi.String(".*"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// downstream exchange
    		foo, err := rabbitmq.NewExchange(ctx, "foo", &rabbitmq.ExchangeArgs{
    			Name:  pulumi.String("foo"),
    			Vhost: guest.Vhost,
    			Settings: &rabbitmq.ExchangeSettingsArgs{
    				Type:    pulumi.String("topic"),
    				Durable: pulumi.Bool(true),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// upstream broker
    		fooFederationUpstream, err := rabbitmq.NewFederationUpstream(ctx, "foo", &rabbitmq.FederationUpstreamArgs{
    			Name:  pulumi.String("foo"),
    			Vhost: guest.Vhost,
    			Definition: &rabbitmq.FederationUpstreamDefinitionArgs{
    				Uri:            pulumi.String("amqp://guest:guest@upstream-server-name:5672/%2f"),
    				PrefetchCount:  pulumi.Int(1000),
    				ReconnectDelay: pulumi.Int(5),
    				AckMode:        pulumi.String("on-confirm"),
    				TrustUserId:    pulumi.Bool(false),
    				MaxHops:        pulumi.Int(1),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = rabbitmq.NewPolicy(ctx, "foo", &rabbitmq.PolicyArgs{
    			Name:  pulumi.String("foo"),
    			Vhost: guest.Vhost,
    			Policy: &rabbitmq.PolicyPolicyArgs{
    				Pattern: foo.Name.ApplyT(func(name string) (string, error) {
    					return fmt.Sprintf("(^%v$)", name), nil
    				}).(pulumi.StringOutput),
    				Priority: pulumi.Int(1),
    				ApplyTo:  pulumi.String("exchanges"),
    				Definition: pulumi.StringMap{
    					"federation-upstream": fooFederationUpstream.Name,
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using RabbitMQ = Pulumi.RabbitMQ;
    
    return await Deployment.RunAsync(() => 
    {
        var test = new RabbitMQ.VHost("test", new()
        {
            Name = "test",
        });
    
        var guest = new RabbitMQ.Permissions("guest", new()
        {
            User = "guest",
            Vhost = test.Name,
            PermissionDetails = new RabbitMQ.Inputs.PermissionsPermissionsArgs
            {
                Configure = ".*",
                Write = ".*",
                Read = ".*",
            },
        });
    
        // downstream exchange
        var foo = new RabbitMQ.Exchange("foo", new()
        {
            Name = "foo",
            Vhost = guest.Vhost,
            Settings = new RabbitMQ.Inputs.ExchangeSettingsArgs
            {
                Type = "topic",
                Durable = true,
            },
        });
    
        // upstream broker
        var fooFederationUpstream = new RabbitMQ.FederationUpstream("foo", new()
        {
            Name = "foo",
            Vhost = guest.Vhost,
            Definition = new RabbitMQ.Inputs.FederationUpstreamDefinitionArgs
            {
                Uri = "amqp://guest:guest@upstream-server-name:5672/%2f",
                PrefetchCount = 1000,
                ReconnectDelay = 5,
                AckMode = "on-confirm",
                TrustUserId = false,
                MaxHops = 1,
            },
        });
    
        var fooPolicy = new RabbitMQ.Policy("foo", new()
        {
            Name = "foo",
            Vhost = guest.Vhost,
            PolicyBlock = new RabbitMQ.Inputs.PolicyPolicyArgs
            {
                Pattern = foo.Name.Apply(name => $"(^{name}$)"),
                Priority = 1,
                ApplyTo = "exchanges",
                Definition = 
                {
                    { "federation-upstream", fooFederationUpstream.Name },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.rabbitmq.VHost;
    import com.pulumi.rabbitmq.VHostArgs;
    import com.pulumi.rabbitmq.Permissions;
    import com.pulumi.rabbitmq.PermissionsArgs;
    import com.pulumi.rabbitmq.inputs.PermissionsPermissionsArgs;
    import com.pulumi.rabbitmq.Exchange;
    import com.pulumi.rabbitmq.ExchangeArgs;
    import com.pulumi.rabbitmq.inputs.ExchangeSettingsArgs;
    import com.pulumi.rabbitmq.FederationUpstream;
    import com.pulumi.rabbitmq.FederationUpstreamArgs;
    import com.pulumi.rabbitmq.inputs.FederationUpstreamDefinitionArgs;
    import com.pulumi.rabbitmq.Policy;
    import com.pulumi.rabbitmq.PolicyArgs;
    import com.pulumi.rabbitmq.inputs.PolicyPolicyArgs;
    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 test = new VHost("test", VHostArgs.builder()
                .name("test")
                .build());
    
            var guest = new Permissions("guest", PermissionsArgs.builder()
                .user("guest")
                .vhost(test.name())
                .permissions(PermissionsPermissionsArgs.builder()
                    .configure(".*")
                    .write(".*")
                    .read(".*")
                    .build())
                .build());
    
            // downstream exchange
            var foo = new Exchange("foo", ExchangeArgs.builder()
                .name("foo")
                .vhost(guest.vhost())
                .settings(ExchangeSettingsArgs.builder()
                    .type("topic")
                    .durable("true")
                    .build())
                .build());
    
            // upstream broker
            var fooFederationUpstream = new FederationUpstream("fooFederationUpstream", FederationUpstreamArgs.builder()
                .name("foo")
                .vhost(guest.vhost())
                .definition(FederationUpstreamDefinitionArgs.builder()
                    .uri("amqp://guest:guest@upstream-server-name:5672/%2f")
                    .prefetchCount(1000)
                    .reconnectDelay(5)
                    .ackMode("on-confirm")
                    .trustUserId(false)
                    .maxHops(1)
                    .build())
                .build());
    
            var fooPolicy = new Policy("fooPolicy", PolicyArgs.builder()
                .name("foo")
                .vhost(guest.vhost())
                .policy(PolicyPolicyArgs.builder()
                    .pattern(foo.name().applyValue(name -> String.format("(^%s$)", name)))
                    .priority(1)
                    .applyTo("exchanges")
                    .definition(Map.of("federation-upstream", fooFederationUpstream.name()))
                    .build())
                .build());
    
        }
    }
    
    resources:
      test:
        type: rabbitmq:VHost
        properties:
          name: test
      guest:
        type: rabbitmq:Permissions
        properties:
          user: guest
          vhost: ${test.name}
          permissions:
            configure: .*
            write: .*
            read: .*
      # downstream exchange
      foo:
        type: rabbitmq:Exchange
        properties:
          name: foo
          vhost: ${guest.vhost}
          settings:
            type: topic
            durable: 'true'
      # upstream broker
      fooFederationUpstream:
        type: rabbitmq:FederationUpstream
        name: foo
        properties:
          name: foo
          vhost: ${guest.vhost}
          definition:
            uri: amqp://guest:guest@upstream-server-name:5672/%2f
            prefetchCount: 1000
            reconnectDelay: 5
            ackMode: on-confirm
            trustUserId: false
            maxHops: 1
      fooPolicy:
        type: rabbitmq:Policy
        name: foo
        properties:
          name: foo
          vhost: ${guest.vhost}
          policy:
            pattern: (^${foo.name}$)
            priority: 1
            applyTo: exchanges
            definition:
              federation-upstream: ${fooFederationUpstream.name}
    

    Create FederationUpstream Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new FederationUpstream(name: string, args: FederationUpstreamArgs, opts?: CustomResourceOptions);
    @overload
    def FederationUpstream(resource_name: str,
                           args: FederationUpstreamArgs,
                           opts: Optional[ResourceOptions] = None)
    
    @overload
    def FederationUpstream(resource_name: str,
                           opts: Optional[ResourceOptions] = None,
                           definition: Optional[FederationUpstreamDefinitionArgs] = None,
                           vhost: Optional[str] = None,
                           name: Optional[str] = None)
    func NewFederationUpstream(ctx *Context, name string, args FederationUpstreamArgs, opts ...ResourceOption) (*FederationUpstream, error)
    public FederationUpstream(string name, FederationUpstreamArgs args, CustomResourceOptions? opts = null)
    public FederationUpstream(String name, FederationUpstreamArgs args)
    public FederationUpstream(String name, FederationUpstreamArgs args, CustomResourceOptions options)
    
    type: rabbitmq:FederationUpstream
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args FederationUpstreamArgs
    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 FederationUpstreamArgs
    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 FederationUpstreamArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args FederationUpstreamArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args FederationUpstreamArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var federationUpstreamResource = new RabbitMQ.FederationUpstream("federationUpstreamResource", new()
    {
        Definition = new RabbitMQ.Inputs.FederationUpstreamDefinitionArgs
        {
            Uri = "string",
            AckMode = "string",
            Exchange = "string",
            Expires = 0,
            MaxHops = 0,
            MessageTtl = 0,
            PrefetchCount = 0,
            Queue = "string",
            ReconnectDelay = 0,
            TrustUserId = false,
        },
        Vhost = "string",
        Name = "string",
    });
    
    example, err := rabbitmq.NewFederationUpstream(ctx, "federationUpstreamResource", &rabbitmq.FederationUpstreamArgs{
    	Definition: &rabbitmq.FederationUpstreamDefinitionArgs{
    		Uri:            pulumi.String("string"),
    		AckMode:        pulumi.String("string"),
    		Exchange:       pulumi.String("string"),
    		Expires:        pulumi.Int(0),
    		MaxHops:        pulumi.Int(0),
    		MessageTtl:     pulumi.Int(0),
    		PrefetchCount:  pulumi.Int(0),
    		Queue:          pulumi.String("string"),
    		ReconnectDelay: pulumi.Int(0),
    		TrustUserId:    pulumi.Bool(false),
    	},
    	Vhost: pulumi.String("string"),
    	Name:  pulumi.String("string"),
    })
    
    var federationUpstreamResource = new FederationUpstream("federationUpstreamResource", FederationUpstreamArgs.builder()
        .definition(FederationUpstreamDefinitionArgs.builder()
            .uri("string")
            .ackMode("string")
            .exchange("string")
            .expires(0)
            .maxHops(0)
            .messageTtl(0)
            .prefetchCount(0)
            .queue("string")
            .reconnectDelay(0)
            .trustUserId(false)
            .build())
        .vhost("string")
        .name("string")
        .build());
    
    federation_upstream_resource = rabbitmq.FederationUpstream("federationUpstreamResource",
        definition={
            "uri": "string",
            "ack_mode": "string",
            "exchange": "string",
            "expires": 0,
            "max_hops": 0,
            "message_ttl": 0,
            "prefetch_count": 0,
            "queue": "string",
            "reconnect_delay": 0,
            "trust_user_id": False,
        },
        vhost="string",
        name="string")
    
    const federationUpstreamResource = new rabbitmq.FederationUpstream("federationUpstreamResource", {
        definition: {
            uri: "string",
            ackMode: "string",
            exchange: "string",
            expires: 0,
            maxHops: 0,
            messageTtl: 0,
            prefetchCount: 0,
            queue: "string",
            reconnectDelay: 0,
            trustUserId: false,
        },
        vhost: "string",
        name: "string",
    });
    
    type: rabbitmq:FederationUpstream
    properties:
        definition:
            ackMode: string
            exchange: string
            expires: 0
            maxHops: 0
            messageTtl: 0
            prefetchCount: 0
            queue: string
            reconnectDelay: 0
            trustUserId: false
            uri: string
        name: string
        vhost: string
    

    FederationUpstream Resource Properties

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

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The FederationUpstream resource accepts the following input properties:

    Definition Pulumi.RabbitMQ.Inputs.FederationUpstreamDefinition
    The configuration of the federation upstream. The structure is described below.
    Vhost string
    The vhost to create the resource in.
    Name string
    The name of the federation upstream.
    Definition FederationUpstreamDefinitionArgs
    The configuration of the federation upstream. The structure is described below.
    Vhost string
    The vhost to create the resource in.
    Name string
    The name of the federation upstream.
    definition FederationUpstreamDefinition
    The configuration of the federation upstream. The structure is described below.
    vhost String
    The vhost to create the resource in.
    name String
    The name of the federation upstream.
    definition FederationUpstreamDefinition
    The configuration of the federation upstream. The structure is described below.
    vhost string
    The vhost to create the resource in.
    name string
    The name of the federation upstream.
    definition FederationUpstreamDefinitionArgs
    The configuration of the federation upstream. The structure is described below.
    vhost str
    The vhost to create the resource in.
    name str
    The name of the federation upstream.
    definition Property Map
    The configuration of the federation upstream. The structure is described below.
    vhost String
    The vhost to create the resource in.
    name String
    The name of the federation upstream.

    Outputs

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

    Component string
    Set to federation-upstream by the underlying RabbitMQ provider. You do not set this attribute but will see it in state and plan output.
    Id string
    The provider-assigned unique ID for this managed resource.
    Component string
    Set to federation-upstream by the underlying RabbitMQ provider. You do not set this attribute but will see it in state and plan output.
    Id string
    The provider-assigned unique ID for this managed resource.
    component String
    Set to federation-upstream by the underlying RabbitMQ provider. You do not set this attribute but will see it in state and plan output.
    id String
    The provider-assigned unique ID for this managed resource.
    component string
    Set to federation-upstream by the underlying RabbitMQ provider. You do not set this attribute but will see it in state and plan output.
    id string
    The provider-assigned unique ID for this managed resource.
    component str
    Set to federation-upstream by the underlying RabbitMQ provider. You do not set this attribute but will see it in state and plan output.
    id str
    The provider-assigned unique ID for this managed resource.
    component String
    Set to federation-upstream by the underlying RabbitMQ provider. You do not set this attribute but will see it in state and plan output.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing FederationUpstream Resource

    Get an existing FederationUpstream 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?: FederationUpstreamState, opts?: CustomResourceOptions): FederationUpstream
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            component: Optional[str] = None,
            definition: Optional[FederationUpstreamDefinitionArgs] = None,
            name: Optional[str] = None,
            vhost: Optional[str] = None) -> FederationUpstream
    func GetFederationUpstream(ctx *Context, name string, id IDInput, state *FederationUpstreamState, opts ...ResourceOption) (*FederationUpstream, error)
    public static FederationUpstream Get(string name, Input<string> id, FederationUpstreamState? state, CustomResourceOptions? opts = null)
    public static FederationUpstream get(String name, Output<String> id, FederationUpstreamState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    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.
    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:
    Component string
    Set to federation-upstream by the underlying RabbitMQ provider. You do not set this attribute but will see it in state and plan output.
    Definition Pulumi.RabbitMQ.Inputs.FederationUpstreamDefinition
    The configuration of the federation upstream. The structure is described below.
    Name string
    The name of the federation upstream.
    Vhost string
    The vhost to create the resource in.
    Component string
    Set to federation-upstream by the underlying RabbitMQ provider. You do not set this attribute but will see it in state and plan output.
    Definition FederationUpstreamDefinitionArgs
    The configuration of the federation upstream. The structure is described below.
    Name string
    The name of the federation upstream.
    Vhost string
    The vhost to create the resource in.
    component String
    Set to federation-upstream by the underlying RabbitMQ provider. You do not set this attribute but will see it in state and plan output.
    definition FederationUpstreamDefinition
    The configuration of the federation upstream. The structure is described below.
    name String
    The name of the federation upstream.
    vhost String
    The vhost to create the resource in.
    component string
    Set to federation-upstream by the underlying RabbitMQ provider. You do not set this attribute but will see it in state and plan output.
    definition FederationUpstreamDefinition
    The configuration of the federation upstream. The structure is described below.
    name string
    The name of the federation upstream.
    vhost string
    The vhost to create the resource in.
    component str
    Set to federation-upstream by the underlying RabbitMQ provider. You do not set this attribute but will see it in state and plan output.
    definition FederationUpstreamDefinitionArgs
    The configuration of the federation upstream. The structure is described below.
    name str
    The name of the federation upstream.
    vhost str
    The vhost to create the resource in.
    component String
    Set to federation-upstream by the underlying RabbitMQ provider. You do not set this attribute but will see it in state and plan output.
    definition Property Map
    The configuration of the federation upstream. The structure is described below.
    name String
    The name of the federation upstream.
    vhost String
    The vhost to create the resource in.

    Supporting Types

    FederationUpstreamDefinition, FederationUpstreamDefinitionArgs

    Uri string
    The AMQP URI(s) for the upstream. Note that the URI may contain sensitive information, such as a password.
    AckMode string
    Determines how the link should acknowledge messages. Valid values are on-confirm, on-publish, and no-ack. Default is on-confirm.
    Exchange string
    The name of the upstream exchange.
    Expires int
    The expiry time (in milliseconds) after which an upstream queue for a federated exchange may be deleted if a connection to the upstream is lost.
    MaxHops int
    Maximum number of federation links that messages can traverse before being dropped. Default is 1.
    MessageTtl int

    The expiry time (in milliseconds) for messages in the upstream queue for a federated exchange (see expires).

    Applicable to Federated Queues Only

    PrefetchCount int
    Maximum number of unacknowledged messages that may be in flight over a federation link at one time. Default is 1000.
    Queue string

    The name of the upstream queue.

    Consult the RabbitMQ Federation Reference documentation for detailed information and guidance on setting these values.

    ReconnectDelay int
    Time in seconds to wait after a network link goes down before attempting reconnection. Default is 5.
    TrustUserId bool

    Determines how federation should interact with the validated user-id feature. Default is false.

    Applicable to Federated Exchanges Only

    Uri string
    The AMQP URI(s) for the upstream. Note that the URI may contain sensitive information, such as a password.
    AckMode string
    Determines how the link should acknowledge messages. Valid values are on-confirm, on-publish, and no-ack. Default is on-confirm.
    Exchange string
    The name of the upstream exchange.
    Expires int
    The expiry time (in milliseconds) after which an upstream queue for a federated exchange may be deleted if a connection to the upstream is lost.
    MaxHops int
    Maximum number of federation links that messages can traverse before being dropped. Default is 1.
    MessageTtl int

    The expiry time (in milliseconds) for messages in the upstream queue for a federated exchange (see expires).

    Applicable to Federated Queues Only

    PrefetchCount int
    Maximum number of unacknowledged messages that may be in flight over a federation link at one time. Default is 1000.
    Queue string

    The name of the upstream queue.

    Consult the RabbitMQ Federation Reference documentation for detailed information and guidance on setting these values.

    ReconnectDelay int
    Time in seconds to wait after a network link goes down before attempting reconnection. Default is 5.
    TrustUserId bool

    Determines how federation should interact with the validated user-id feature. Default is false.

    Applicable to Federated Exchanges Only

    uri String
    The AMQP URI(s) for the upstream. Note that the URI may contain sensitive information, such as a password.
    ackMode String
    Determines how the link should acknowledge messages. Valid values are on-confirm, on-publish, and no-ack. Default is on-confirm.
    exchange String
    The name of the upstream exchange.
    expires Integer
    The expiry time (in milliseconds) after which an upstream queue for a federated exchange may be deleted if a connection to the upstream is lost.
    maxHops Integer
    Maximum number of federation links that messages can traverse before being dropped. Default is 1.
    messageTtl Integer

    The expiry time (in milliseconds) for messages in the upstream queue for a federated exchange (see expires).

    Applicable to Federated Queues Only

    prefetchCount Integer
    Maximum number of unacknowledged messages that may be in flight over a federation link at one time. Default is 1000.
    queue String

    The name of the upstream queue.

    Consult the RabbitMQ Federation Reference documentation for detailed information and guidance on setting these values.

    reconnectDelay Integer
    Time in seconds to wait after a network link goes down before attempting reconnection. Default is 5.
    trustUserId Boolean

    Determines how federation should interact with the validated user-id feature. Default is false.

    Applicable to Federated Exchanges Only

    uri string
    The AMQP URI(s) for the upstream. Note that the URI may contain sensitive information, such as a password.
    ackMode string
    Determines how the link should acknowledge messages. Valid values are on-confirm, on-publish, and no-ack. Default is on-confirm.
    exchange string
    The name of the upstream exchange.
    expires number
    The expiry time (in milliseconds) after which an upstream queue for a federated exchange may be deleted if a connection to the upstream is lost.
    maxHops number
    Maximum number of federation links that messages can traverse before being dropped. Default is 1.
    messageTtl number

    The expiry time (in milliseconds) for messages in the upstream queue for a federated exchange (see expires).

    Applicable to Federated Queues Only

    prefetchCount number
    Maximum number of unacknowledged messages that may be in flight over a federation link at one time. Default is 1000.
    queue string

    The name of the upstream queue.

    Consult the RabbitMQ Federation Reference documentation for detailed information and guidance on setting these values.

    reconnectDelay number
    Time in seconds to wait after a network link goes down before attempting reconnection. Default is 5.
    trustUserId boolean

    Determines how federation should interact with the validated user-id feature. Default is false.

    Applicable to Federated Exchanges Only

    uri str
    The AMQP URI(s) for the upstream. Note that the URI may contain sensitive information, such as a password.
    ack_mode str
    Determines how the link should acknowledge messages. Valid values are on-confirm, on-publish, and no-ack. Default is on-confirm.
    exchange str
    The name of the upstream exchange.
    expires int
    The expiry time (in milliseconds) after which an upstream queue for a federated exchange may be deleted if a connection to the upstream is lost.
    max_hops int
    Maximum number of federation links that messages can traverse before being dropped. Default is 1.
    message_ttl int

    The expiry time (in milliseconds) for messages in the upstream queue for a federated exchange (see expires).

    Applicable to Federated Queues Only

    prefetch_count int
    Maximum number of unacknowledged messages that may be in flight over a federation link at one time. Default is 1000.
    queue str

    The name of the upstream queue.

    Consult the RabbitMQ Federation Reference documentation for detailed information and guidance on setting these values.

    reconnect_delay int
    Time in seconds to wait after a network link goes down before attempting reconnection. Default is 5.
    trust_user_id bool

    Determines how federation should interact with the validated user-id feature. Default is false.

    Applicable to Federated Exchanges Only

    uri String
    The AMQP URI(s) for the upstream. Note that the URI may contain sensitive information, such as a password.
    ackMode String
    Determines how the link should acknowledge messages. Valid values are on-confirm, on-publish, and no-ack. Default is on-confirm.
    exchange String
    The name of the upstream exchange.
    expires Number
    The expiry time (in milliseconds) after which an upstream queue for a federated exchange may be deleted if a connection to the upstream is lost.
    maxHops Number
    Maximum number of federation links that messages can traverse before being dropped. Default is 1.
    messageTtl Number

    The expiry time (in milliseconds) for messages in the upstream queue for a federated exchange (see expires).

    Applicable to Federated Queues Only

    prefetchCount Number
    Maximum number of unacknowledged messages that may be in flight over a federation link at one time. Default is 1000.
    queue String

    The name of the upstream queue.

    Consult the RabbitMQ Federation Reference documentation for detailed information and guidance on setting these values.

    reconnectDelay Number
    Time in seconds to wait after a network link goes down before attempting reconnection. Default is 5.
    trustUserId Boolean

    Determines how federation should interact with the validated user-id feature. Default is false.

    Applicable to Federated Exchanges Only

    Import

    A Federation upstream can be imported using the resource id which is composed of name@vhost, e.g.

    $ pulumi import rabbitmq:index/federationUpstream:FederationUpstream foo foo@test
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    RabbitMQ pulumi/pulumi-rabbitmq
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the rabbitmq Terraform Provider.
    rabbitmq logo
    RabbitMQ v3.3.6 published on Monday, Oct 7, 2024 by Pulumi