rabbitmq

package
v2.4.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 24, 2020 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

A Pulumi package for creating and managing RabbitMQ resources.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Binding

type Binding struct {
	pulumi.CustomResourceState

	// Additional key/value arguments for the binding.
	Arguments     pulumi.MapOutput       `pulumi:"arguments"`
	ArgumentsJson pulumi.StringPtrOutput `pulumi:"argumentsJson"`
	// The destination queue or exchange.
	Destination pulumi.StringOutput `pulumi:"destination"`
	// The type of destination (queue or exchange).
	DestinationType pulumi.StringOutput `pulumi:"destinationType"`
	// A unique key to refer to the binding.
	PropertiesKey pulumi.StringOutput `pulumi:"propertiesKey"`
	// A routing key for the binding.
	RoutingKey pulumi.StringPtrOutput `pulumi:"routingKey"`
	// The source exchange.
	Source pulumi.StringOutput `pulumi:"source"`
	// The vhost to create the resource in.
	Vhost pulumi.StringOutput `pulumi:"vhost"`
}

The “Binding“ resource creates and manages a binding relationship between a queue an exchange.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-rabbitmq/sdk/v2/go/rabbitmq"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testVHost, err := rabbitmq.NewVHost(ctx, "testVHost", nil)
		if err != nil {
			return err
		}
		guest, err := rabbitmq.NewPermissions(ctx, "guest", &rabbitmq.PermissionsArgs{
			Permissions: &rabbitmq.PermissionsPermissionsArgs{
				Configure: pulumi.String(".*"),
				Read:      pulumi.String(".*"),
				Write:     pulumi.String(".*"),
			},
			User:  pulumi.String("guest"),
			Vhost: testVHost.Name,
		})
		if err != nil {
			return err
		}
		testExchange, err := rabbitmq.NewExchange(ctx, "testExchange", &rabbitmq.ExchangeArgs{
			Settings: &rabbitmq.ExchangeSettingsArgs{
				AutoDelete: pulumi.Bool(true),
				Durable:    pulumi.Bool(false),
				Type:       pulumi.String("fanout"),
			},
			Vhost: guest.Vhost,
		})
		if err != nil {
			return err
		}
		testQueue, err := rabbitmq.NewQueue(ctx, "testQueue", &rabbitmq.QueueArgs{
			Settings: &rabbitmq.QueueSettingsArgs{
				AutoDelete: pulumi.Bool(false),
				Durable:    pulumi.Bool(true),
			},
			Vhost: guest.Vhost,
		})
		if err != nil {
			return err
		}
		_, err = rabbitmq.NewBinding(ctx, "testBinding", &rabbitmq.BindingArgs{
			Destination:     testQueue.Name,
			DestinationType: pulumi.String("queue"),
			RoutingKey:      pulumi.String("#"),
			Source:          testExchange.Name,
			Vhost:           testVHost.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Bindings can be imported using the `id` which is composed of

`vhost/source/destination/destination_type/properties_key`. E.g.

```sh

$ pulumi import rabbitmq:index/binding:Binding test test/test/test/queue/%23

```

func GetBinding

func GetBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BindingState, opts ...pulumi.ResourceOption) (*Binding, error)

GetBinding gets an existing Binding resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBinding

func NewBinding(ctx *pulumi.Context,
	name string, args *BindingArgs, opts ...pulumi.ResourceOption) (*Binding, error)

NewBinding registers a new resource with the given unique name, arguments, and options.

func (Binding) ElementType added in v2.4.1

func (Binding) ElementType() reflect.Type

func (Binding) ToBindingOutput added in v2.4.1

func (i Binding) ToBindingOutput() BindingOutput

func (Binding) ToBindingOutputWithContext added in v2.4.1

func (i Binding) ToBindingOutputWithContext(ctx context.Context) BindingOutput

type BindingArgs

type BindingArgs struct {
	// Additional key/value arguments for the binding.
	Arguments     pulumi.MapInput
	ArgumentsJson pulumi.StringPtrInput
	// The destination queue or exchange.
	Destination pulumi.StringInput
	// The type of destination (queue or exchange).
	DestinationType pulumi.StringInput
	// A routing key for the binding.
	RoutingKey pulumi.StringPtrInput
	// The source exchange.
	Source pulumi.StringInput
	// The vhost to create the resource in.
	Vhost pulumi.StringInput
}

The set of arguments for constructing a Binding resource.

func (BindingArgs) ElementType

func (BindingArgs) ElementType() reflect.Type

type BindingInput added in v2.4.1

type BindingInput interface {
	pulumi.Input

	ToBindingOutput() BindingOutput
	ToBindingOutputWithContext(ctx context.Context) BindingOutput
}

type BindingOutput added in v2.4.1

type BindingOutput struct {
	*pulumi.OutputState
}

func (BindingOutput) ElementType added in v2.4.1

func (BindingOutput) ElementType() reflect.Type

func (BindingOutput) ToBindingOutput added in v2.4.1

func (o BindingOutput) ToBindingOutput() BindingOutput

func (BindingOutput) ToBindingOutputWithContext added in v2.4.1

func (o BindingOutput) ToBindingOutputWithContext(ctx context.Context) BindingOutput

type BindingState

type BindingState struct {
	// Additional key/value arguments for the binding.
	Arguments     pulumi.MapInput
	ArgumentsJson pulumi.StringPtrInput
	// The destination queue or exchange.
	Destination pulumi.StringPtrInput
	// The type of destination (queue or exchange).
	DestinationType pulumi.StringPtrInput
	// A unique key to refer to the binding.
	PropertiesKey pulumi.StringPtrInput
	// A routing key for the binding.
	RoutingKey pulumi.StringPtrInput
	// The source exchange.
	Source pulumi.StringPtrInput
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrInput
}

func (BindingState) ElementType

func (BindingState) ElementType() reflect.Type

type Exchange

type Exchange struct {
	pulumi.CustomResourceState

	// The name of the exchange.
	Name pulumi.StringOutput `pulumi:"name"`
	// The settings of the exchange. The structure is
	// described below.
	Settings ExchangeSettingsOutput `pulumi:"settings"`
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrOutput `pulumi:"vhost"`
}

The “Exchange“ resource creates and manages an exchange.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-rabbitmq/sdk/v2/go/rabbitmq"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testVHost, err := rabbitmq.NewVHost(ctx, "testVHost", nil)
		if err != nil {
			return err
		}
		guest, err := rabbitmq.NewPermissions(ctx, "guest", &rabbitmq.PermissionsArgs{
			Permissions: &rabbitmq.PermissionsPermissionsArgs{
				Configure: pulumi.String(".*"),
				Read:      pulumi.String(".*"),
				Write:     pulumi.String(".*"),
			},
			User:  pulumi.String("guest"),
			Vhost: testVHost.Name,
		})
		if err != nil {
			return err
		}
		_, err = rabbitmq.NewExchange(ctx, "testExchange", &rabbitmq.ExchangeArgs{
			Settings: &rabbitmq.ExchangeSettingsArgs{
				AutoDelete: pulumi.Bool(true),
				Durable:    pulumi.Bool(false),
				Type:       pulumi.String("fanout"),
			},
			Vhost: guest.Vhost,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Exchanges can be imported using the `id` which is composed of

`name@vhost`. E.g.

```sh

$ pulumi import rabbitmq:index/exchange:Exchange test test@vhost

```

func GetExchange

func GetExchange(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ExchangeState, opts ...pulumi.ResourceOption) (*Exchange, error)

GetExchange gets an existing Exchange resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewExchange

func NewExchange(ctx *pulumi.Context,
	name string, args *ExchangeArgs, opts ...pulumi.ResourceOption) (*Exchange, error)

NewExchange registers a new resource with the given unique name, arguments, and options.

func (Exchange) ElementType added in v2.4.1

func (Exchange) ElementType() reflect.Type

func (Exchange) ToExchangeOutput added in v2.4.1

func (i Exchange) ToExchangeOutput() ExchangeOutput

func (Exchange) ToExchangeOutputWithContext added in v2.4.1

func (i Exchange) ToExchangeOutputWithContext(ctx context.Context) ExchangeOutput

type ExchangeArgs

type ExchangeArgs struct {
	// The name of the exchange.
	Name pulumi.StringPtrInput
	// The settings of the exchange. The structure is
	// described below.
	Settings ExchangeSettingsInput
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrInput
}

The set of arguments for constructing a Exchange resource.

func (ExchangeArgs) ElementType

func (ExchangeArgs) ElementType() reflect.Type

type ExchangeInput added in v2.4.1

type ExchangeInput interface {
	pulumi.Input

	ToExchangeOutput() ExchangeOutput
	ToExchangeOutputWithContext(ctx context.Context) ExchangeOutput
}

type ExchangeOutput added in v2.4.1

type ExchangeOutput struct {
	*pulumi.OutputState
}

func (ExchangeOutput) ElementType added in v2.4.1

func (ExchangeOutput) ElementType() reflect.Type

func (ExchangeOutput) ToExchangeOutput added in v2.4.1

func (o ExchangeOutput) ToExchangeOutput() ExchangeOutput

func (ExchangeOutput) ToExchangeOutputWithContext added in v2.4.1

func (o ExchangeOutput) ToExchangeOutputWithContext(ctx context.Context) ExchangeOutput

type ExchangeSettings

type ExchangeSettings struct {
	// Additional key/value settings for the exchange.
	Arguments map[string]interface{} `pulumi:"arguments"`
	// Whether the exchange will self-delete when all
	// queues have finished using it.
	AutoDelete *bool `pulumi:"autoDelete"`
	// Whether the exchange survives server restarts.
	// Defaults to `false`.
	Durable *bool `pulumi:"durable"`
	// The type of exchange.
	Type string `pulumi:"type"`
}

type ExchangeSettingsArgs

type ExchangeSettingsArgs struct {
	// Additional key/value settings for the exchange.
	Arguments pulumi.MapInput `pulumi:"arguments"`
	// Whether the exchange will self-delete when all
	// queues have finished using it.
	AutoDelete pulumi.BoolPtrInput `pulumi:"autoDelete"`
	// Whether the exchange survives server restarts.
	// Defaults to `false`.
	Durable pulumi.BoolPtrInput `pulumi:"durable"`
	// The type of exchange.
	Type pulumi.StringInput `pulumi:"type"`
}

func (ExchangeSettingsArgs) ElementType

func (ExchangeSettingsArgs) ElementType() reflect.Type

func (ExchangeSettingsArgs) ToExchangeSettingsOutput

func (i ExchangeSettingsArgs) ToExchangeSettingsOutput() ExchangeSettingsOutput

func (ExchangeSettingsArgs) ToExchangeSettingsOutputWithContext

func (i ExchangeSettingsArgs) ToExchangeSettingsOutputWithContext(ctx context.Context) ExchangeSettingsOutput

func (ExchangeSettingsArgs) ToExchangeSettingsPtrOutput

func (i ExchangeSettingsArgs) ToExchangeSettingsPtrOutput() ExchangeSettingsPtrOutput

func (ExchangeSettingsArgs) ToExchangeSettingsPtrOutputWithContext

func (i ExchangeSettingsArgs) ToExchangeSettingsPtrOutputWithContext(ctx context.Context) ExchangeSettingsPtrOutput

type ExchangeSettingsInput

type ExchangeSettingsInput interface {
	pulumi.Input

	ToExchangeSettingsOutput() ExchangeSettingsOutput
	ToExchangeSettingsOutputWithContext(context.Context) ExchangeSettingsOutput
}

ExchangeSettingsInput is an input type that accepts ExchangeSettingsArgs and ExchangeSettingsOutput values. You can construct a concrete instance of `ExchangeSettingsInput` via:

ExchangeSettingsArgs{...}

type ExchangeSettingsOutput

type ExchangeSettingsOutput struct{ *pulumi.OutputState }

func (ExchangeSettingsOutput) Arguments

func (o ExchangeSettingsOutput) Arguments() pulumi.MapOutput

Additional key/value settings for the exchange.

func (ExchangeSettingsOutput) AutoDelete

Whether the exchange will self-delete when all queues have finished using it.

func (ExchangeSettingsOutput) Durable

Whether the exchange survives server restarts. Defaults to `false`.

func (ExchangeSettingsOutput) ElementType

func (ExchangeSettingsOutput) ElementType() reflect.Type

func (ExchangeSettingsOutput) ToExchangeSettingsOutput

func (o ExchangeSettingsOutput) ToExchangeSettingsOutput() ExchangeSettingsOutput

func (ExchangeSettingsOutput) ToExchangeSettingsOutputWithContext

func (o ExchangeSettingsOutput) ToExchangeSettingsOutputWithContext(ctx context.Context) ExchangeSettingsOutput

func (ExchangeSettingsOutput) ToExchangeSettingsPtrOutput

func (o ExchangeSettingsOutput) ToExchangeSettingsPtrOutput() ExchangeSettingsPtrOutput

func (ExchangeSettingsOutput) ToExchangeSettingsPtrOutputWithContext

func (o ExchangeSettingsOutput) ToExchangeSettingsPtrOutputWithContext(ctx context.Context) ExchangeSettingsPtrOutput

func (ExchangeSettingsOutput) Type

The type of exchange.

type ExchangeSettingsPtrInput

type ExchangeSettingsPtrInput interface {
	pulumi.Input

	ToExchangeSettingsPtrOutput() ExchangeSettingsPtrOutput
	ToExchangeSettingsPtrOutputWithContext(context.Context) ExchangeSettingsPtrOutput
}

ExchangeSettingsPtrInput is an input type that accepts ExchangeSettingsArgs, ExchangeSettingsPtr and ExchangeSettingsPtrOutput values. You can construct a concrete instance of `ExchangeSettingsPtrInput` via:

        ExchangeSettingsArgs{...}

or:

        nil

type ExchangeSettingsPtrOutput

type ExchangeSettingsPtrOutput struct{ *pulumi.OutputState }

func (ExchangeSettingsPtrOutput) Arguments

Additional key/value settings for the exchange.

func (ExchangeSettingsPtrOutput) AutoDelete

Whether the exchange will self-delete when all queues have finished using it.

func (ExchangeSettingsPtrOutput) Durable

Whether the exchange survives server restarts. Defaults to `false`.

func (ExchangeSettingsPtrOutput) Elem

func (ExchangeSettingsPtrOutput) ElementType

func (ExchangeSettingsPtrOutput) ElementType() reflect.Type

func (ExchangeSettingsPtrOutput) ToExchangeSettingsPtrOutput

func (o ExchangeSettingsPtrOutput) ToExchangeSettingsPtrOutput() ExchangeSettingsPtrOutput

func (ExchangeSettingsPtrOutput) ToExchangeSettingsPtrOutputWithContext

func (o ExchangeSettingsPtrOutput) ToExchangeSettingsPtrOutputWithContext(ctx context.Context) ExchangeSettingsPtrOutput

func (ExchangeSettingsPtrOutput) Type

The type of exchange.

type ExchangeState

type ExchangeState struct {
	// The name of the exchange.
	Name pulumi.StringPtrInput
	// The settings of the exchange. The structure is
	// described below.
	Settings ExchangeSettingsPtrInput
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrInput
}

func (ExchangeState) ElementType

func (ExchangeState) ElementType() reflect.Type

type FederationUpstream added in v2.2.0

type FederationUpstream struct {
	pulumi.CustomResourceState

	Component  pulumi.StringOutput                `pulumi:"component"`
	Definition FederationUpstreamDefinitionOutput `pulumi:"definition"`
	Name       pulumi.StringOutput                `pulumi:"name"`
	Vhost      pulumi.StringOutput                `pulumi:"vhost"`
}

func GetFederationUpstream added in v2.2.0

func GetFederationUpstream(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FederationUpstreamState, opts ...pulumi.ResourceOption) (*FederationUpstream, error)

GetFederationUpstream gets an existing FederationUpstream resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewFederationUpstream added in v2.2.0

func NewFederationUpstream(ctx *pulumi.Context,
	name string, args *FederationUpstreamArgs, opts ...pulumi.ResourceOption) (*FederationUpstream, error)

NewFederationUpstream registers a new resource with the given unique name, arguments, and options.

func (FederationUpstream) ElementType added in v2.4.1

func (FederationUpstream) ElementType() reflect.Type

func (FederationUpstream) ToFederationUpstreamOutput added in v2.4.1

func (i FederationUpstream) ToFederationUpstreamOutput() FederationUpstreamOutput

func (FederationUpstream) ToFederationUpstreamOutputWithContext added in v2.4.1

func (i FederationUpstream) ToFederationUpstreamOutputWithContext(ctx context.Context) FederationUpstreamOutput

type FederationUpstreamArgs added in v2.2.0

type FederationUpstreamArgs struct {
	Definition FederationUpstreamDefinitionInput
	Name       pulumi.StringPtrInput
	Vhost      pulumi.StringInput
}

The set of arguments for constructing a FederationUpstream resource.

func (FederationUpstreamArgs) ElementType added in v2.2.0

func (FederationUpstreamArgs) ElementType() reflect.Type

type FederationUpstreamDefinition added in v2.2.0

type FederationUpstreamDefinition struct {
	AckMode        *string `pulumi:"ackMode"`
	Exchange       *string `pulumi:"exchange"`
	Expires        *int    `pulumi:"expires"`
	MaxHops        *int    `pulumi:"maxHops"`
	MessageTtl     *int    `pulumi:"messageTtl"`
	PrefetchCount  *int    `pulumi:"prefetchCount"`
	Queue          *string `pulumi:"queue"`
	ReconnectDelay *int    `pulumi:"reconnectDelay"`
	TrustUserId    *bool   `pulumi:"trustUserId"`
	Uri            string  `pulumi:"uri"`
}

type FederationUpstreamDefinitionArgs added in v2.2.0

type FederationUpstreamDefinitionArgs struct {
	AckMode        pulumi.StringPtrInput `pulumi:"ackMode"`
	Exchange       pulumi.StringPtrInput `pulumi:"exchange"`
	Expires        pulumi.IntPtrInput    `pulumi:"expires"`
	MaxHops        pulumi.IntPtrInput    `pulumi:"maxHops"`
	MessageTtl     pulumi.IntPtrInput    `pulumi:"messageTtl"`
	PrefetchCount  pulumi.IntPtrInput    `pulumi:"prefetchCount"`
	Queue          pulumi.StringPtrInput `pulumi:"queue"`
	ReconnectDelay pulumi.IntPtrInput    `pulumi:"reconnectDelay"`
	TrustUserId    pulumi.BoolPtrInput   `pulumi:"trustUserId"`
	Uri            pulumi.StringInput    `pulumi:"uri"`
}

func (FederationUpstreamDefinitionArgs) ElementType added in v2.2.0

func (FederationUpstreamDefinitionArgs) ToFederationUpstreamDefinitionOutput added in v2.2.0

func (i FederationUpstreamDefinitionArgs) ToFederationUpstreamDefinitionOutput() FederationUpstreamDefinitionOutput

func (FederationUpstreamDefinitionArgs) ToFederationUpstreamDefinitionOutputWithContext added in v2.2.0

func (i FederationUpstreamDefinitionArgs) ToFederationUpstreamDefinitionOutputWithContext(ctx context.Context) FederationUpstreamDefinitionOutput

func (FederationUpstreamDefinitionArgs) ToFederationUpstreamDefinitionPtrOutput added in v2.2.0

func (i FederationUpstreamDefinitionArgs) ToFederationUpstreamDefinitionPtrOutput() FederationUpstreamDefinitionPtrOutput

func (FederationUpstreamDefinitionArgs) ToFederationUpstreamDefinitionPtrOutputWithContext added in v2.2.0

func (i FederationUpstreamDefinitionArgs) ToFederationUpstreamDefinitionPtrOutputWithContext(ctx context.Context) FederationUpstreamDefinitionPtrOutput

type FederationUpstreamDefinitionInput added in v2.2.0

type FederationUpstreamDefinitionInput interface {
	pulumi.Input

	ToFederationUpstreamDefinitionOutput() FederationUpstreamDefinitionOutput
	ToFederationUpstreamDefinitionOutputWithContext(context.Context) FederationUpstreamDefinitionOutput
}

FederationUpstreamDefinitionInput is an input type that accepts FederationUpstreamDefinitionArgs and FederationUpstreamDefinitionOutput values. You can construct a concrete instance of `FederationUpstreamDefinitionInput` via:

FederationUpstreamDefinitionArgs{...}

type FederationUpstreamDefinitionOutput added in v2.2.0

type FederationUpstreamDefinitionOutput struct{ *pulumi.OutputState }

func (FederationUpstreamDefinitionOutput) AckMode added in v2.2.0

func (FederationUpstreamDefinitionOutput) ElementType added in v2.2.0

func (FederationUpstreamDefinitionOutput) Exchange added in v2.2.0

func (FederationUpstreamDefinitionOutput) Expires added in v2.2.0

func (FederationUpstreamDefinitionOutput) MaxHops added in v2.2.0

func (FederationUpstreamDefinitionOutput) MessageTtl added in v2.2.0

func (FederationUpstreamDefinitionOutput) PrefetchCount added in v2.2.0

func (FederationUpstreamDefinitionOutput) Queue added in v2.2.0

func (FederationUpstreamDefinitionOutput) ReconnectDelay added in v2.2.0

func (FederationUpstreamDefinitionOutput) ToFederationUpstreamDefinitionOutput added in v2.2.0

func (o FederationUpstreamDefinitionOutput) ToFederationUpstreamDefinitionOutput() FederationUpstreamDefinitionOutput

func (FederationUpstreamDefinitionOutput) ToFederationUpstreamDefinitionOutputWithContext added in v2.2.0

func (o FederationUpstreamDefinitionOutput) ToFederationUpstreamDefinitionOutputWithContext(ctx context.Context) FederationUpstreamDefinitionOutput

func (FederationUpstreamDefinitionOutput) ToFederationUpstreamDefinitionPtrOutput added in v2.2.0

func (o FederationUpstreamDefinitionOutput) ToFederationUpstreamDefinitionPtrOutput() FederationUpstreamDefinitionPtrOutput

func (FederationUpstreamDefinitionOutput) ToFederationUpstreamDefinitionPtrOutputWithContext added in v2.2.0

func (o FederationUpstreamDefinitionOutput) ToFederationUpstreamDefinitionPtrOutputWithContext(ctx context.Context) FederationUpstreamDefinitionPtrOutput

func (FederationUpstreamDefinitionOutput) TrustUserId added in v2.2.0

func (FederationUpstreamDefinitionOutput) Uri added in v2.2.0

type FederationUpstreamDefinitionPtrInput added in v2.2.0

type FederationUpstreamDefinitionPtrInput interface {
	pulumi.Input

	ToFederationUpstreamDefinitionPtrOutput() FederationUpstreamDefinitionPtrOutput
	ToFederationUpstreamDefinitionPtrOutputWithContext(context.Context) FederationUpstreamDefinitionPtrOutput
}

FederationUpstreamDefinitionPtrInput is an input type that accepts FederationUpstreamDefinitionArgs, FederationUpstreamDefinitionPtr and FederationUpstreamDefinitionPtrOutput values. You can construct a concrete instance of `FederationUpstreamDefinitionPtrInput` via:

        FederationUpstreamDefinitionArgs{...}

or:

        nil

type FederationUpstreamDefinitionPtrOutput added in v2.2.0

type FederationUpstreamDefinitionPtrOutput struct{ *pulumi.OutputState }

func (FederationUpstreamDefinitionPtrOutput) AckMode added in v2.2.0

func (FederationUpstreamDefinitionPtrOutput) Elem added in v2.2.0

func (FederationUpstreamDefinitionPtrOutput) ElementType added in v2.2.0

func (FederationUpstreamDefinitionPtrOutput) Exchange added in v2.2.0

func (FederationUpstreamDefinitionPtrOutput) Expires added in v2.2.0

func (FederationUpstreamDefinitionPtrOutput) MaxHops added in v2.2.0

func (FederationUpstreamDefinitionPtrOutput) MessageTtl added in v2.2.0

func (FederationUpstreamDefinitionPtrOutput) PrefetchCount added in v2.2.0

func (FederationUpstreamDefinitionPtrOutput) Queue added in v2.2.0

func (FederationUpstreamDefinitionPtrOutput) ReconnectDelay added in v2.2.0

func (FederationUpstreamDefinitionPtrOutput) ToFederationUpstreamDefinitionPtrOutput added in v2.2.0

func (o FederationUpstreamDefinitionPtrOutput) ToFederationUpstreamDefinitionPtrOutput() FederationUpstreamDefinitionPtrOutput

func (FederationUpstreamDefinitionPtrOutput) ToFederationUpstreamDefinitionPtrOutputWithContext added in v2.2.0

func (o FederationUpstreamDefinitionPtrOutput) ToFederationUpstreamDefinitionPtrOutputWithContext(ctx context.Context) FederationUpstreamDefinitionPtrOutput

func (FederationUpstreamDefinitionPtrOutput) TrustUserId added in v2.2.0

func (FederationUpstreamDefinitionPtrOutput) Uri added in v2.2.0

type FederationUpstreamInput added in v2.4.1

type FederationUpstreamInput interface {
	pulumi.Input

	ToFederationUpstreamOutput() FederationUpstreamOutput
	ToFederationUpstreamOutputWithContext(ctx context.Context) FederationUpstreamOutput
}

type FederationUpstreamOutput added in v2.4.1

type FederationUpstreamOutput struct {
	*pulumi.OutputState
}

func (FederationUpstreamOutput) ElementType added in v2.4.1

func (FederationUpstreamOutput) ElementType() reflect.Type

func (FederationUpstreamOutput) ToFederationUpstreamOutput added in v2.4.1

func (o FederationUpstreamOutput) ToFederationUpstreamOutput() FederationUpstreamOutput

func (FederationUpstreamOutput) ToFederationUpstreamOutputWithContext added in v2.4.1

func (o FederationUpstreamOutput) ToFederationUpstreamOutputWithContext(ctx context.Context) FederationUpstreamOutput

type FederationUpstreamState added in v2.2.0

type FederationUpstreamState struct {
	Component  pulumi.StringPtrInput
	Definition FederationUpstreamDefinitionPtrInput
	Name       pulumi.StringPtrInput
	Vhost      pulumi.StringPtrInput
}

func (FederationUpstreamState) ElementType added in v2.2.0

func (FederationUpstreamState) ElementType() reflect.Type

type Permissions

type Permissions struct {
	pulumi.CustomResourceState

	// The settings of the permissions. The structure is
	// described below.
	Permissions PermissionsPermissionsOutput `pulumi:"permissions"`
	// The user to apply the permissions to.
	User pulumi.StringOutput `pulumi:"user"`
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrOutput `pulumi:"vhost"`
}

The “Permissions“ resource creates and manages a user's set of permissions.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-rabbitmq/sdk/v2/go/rabbitmq"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testVHost, err := rabbitmq.NewVHost(ctx, "testVHost", nil)
		if err != nil {
			return err
		}
		testUser, err := rabbitmq.NewUser(ctx, "testUser", &rabbitmq.UserArgs{
			Password: pulumi.String("foobar"),
			Tags: pulumi.StringArray{
				pulumi.String("administrator"),
			},
		})
		if err != nil {
			return err
		}
		_, err = rabbitmq.NewPermissions(ctx, "testPermissions", &rabbitmq.PermissionsArgs{
			Permissions: &rabbitmq.PermissionsPermissionsArgs{
				Configure: pulumi.String(".*"),
				Read:      pulumi.String(".*"),
				Write:     pulumi.String(".*"),
			},
			User:  testUser.Name,
			Vhost: testVHost.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Permissions can be imported using the `id` which is composed of

`user@vhost`. E.g.

```sh

$ pulumi import rabbitmq:index/permissions:Permissions test user@vhost

```

func GetPermissions

func GetPermissions(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PermissionsState, opts ...pulumi.ResourceOption) (*Permissions, error)

GetPermissions gets an existing Permissions resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewPermissions

func NewPermissions(ctx *pulumi.Context,
	name string, args *PermissionsArgs, opts ...pulumi.ResourceOption) (*Permissions, error)

NewPermissions registers a new resource with the given unique name, arguments, and options.

func (Permissions) ElementType added in v2.4.1

func (Permissions) ElementType() reflect.Type

func (Permissions) ToPermissionsOutput added in v2.4.1

func (i Permissions) ToPermissionsOutput() PermissionsOutput

func (Permissions) ToPermissionsOutputWithContext added in v2.4.1

func (i Permissions) ToPermissionsOutputWithContext(ctx context.Context) PermissionsOutput

type PermissionsArgs

type PermissionsArgs struct {
	// The settings of the permissions. The structure is
	// described below.
	Permissions PermissionsPermissionsInput
	// The user to apply the permissions to.
	User pulumi.StringInput
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrInput
}

The set of arguments for constructing a Permissions resource.

func (PermissionsArgs) ElementType

func (PermissionsArgs) ElementType() reflect.Type

type PermissionsInput added in v2.4.1

type PermissionsInput interface {
	pulumi.Input

	ToPermissionsOutput() PermissionsOutput
	ToPermissionsOutputWithContext(ctx context.Context) PermissionsOutput
}

type PermissionsOutput added in v2.4.1

type PermissionsOutput struct {
	*pulumi.OutputState
}

func (PermissionsOutput) ElementType added in v2.4.1

func (PermissionsOutput) ElementType() reflect.Type

func (PermissionsOutput) ToPermissionsOutput added in v2.4.1

func (o PermissionsOutput) ToPermissionsOutput() PermissionsOutput

func (PermissionsOutput) ToPermissionsOutputWithContext added in v2.4.1

func (o PermissionsOutput) ToPermissionsOutputWithContext(ctx context.Context) PermissionsOutput

type PermissionsPermissions

type PermissionsPermissions struct {
	// The "configure" ACL.
	Configure string `pulumi:"configure"`
	// The "read" ACL.
	Read string `pulumi:"read"`
	// The "write" ACL.
	Write string `pulumi:"write"`
}

type PermissionsPermissionsArgs

type PermissionsPermissionsArgs struct {
	// The "configure" ACL.
	Configure pulumi.StringInput `pulumi:"configure"`
	// The "read" ACL.
	Read pulumi.StringInput `pulumi:"read"`
	// The "write" ACL.
	Write pulumi.StringInput `pulumi:"write"`
}

func (PermissionsPermissionsArgs) ElementType

func (PermissionsPermissionsArgs) ElementType() reflect.Type

func (PermissionsPermissionsArgs) ToPermissionsPermissionsOutput

func (i PermissionsPermissionsArgs) ToPermissionsPermissionsOutput() PermissionsPermissionsOutput

func (PermissionsPermissionsArgs) ToPermissionsPermissionsOutputWithContext

func (i PermissionsPermissionsArgs) ToPermissionsPermissionsOutputWithContext(ctx context.Context) PermissionsPermissionsOutput

func (PermissionsPermissionsArgs) ToPermissionsPermissionsPtrOutput

func (i PermissionsPermissionsArgs) ToPermissionsPermissionsPtrOutput() PermissionsPermissionsPtrOutput

func (PermissionsPermissionsArgs) ToPermissionsPermissionsPtrOutputWithContext

func (i PermissionsPermissionsArgs) ToPermissionsPermissionsPtrOutputWithContext(ctx context.Context) PermissionsPermissionsPtrOutput

type PermissionsPermissionsInput

type PermissionsPermissionsInput interface {
	pulumi.Input

	ToPermissionsPermissionsOutput() PermissionsPermissionsOutput
	ToPermissionsPermissionsOutputWithContext(context.Context) PermissionsPermissionsOutput
}

PermissionsPermissionsInput is an input type that accepts PermissionsPermissionsArgs and PermissionsPermissionsOutput values. You can construct a concrete instance of `PermissionsPermissionsInput` via:

PermissionsPermissionsArgs{...}

type PermissionsPermissionsOutput

type PermissionsPermissionsOutput struct{ *pulumi.OutputState }

func (PermissionsPermissionsOutput) Configure

The "configure" ACL.

func (PermissionsPermissionsOutput) ElementType

func (PermissionsPermissionsOutput) Read

The "read" ACL.

func (PermissionsPermissionsOutput) ToPermissionsPermissionsOutput

func (o PermissionsPermissionsOutput) ToPermissionsPermissionsOutput() PermissionsPermissionsOutput

func (PermissionsPermissionsOutput) ToPermissionsPermissionsOutputWithContext

func (o PermissionsPermissionsOutput) ToPermissionsPermissionsOutputWithContext(ctx context.Context) PermissionsPermissionsOutput

func (PermissionsPermissionsOutput) ToPermissionsPermissionsPtrOutput

func (o PermissionsPermissionsOutput) ToPermissionsPermissionsPtrOutput() PermissionsPermissionsPtrOutput

func (PermissionsPermissionsOutput) ToPermissionsPermissionsPtrOutputWithContext

func (o PermissionsPermissionsOutput) ToPermissionsPermissionsPtrOutputWithContext(ctx context.Context) PermissionsPermissionsPtrOutput

func (PermissionsPermissionsOutput) Write

The "write" ACL.

type PermissionsPermissionsPtrInput

type PermissionsPermissionsPtrInput interface {
	pulumi.Input

	ToPermissionsPermissionsPtrOutput() PermissionsPermissionsPtrOutput
	ToPermissionsPermissionsPtrOutputWithContext(context.Context) PermissionsPermissionsPtrOutput
}

PermissionsPermissionsPtrInput is an input type that accepts PermissionsPermissionsArgs, PermissionsPermissionsPtr and PermissionsPermissionsPtrOutput values. You can construct a concrete instance of `PermissionsPermissionsPtrInput` via:

        PermissionsPermissionsArgs{...}

or:

        nil

type PermissionsPermissionsPtrOutput

type PermissionsPermissionsPtrOutput struct{ *pulumi.OutputState }

func (PermissionsPermissionsPtrOutput) Configure

The "configure" ACL.

func (PermissionsPermissionsPtrOutput) Elem

func (PermissionsPermissionsPtrOutput) ElementType

func (PermissionsPermissionsPtrOutput) Read

The "read" ACL.

func (PermissionsPermissionsPtrOutput) ToPermissionsPermissionsPtrOutput

func (o PermissionsPermissionsPtrOutput) ToPermissionsPermissionsPtrOutput() PermissionsPermissionsPtrOutput

func (PermissionsPermissionsPtrOutput) ToPermissionsPermissionsPtrOutputWithContext

func (o PermissionsPermissionsPtrOutput) ToPermissionsPermissionsPtrOutputWithContext(ctx context.Context) PermissionsPermissionsPtrOutput

func (PermissionsPermissionsPtrOutput) Write

The "write" ACL.

type PermissionsState

type PermissionsState struct {
	// The settings of the permissions. The structure is
	// described below.
	Permissions PermissionsPermissionsPtrInput
	// The user to apply the permissions to.
	User pulumi.StringPtrInput
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrInput
}

func (PermissionsState) ElementType

func (PermissionsState) ElementType() reflect.Type

type Policy

type Policy struct {
	pulumi.CustomResourceState

	// The name of the policy.
	Name pulumi.StringOutput `pulumi:"name"`
	// The settings of the policy. The structure is
	// described below.
	Policy PolicyPolicyOutput `pulumi:"policy"`
	// The vhost to create the resource in.
	Vhost pulumi.StringOutput `pulumi:"vhost"`
}

The “Policy“ resource creates and manages policies for exchanges and queues.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-rabbitmq/sdk/v2/go/rabbitmq"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testVHost, err := rabbitmq.NewVHost(ctx, "testVHost", nil)
		if err != nil {
			return err
		}
		guest, err := rabbitmq.NewPermissions(ctx, "guest", &rabbitmq.PermissionsArgs{
			Permissions: &rabbitmq.PermissionsPermissionsArgs{
				Configure: pulumi.String(".*"),
				Read:      pulumi.String(".*"),
				Write:     pulumi.String(".*"),
			},
			User:  pulumi.String("guest"),
			Vhost: testVHost.Name,
		})
		if err != nil {
			return err
		}
		_, err = rabbitmq.NewPolicy(ctx, "testPolicy", &rabbitmq.PolicyArgs{
			Policy: &rabbitmq.PolicyPolicyArgs{
				ApplyTo: pulumi.String("all"),
				Definition: pulumi.StringMap{
					"ha-mode": pulumi.String("all"),
				},
				Pattern:  pulumi.String(".*"),
				Priority: pulumi.Int(0),
			},
			Vhost: guest.Vhost,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Policies can be imported using the `id` which is composed of `name@vhost`. E.g.

```sh

$ pulumi import rabbitmq:index/policy:Policy test name@vhost

```

func GetPolicy

func GetPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PolicyState, opts ...pulumi.ResourceOption) (*Policy, error)

GetPolicy gets an existing Policy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewPolicy

func NewPolicy(ctx *pulumi.Context,
	name string, args *PolicyArgs, opts ...pulumi.ResourceOption) (*Policy, error)

NewPolicy registers a new resource with the given unique name, arguments, and options.

func (Policy) ElementType added in v2.4.1

func (Policy) ElementType() reflect.Type

func (Policy) ToPolicyOutput added in v2.4.1

func (i Policy) ToPolicyOutput() PolicyOutput

func (Policy) ToPolicyOutputWithContext added in v2.4.1

func (i Policy) ToPolicyOutputWithContext(ctx context.Context) PolicyOutput

type PolicyArgs

type PolicyArgs struct {
	// The name of the policy.
	Name pulumi.StringPtrInput
	// The settings of the policy. The structure is
	// described below.
	Policy PolicyPolicyInput
	// The vhost to create the resource in.
	Vhost pulumi.StringInput
}

The set of arguments for constructing a Policy resource.

func (PolicyArgs) ElementType

func (PolicyArgs) ElementType() reflect.Type

type PolicyInput added in v2.4.1

type PolicyInput interface {
	pulumi.Input

	ToPolicyOutput() PolicyOutput
	ToPolicyOutputWithContext(ctx context.Context) PolicyOutput
}

type PolicyOutput added in v2.4.1

type PolicyOutput struct {
	*pulumi.OutputState
}

func (PolicyOutput) ElementType added in v2.4.1

func (PolicyOutput) ElementType() reflect.Type

func (PolicyOutput) ToPolicyOutput added in v2.4.1

func (o PolicyOutput) ToPolicyOutput() PolicyOutput

func (PolicyOutput) ToPolicyOutputWithContext added in v2.4.1

func (o PolicyOutput) ToPolicyOutputWithContext(ctx context.Context) PolicyOutput

type PolicyPolicy

type PolicyPolicy struct {
	// Can either be "exchanges", "queues", or "all".
	ApplyTo string `pulumi:"applyTo"`
	// Key/value pairs of the policy definition. See the
	// RabbitMQ documentation for definition references and examples.
	Definition map[string]interface{} `pulumi:"definition"`
	// A pattern to match an exchange or queue name.
	Pattern string `pulumi:"pattern"`
	// The policy with the greater priority is applied first.
	Priority int `pulumi:"priority"`
}

type PolicyPolicyArgs

type PolicyPolicyArgs struct {
	// Can either be "exchanges", "queues", or "all".
	ApplyTo pulumi.StringInput `pulumi:"applyTo"`
	// Key/value pairs of the policy definition. See the
	// RabbitMQ documentation for definition references and examples.
	Definition pulumi.MapInput `pulumi:"definition"`
	// A pattern to match an exchange or queue name.
	Pattern pulumi.StringInput `pulumi:"pattern"`
	// The policy with the greater priority is applied first.
	Priority pulumi.IntInput `pulumi:"priority"`
}

func (PolicyPolicyArgs) ElementType

func (PolicyPolicyArgs) ElementType() reflect.Type

func (PolicyPolicyArgs) ToPolicyPolicyOutput

func (i PolicyPolicyArgs) ToPolicyPolicyOutput() PolicyPolicyOutput

func (PolicyPolicyArgs) ToPolicyPolicyOutputWithContext

func (i PolicyPolicyArgs) ToPolicyPolicyOutputWithContext(ctx context.Context) PolicyPolicyOutput

func (PolicyPolicyArgs) ToPolicyPolicyPtrOutput

func (i PolicyPolicyArgs) ToPolicyPolicyPtrOutput() PolicyPolicyPtrOutput

func (PolicyPolicyArgs) ToPolicyPolicyPtrOutputWithContext

func (i PolicyPolicyArgs) ToPolicyPolicyPtrOutputWithContext(ctx context.Context) PolicyPolicyPtrOutput

type PolicyPolicyInput

type PolicyPolicyInput interface {
	pulumi.Input

	ToPolicyPolicyOutput() PolicyPolicyOutput
	ToPolicyPolicyOutputWithContext(context.Context) PolicyPolicyOutput
}

PolicyPolicyInput is an input type that accepts PolicyPolicyArgs and PolicyPolicyOutput values. You can construct a concrete instance of `PolicyPolicyInput` via:

PolicyPolicyArgs{...}

type PolicyPolicyOutput

type PolicyPolicyOutput struct{ *pulumi.OutputState }

func (PolicyPolicyOutput) ApplyTo

Can either be "exchanges", "queues", or "all".

func (PolicyPolicyOutput) Definition

func (o PolicyPolicyOutput) Definition() pulumi.MapOutput

Key/value pairs of the policy definition. See the RabbitMQ documentation for definition references and examples.

func (PolicyPolicyOutput) ElementType

func (PolicyPolicyOutput) ElementType() reflect.Type

func (PolicyPolicyOutput) Pattern

A pattern to match an exchange or queue name.

func (PolicyPolicyOutput) Priority

func (o PolicyPolicyOutput) Priority() pulumi.IntOutput

The policy with the greater priority is applied first.

func (PolicyPolicyOutput) ToPolicyPolicyOutput

func (o PolicyPolicyOutput) ToPolicyPolicyOutput() PolicyPolicyOutput

func (PolicyPolicyOutput) ToPolicyPolicyOutputWithContext

func (o PolicyPolicyOutput) ToPolicyPolicyOutputWithContext(ctx context.Context) PolicyPolicyOutput

func (PolicyPolicyOutput) ToPolicyPolicyPtrOutput

func (o PolicyPolicyOutput) ToPolicyPolicyPtrOutput() PolicyPolicyPtrOutput

func (PolicyPolicyOutput) ToPolicyPolicyPtrOutputWithContext

func (o PolicyPolicyOutput) ToPolicyPolicyPtrOutputWithContext(ctx context.Context) PolicyPolicyPtrOutput

type PolicyPolicyPtrInput

type PolicyPolicyPtrInput interface {
	pulumi.Input

	ToPolicyPolicyPtrOutput() PolicyPolicyPtrOutput
	ToPolicyPolicyPtrOutputWithContext(context.Context) PolicyPolicyPtrOutput
}

PolicyPolicyPtrInput is an input type that accepts PolicyPolicyArgs, PolicyPolicyPtr and PolicyPolicyPtrOutput values. You can construct a concrete instance of `PolicyPolicyPtrInput` via:

        PolicyPolicyArgs{...}

or:

        nil

type PolicyPolicyPtrOutput

type PolicyPolicyPtrOutput struct{ *pulumi.OutputState }

func (PolicyPolicyPtrOutput) ApplyTo

Can either be "exchanges", "queues", or "all".

func (PolicyPolicyPtrOutput) Definition

func (o PolicyPolicyPtrOutput) Definition() pulumi.MapOutput

Key/value pairs of the policy definition. See the RabbitMQ documentation for definition references and examples.

func (PolicyPolicyPtrOutput) Elem

func (PolicyPolicyPtrOutput) ElementType

func (PolicyPolicyPtrOutput) ElementType() reflect.Type

func (PolicyPolicyPtrOutput) Pattern

A pattern to match an exchange or queue name.

func (PolicyPolicyPtrOutput) Priority

The policy with the greater priority is applied first.

func (PolicyPolicyPtrOutput) ToPolicyPolicyPtrOutput

func (o PolicyPolicyPtrOutput) ToPolicyPolicyPtrOutput() PolicyPolicyPtrOutput

func (PolicyPolicyPtrOutput) ToPolicyPolicyPtrOutputWithContext

func (o PolicyPolicyPtrOutput) ToPolicyPolicyPtrOutputWithContext(ctx context.Context) PolicyPolicyPtrOutput

type PolicyState

type PolicyState struct {
	// The name of the policy.
	Name pulumi.StringPtrInput
	// The settings of the policy. The structure is
	// described below.
	Policy PolicyPolicyPtrInput
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrInput
}

func (PolicyState) ElementType

func (PolicyState) ElementType() reflect.Type

type Provider

type Provider struct {
	pulumi.ProviderResourceState
}

The provider type for the rabbitmq package. By default, resources use package-wide configuration settings, however an explicit `Provider` instance may be created and passed during resource construction to achieve fine-grained programmatic control over provider settings. See the [documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.

func NewProvider

func NewProvider(ctx *pulumi.Context,
	name string, args *ProviderArgs, opts ...pulumi.ResourceOption) (*Provider, error)

NewProvider registers a new resource with the given unique name, arguments, and options.

func (Provider) ElementType added in v2.4.1

func (Provider) ElementType() reflect.Type

func (Provider) ToProviderOutput added in v2.4.1

func (i Provider) ToProviderOutput() ProviderOutput

func (Provider) ToProviderOutputWithContext added in v2.4.1

func (i Provider) ToProviderOutputWithContext(ctx context.Context) ProviderOutput

type ProviderArgs

type ProviderArgs struct {
	CacertFile     pulumi.StringPtrInput
	ClientcertFile pulumi.StringPtrInput
	ClientkeyFile  pulumi.StringPtrInput
	Endpoint       pulumi.StringPtrInput
	Insecure       pulumi.BoolPtrInput
	Password       pulumi.StringPtrInput
	Username       pulumi.StringPtrInput
}

The set of arguments for constructing a Provider resource.

func (ProviderArgs) ElementType

func (ProviderArgs) ElementType() reflect.Type

type ProviderInput added in v2.4.1

type ProviderInput interface {
	pulumi.Input

	ToProviderOutput() ProviderOutput
	ToProviderOutputWithContext(ctx context.Context) ProviderOutput
}

type ProviderOutput added in v2.4.1

type ProviderOutput struct {
	*pulumi.OutputState
}

func (ProviderOutput) ElementType added in v2.4.1

func (ProviderOutput) ElementType() reflect.Type

func (ProviderOutput) ToProviderOutput added in v2.4.1

func (o ProviderOutput) ToProviderOutput() ProviderOutput

func (ProviderOutput) ToProviderOutputWithContext added in v2.4.1

func (o ProviderOutput) ToProviderOutputWithContext(ctx context.Context) ProviderOutput

type Queue

type Queue struct {
	pulumi.CustomResourceState

	// The name of the queue.
	Name pulumi.StringOutput `pulumi:"name"`
	// The settings of the queue. The structure is
	// described below.
	Settings QueueSettingsOutput `pulumi:"settings"`
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrOutput `pulumi:"vhost"`
}

The “Queue“ resource creates and manages a queue.

## Example Usage ### Basic Example

```go package main

import (

"github.com/pulumi/pulumi-rabbitmq/sdk/v2/go/rabbitmq"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testVHost, err := rabbitmq.NewVHost(ctx, "testVHost", nil)
		if err != nil {
			return err
		}
		guest, err := rabbitmq.NewPermissions(ctx, "guest", &rabbitmq.PermissionsArgs{
			Permissions: &rabbitmq.PermissionsPermissionsArgs{
				Configure: pulumi.String(".*"),
				Read:      pulumi.String(".*"),
				Write:     pulumi.String(".*"),
			},
			User:  pulumi.String("guest"),
			Vhost: testVHost.Name,
		})
		if err != nil {
			return err
		}
		_, err = rabbitmq.NewQueue(ctx, "testQueue", &rabbitmq.QueueArgs{
			Settings: &rabbitmq.QueueSettingsArgs{
				AutoDelete: pulumi.Bool(true),
				Durable:    pulumi.Bool(false),
			},
			Vhost: guest.Vhost,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Example With JSON Arguments

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-rabbitmq/sdk/v2/go/rabbitmq"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		arguments := fmt.Sprintf("%v%v%v%v", "{\n", "  \"x-message-ttl\": 5000\n", "}\n", "\n")
		if param := cfg.Get("arguments"); param != "" {
			arguments = param
		}
		testVHost, err := rabbitmq.NewVHost(ctx, "testVHost", nil)
		if err != nil {
			return err
		}
		guest, err := rabbitmq.NewPermissions(ctx, "guest", &rabbitmq.PermissionsArgs{
			Permissions: &rabbitmq.PermissionsPermissionsArgs{
				Configure: pulumi.String(".*"),
				Read:      pulumi.String(".*"),
				Write:     pulumi.String(".*"),
			},
			User:  pulumi.String("guest"),
			Vhost: testVHost.Name,
		})
		if err != nil {
			return err
		}
		_, err = rabbitmq.NewQueue(ctx, "testQueue", &rabbitmq.QueueArgs{
			Settings: &rabbitmq.QueueSettingsArgs{
				ArgumentsJson: pulumi.String(arguments),
				AutoDelete:    pulumi.Bool(true),
				Durable:       pulumi.Bool(false),
			},
			Vhost: guest.Vhost,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Queues can be imported using the `id` which is composed of `name@vhost`. E.g.

```sh

$ pulumi import rabbitmq:index/queue:Queue test name@vhost

```

func GetQueue

func GetQueue(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *QueueState, opts ...pulumi.ResourceOption) (*Queue, error)

GetQueue gets an existing Queue resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewQueue

func NewQueue(ctx *pulumi.Context,
	name string, args *QueueArgs, opts ...pulumi.ResourceOption) (*Queue, error)

NewQueue registers a new resource with the given unique name, arguments, and options.

func (Queue) ElementType added in v2.4.1

func (Queue) ElementType() reflect.Type

func (Queue) ToQueueOutput added in v2.4.1

func (i Queue) ToQueueOutput() QueueOutput

func (Queue) ToQueueOutputWithContext added in v2.4.1

func (i Queue) ToQueueOutputWithContext(ctx context.Context) QueueOutput

type QueueArgs

type QueueArgs struct {
	// The name of the queue.
	Name pulumi.StringPtrInput
	// The settings of the queue. The structure is
	// described below.
	Settings QueueSettingsInput
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrInput
}

The set of arguments for constructing a Queue resource.

func (QueueArgs) ElementType

func (QueueArgs) ElementType() reflect.Type

type QueueInput added in v2.4.1

type QueueInput interface {
	pulumi.Input

	ToQueueOutput() QueueOutput
	ToQueueOutputWithContext(ctx context.Context) QueueOutput
}

type QueueOutput added in v2.4.1

type QueueOutput struct {
	*pulumi.OutputState
}

func (QueueOutput) ElementType added in v2.4.1

func (QueueOutput) ElementType() reflect.Type

func (QueueOutput) ToQueueOutput added in v2.4.1

func (o QueueOutput) ToQueueOutput() QueueOutput

func (QueueOutput) ToQueueOutputWithContext added in v2.4.1

func (o QueueOutput) ToQueueOutputWithContext(ctx context.Context) QueueOutput

type QueueSettings

type QueueSettings struct {
	// Additional key/value settings for the queue.
	// All values will be sent to RabbitMQ as a string. If you require non-string
	// values, use `argumentsJson`.
	Arguments map[string]interface{} `pulumi:"arguments"`
	// A nested JSON string which contains additional
	// settings for the queue. This is useful for when the arguments contain
	// non-string values.
	ArgumentsJson *string `pulumi:"argumentsJson"`
	// Whether the queue will self-delete when all
	// consumers have unsubscribed.
	AutoDelete *bool `pulumi:"autoDelete"`
	// Whether the queue survives server restarts.
	// Defaults to `false`.
	Durable *bool `pulumi:"durable"`
}

type QueueSettingsArgs

type QueueSettingsArgs struct {
	// Additional key/value settings for the queue.
	// All values will be sent to RabbitMQ as a string. If you require non-string
	// values, use `argumentsJson`.
	Arguments pulumi.MapInput `pulumi:"arguments"`
	// A nested JSON string which contains additional
	// settings for the queue. This is useful for when the arguments contain
	// non-string values.
	ArgumentsJson pulumi.StringPtrInput `pulumi:"argumentsJson"`
	// Whether the queue will self-delete when all
	// consumers have unsubscribed.
	AutoDelete pulumi.BoolPtrInput `pulumi:"autoDelete"`
	// Whether the queue survives server restarts.
	// Defaults to `false`.
	Durable pulumi.BoolPtrInput `pulumi:"durable"`
}

func (QueueSettingsArgs) ElementType

func (QueueSettingsArgs) ElementType() reflect.Type

func (QueueSettingsArgs) ToQueueSettingsOutput

func (i QueueSettingsArgs) ToQueueSettingsOutput() QueueSettingsOutput

func (QueueSettingsArgs) ToQueueSettingsOutputWithContext

func (i QueueSettingsArgs) ToQueueSettingsOutputWithContext(ctx context.Context) QueueSettingsOutput

func (QueueSettingsArgs) ToQueueSettingsPtrOutput

func (i QueueSettingsArgs) ToQueueSettingsPtrOutput() QueueSettingsPtrOutput

func (QueueSettingsArgs) ToQueueSettingsPtrOutputWithContext

func (i QueueSettingsArgs) ToQueueSettingsPtrOutputWithContext(ctx context.Context) QueueSettingsPtrOutput

type QueueSettingsInput

type QueueSettingsInput interface {
	pulumi.Input

	ToQueueSettingsOutput() QueueSettingsOutput
	ToQueueSettingsOutputWithContext(context.Context) QueueSettingsOutput
}

QueueSettingsInput is an input type that accepts QueueSettingsArgs and QueueSettingsOutput values. You can construct a concrete instance of `QueueSettingsInput` via:

QueueSettingsArgs{...}

type QueueSettingsOutput

type QueueSettingsOutput struct{ *pulumi.OutputState }

func (QueueSettingsOutput) Arguments

func (o QueueSettingsOutput) Arguments() pulumi.MapOutput

Additional key/value settings for the queue. All values will be sent to RabbitMQ as a string. If you require non-string values, use `argumentsJson`.

func (QueueSettingsOutput) ArgumentsJson

func (o QueueSettingsOutput) ArgumentsJson() pulumi.StringPtrOutput

A nested JSON string which contains additional settings for the queue. This is useful for when the arguments contain non-string values.

func (QueueSettingsOutput) AutoDelete

func (o QueueSettingsOutput) AutoDelete() pulumi.BoolPtrOutput

Whether the queue will self-delete when all consumers have unsubscribed.

func (QueueSettingsOutput) Durable

Whether the queue survives server restarts. Defaults to `false`.

func (QueueSettingsOutput) ElementType

func (QueueSettingsOutput) ElementType() reflect.Type

func (QueueSettingsOutput) ToQueueSettingsOutput

func (o QueueSettingsOutput) ToQueueSettingsOutput() QueueSettingsOutput

func (QueueSettingsOutput) ToQueueSettingsOutputWithContext

func (o QueueSettingsOutput) ToQueueSettingsOutputWithContext(ctx context.Context) QueueSettingsOutput

func (QueueSettingsOutput) ToQueueSettingsPtrOutput

func (o QueueSettingsOutput) ToQueueSettingsPtrOutput() QueueSettingsPtrOutput

func (QueueSettingsOutput) ToQueueSettingsPtrOutputWithContext

func (o QueueSettingsOutput) ToQueueSettingsPtrOutputWithContext(ctx context.Context) QueueSettingsPtrOutput

type QueueSettingsPtrInput

type QueueSettingsPtrInput interface {
	pulumi.Input

	ToQueueSettingsPtrOutput() QueueSettingsPtrOutput
	ToQueueSettingsPtrOutputWithContext(context.Context) QueueSettingsPtrOutput
}

QueueSettingsPtrInput is an input type that accepts QueueSettingsArgs, QueueSettingsPtr and QueueSettingsPtrOutput values. You can construct a concrete instance of `QueueSettingsPtrInput` via:

        QueueSettingsArgs{...}

or:

        nil

type QueueSettingsPtrOutput

type QueueSettingsPtrOutput struct{ *pulumi.OutputState }

func (QueueSettingsPtrOutput) Arguments

func (o QueueSettingsPtrOutput) Arguments() pulumi.MapOutput

Additional key/value settings for the queue. All values will be sent to RabbitMQ as a string. If you require non-string values, use `argumentsJson`.

func (QueueSettingsPtrOutput) ArgumentsJson

func (o QueueSettingsPtrOutput) ArgumentsJson() pulumi.StringPtrOutput

A nested JSON string which contains additional settings for the queue. This is useful for when the arguments contain non-string values.

func (QueueSettingsPtrOutput) AutoDelete

Whether the queue will self-delete when all consumers have unsubscribed.

func (QueueSettingsPtrOutput) Durable

Whether the queue survives server restarts. Defaults to `false`.

func (QueueSettingsPtrOutput) Elem

func (QueueSettingsPtrOutput) ElementType

func (QueueSettingsPtrOutput) ElementType() reflect.Type

func (QueueSettingsPtrOutput) ToQueueSettingsPtrOutput

func (o QueueSettingsPtrOutput) ToQueueSettingsPtrOutput() QueueSettingsPtrOutput

func (QueueSettingsPtrOutput) ToQueueSettingsPtrOutputWithContext

func (o QueueSettingsPtrOutput) ToQueueSettingsPtrOutputWithContext(ctx context.Context) QueueSettingsPtrOutput

type QueueState

type QueueState struct {
	// The name of the queue.
	Name pulumi.StringPtrInput
	// The settings of the queue. The structure is
	// described below.
	Settings QueueSettingsPtrInput
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrInput
}

func (QueueState) ElementType

func (QueueState) ElementType() reflect.Type

type Shovel added in v2.2.0

type Shovel struct {
	pulumi.CustomResourceState

	// The settings of the shovel. The structure is
	// described below.
	Info ShovelInfoOutput `pulumi:"info"`
	// The shovel name.
	Name pulumi.StringOutput `pulumi:"name"`
	// The vhost to create the resource in.
	Vhost pulumi.StringOutput `pulumi:"vhost"`
}

The “Shovel“ resource creates and manages a shovel.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-rabbitmq/sdk/v2/go/rabbitmq"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testVHost, err := rabbitmq.NewVHost(ctx, "testVHost", nil)
		if err != nil {
			return err
		}
		testExchange, err := rabbitmq.NewExchange(ctx, "testExchange", &rabbitmq.ExchangeArgs{
			Settings: &rabbitmq.ExchangeSettingsArgs{
				AutoDelete: pulumi.Bool(true),
				Durable:    pulumi.Bool(false),
				Type:       pulumi.String("fanout"),
			},
			Vhost: testVHost.Name,
		})
		if err != nil {
			return err
		}
		testQueue, err := rabbitmq.NewQueue(ctx, "testQueue", &rabbitmq.QueueArgs{
			Settings: &rabbitmq.QueueSettingsArgs{
				AutoDelete: pulumi.Bool(true),
				Durable:    pulumi.Bool(false),
			},
			Vhost: testVHost.Name,
		})
		if err != nil {
			return err
		}
		_, err = rabbitmq.NewShovel(ctx, "shovelTest", &rabbitmq.ShovelArgs{
			Info: &rabbitmq.ShovelInfoArgs{
				DestinationQueue:  testQueue.Name,
				DestinationUri:    pulumi.String("amqp:///test"),
				SourceExchange:    testExchange.Name,
				SourceExchangeKey: pulumi.String("test"),
				SourceUri:         pulumi.String("amqp:///test"),
			},
			Vhost: testVHost.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Shovels can be imported using the `name` and `vhost` E.g.

```sh

$ pulumi import rabbitmq:index/shovel:Shovel test shovelTest@test

```

func GetShovel added in v2.2.0

func GetShovel(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ShovelState, opts ...pulumi.ResourceOption) (*Shovel, error)

GetShovel gets an existing Shovel resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewShovel added in v2.2.0

func NewShovel(ctx *pulumi.Context,
	name string, args *ShovelArgs, opts ...pulumi.ResourceOption) (*Shovel, error)

NewShovel registers a new resource with the given unique name, arguments, and options.

func (Shovel) ElementType added in v2.4.1

func (Shovel) ElementType() reflect.Type

func (Shovel) ToShovelOutput added in v2.4.1

func (i Shovel) ToShovelOutput() ShovelOutput

func (Shovel) ToShovelOutputWithContext added in v2.4.1

func (i Shovel) ToShovelOutputWithContext(ctx context.Context) ShovelOutput

type ShovelArgs added in v2.2.0

type ShovelArgs struct {
	// The settings of the shovel. The structure is
	// described below.
	Info ShovelInfoInput
	// The shovel name.
	Name pulumi.StringPtrInput
	// The vhost to create the resource in.
	Vhost pulumi.StringInput
}

The set of arguments for constructing a Shovel resource.

func (ShovelArgs) ElementType added in v2.2.0

func (ShovelArgs) ElementType() reflect.Type

type ShovelInfo added in v2.2.0

type ShovelInfo struct {
	// Determines how the shovel should acknowledge messages.
	// Defaults to `on-confirm`.
	AckMode *string `pulumi:"ackMode"`
	// Whether to amqp shovel headers.
	// Defaults to `false`.
	AddForwardHeaders *bool `pulumi:"addForwardHeaders"`
	// Determines when (if ever) the shovel should delete itself .
	// Defaults to `never`.
	DeleteAfter *string `pulumi:"deleteAfter"`
	// The exchange to which messages should be published.
	// Either this or destinationQueue must be specified but not both.
	DestinationExchange *string `pulumi:"destinationExchange"`
	// The routing key when using destination_exchange.
	DestinationExchangeKey *string `pulumi:"destinationExchangeKey"`
	// The queue to which messages should be published.
	// Either this or destinationExchange must be specified but not both.
	DestinationQueue *string `pulumi:"destinationQueue"`
	// The amqp uri for the destination .
	DestinationUri string `pulumi:"destinationUri"`
	// The maximum number of unacknowledged messages copied over a shovel at any one time.
	// Defaults to `1000`.
	PrefetchCount *int `pulumi:"prefetchCount"`
	// The duration in seconds to reconnect to a broker after disconnected.
	// Defaults to `1`.
	ReconnectDelay *int `pulumi:"reconnectDelay"`
	// The exchange from which to consume.
	// Either this or sourceQueue must be specified but not both.
	SourceExchange *string `pulumi:"sourceExchange"`
	// The routing key when using source_exchange.
	SourceExchangeKey *string `pulumi:"sourceExchangeKey"`
	// The queue from which to consume.
	// Either this or sourceExchange must be specified but not both.
	SourceQueue *string `pulumi:"sourceQueue"`
	// The amqp uri for the source.
	SourceUri string `pulumi:"sourceUri"`
}

type ShovelInfoArgs added in v2.2.0

type ShovelInfoArgs struct {
	// Determines how the shovel should acknowledge messages.
	// Defaults to `on-confirm`.
	AckMode pulumi.StringPtrInput `pulumi:"ackMode"`
	// Whether to amqp shovel headers.
	// Defaults to `false`.
	AddForwardHeaders pulumi.BoolPtrInput `pulumi:"addForwardHeaders"`
	// Determines when (if ever) the shovel should delete itself .
	// Defaults to `never`.
	DeleteAfter pulumi.StringPtrInput `pulumi:"deleteAfter"`
	// The exchange to which messages should be published.
	// Either this or destinationQueue must be specified but not both.
	DestinationExchange pulumi.StringPtrInput `pulumi:"destinationExchange"`
	// The routing key when using destination_exchange.
	DestinationExchangeKey pulumi.StringPtrInput `pulumi:"destinationExchangeKey"`
	// The queue to which messages should be published.
	// Either this or destinationExchange must be specified but not both.
	DestinationQueue pulumi.StringPtrInput `pulumi:"destinationQueue"`
	// The amqp uri for the destination .
	DestinationUri pulumi.StringInput `pulumi:"destinationUri"`
	// The maximum number of unacknowledged messages copied over a shovel at any one time.
	// Defaults to `1000`.
	PrefetchCount pulumi.IntPtrInput `pulumi:"prefetchCount"`
	// The duration in seconds to reconnect to a broker after disconnected.
	// Defaults to `1`.
	ReconnectDelay pulumi.IntPtrInput `pulumi:"reconnectDelay"`
	// The exchange from which to consume.
	// Either this or sourceQueue must be specified but not both.
	SourceExchange pulumi.StringPtrInput `pulumi:"sourceExchange"`
	// The routing key when using source_exchange.
	SourceExchangeKey pulumi.StringPtrInput `pulumi:"sourceExchangeKey"`
	// The queue from which to consume.
	// Either this or sourceExchange must be specified but not both.
	SourceQueue pulumi.StringPtrInput `pulumi:"sourceQueue"`
	// The amqp uri for the source.
	SourceUri pulumi.StringInput `pulumi:"sourceUri"`
}

func (ShovelInfoArgs) ElementType added in v2.2.0

func (ShovelInfoArgs) ElementType() reflect.Type

func (ShovelInfoArgs) ToShovelInfoOutput added in v2.2.0

func (i ShovelInfoArgs) ToShovelInfoOutput() ShovelInfoOutput

func (ShovelInfoArgs) ToShovelInfoOutputWithContext added in v2.2.0

func (i ShovelInfoArgs) ToShovelInfoOutputWithContext(ctx context.Context) ShovelInfoOutput

func (ShovelInfoArgs) ToShovelInfoPtrOutput added in v2.2.0

func (i ShovelInfoArgs) ToShovelInfoPtrOutput() ShovelInfoPtrOutput

func (ShovelInfoArgs) ToShovelInfoPtrOutputWithContext added in v2.2.0

func (i ShovelInfoArgs) ToShovelInfoPtrOutputWithContext(ctx context.Context) ShovelInfoPtrOutput

type ShovelInfoInput added in v2.2.0

type ShovelInfoInput interface {
	pulumi.Input

	ToShovelInfoOutput() ShovelInfoOutput
	ToShovelInfoOutputWithContext(context.Context) ShovelInfoOutput
}

ShovelInfoInput is an input type that accepts ShovelInfoArgs and ShovelInfoOutput values. You can construct a concrete instance of `ShovelInfoInput` via:

ShovelInfoArgs{...}

type ShovelInfoOutput added in v2.2.0

type ShovelInfoOutput struct{ *pulumi.OutputState }

func (ShovelInfoOutput) AckMode added in v2.2.0

Determines how the shovel should acknowledge messages. Defaults to `on-confirm`.

func (ShovelInfoOutput) AddForwardHeaders added in v2.2.0

func (o ShovelInfoOutput) AddForwardHeaders() pulumi.BoolPtrOutput

Whether to amqp shovel headers. Defaults to `false`.

func (ShovelInfoOutput) DeleteAfter added in v2.2.0

func (o ShovelInfoOutput) DeleteAfter() pulumi.StringPtrOutput

Determines when (if ever) the shovel should delete itself . Defaults to `never`.

func (ShovelInfoOutput) DestinationExchange added in v2.2.0

func (o ShovelInfoOutput) DestinationExchange() pulumi.StringPtrOutput

The exchange to which messages should be published. Either this or destinationQueue must be specified but not both.

func (ShovelInfoOutput) DestinationExchangeKey added in v2.2.0

func (o ShovelInfoOutput) DestinationExchangeKey() pulumi.StringPtrOutput

The routing key when using destination_exchange.

func (ShovelInfoOutput) DestinationQueue added in v2.2.0

func (o ShovelInfoOutput) DestinationQueue() pulumi.StringPtrOutput

The queue to which messages should be published. Either this or destinationExchange must be specified but not both.

func (ShovelInfoOutput) DestinationUri added in v2.2.0

func (o ShovelInfoOutput) DestinationUri() pulumi.StringOutput

The amqp uri for the destination .

func (ShovelInfoOutput) ElementType added in v2.2.0

func (ShovelInfoOutput) ElementType() reflect.Type

func (ShovelInfoOutput) PrefetchCount added in v2.2.0

func (o ShovelInfoOutput) PrefetchCount() pulumi.IntPtrOutput

The maximum number of unacknowledged messages copied over a shovel at any one time. Defaults to `1000`.

func (ShovelInfoOutput) ReconnectDelay added in v2.2.0

func (o ShovelInfoOutput) ReconnectDelay() pulumi.IntPtrOutput

The duration in seconds to reconnect to a broker after disconnected. Defaults to `1`.

func (ShovelInfoOutput) SourceExchange added in v2.2.0

func (o ShovelInfoOutput) SourceExchange() pulumi.StringPtrOutput

The exchange from which to consume. Either this or sourceQueue must be specified but not both.

func (ShovelInfoOutput) SourceExchangeKey added in v2.2.0

func (o ShovelInfoOutput) SourceExchangeKey() pulumi.StringPtrOutput

The routing key when using source_exchange.

func (ShovelInfoOutput) SourceQueue added in v2.2.0

func (o ShovelInfoOutput) SourceQueue() pulumi.StringPtrOutput

The queue from which to consume. Either this or sourceExchange must be specified but not both.

func (ShovelInfoOutput) SourceUri added in v2.2.0

func (o ShovelInfoOutput) SourceUri() pulumi.StringOutput

The amqp uri for the source.

func (ShovelInfoOutput) ToShovelInfoOutput added in v2.2.0

func (o ShovelInfoOutput) ToShovelInfoOutput() ShovelInfoOutput

func (ShovelInfoOutput) ToShovelInfoOutputWithContext added in v2.2.0

func (o ShovelInfoOutput) ToShovelInfoOutputWithContext(ctx context.Context) ShovelInfoOutput

func (ShovelInfoOutput) ToShovelInfoPtrOutput added in v2.2.0

func (o ShovelInfoOutput) ToShovelInfoPtrOutput() ShovelInfoPtrOutput

func (ShovelInfoOutput) ToShovelInfoPtrOutputWithContext added in v2.2.0

func (o ShovelInfoOutput) ToShovelInfoPtrOutputWithContext(ctx context.Context) ShovelInfoPtrOutput

type ShovelInfoPtrInput added in v2.2.0

type ShovelInfoPtrInput interface {
	pulumi.Input

	ToShovelInfoPtrOutput() ShovelInfoPtrOutput
	ToShovelInfoPtrOutputWithContext(context.Context) ShovelInfoPtrOutput
}

ShovelInfoPtrInput is an input type that accepts ShovelInfoArgs, ShovelInfoPtr and ShovelInfoPtrOutput values. You can construct a concrete instance of `ShovelInfoPtrInput` via:

        ShovelInfoArgs{...}

or:

        nil

func ShovelInfoPtr added in v2.2.0

func ShovelInfoPtr(v *ShovelInfoArgs) ShovelInfoPtrInput

type ShovelInfoPtrOutput added in v2.2.0

type ShovelInfoPtrOutput struct{ *pulumi.OutputState }

func (ShovelInfoPtrOutput) AckMode added in v2.2.0

Determines how the shovel should acknowledge messages. Defaults to `on-confirm`.

func (ShovelInfoPtrOutput) AddForwardHeaders added in v2.2.0

func (o ShovelInfoPtrOutput) AddForwardHeaders() pulumi.BoolPtrOutput

Whether to amqp shovel headers. Defaults to `false`.

func (ShovelInfoPtrOutput) DeleteAfter added in v2.2.0

func (o ShovelInfoPtrOutput) DeleteAfter() pulumi.StringPtrOutput

Determines when (if ever) the shovel should delete itself . Defaults to `never`.

func (ShovelInfoPtrOutput) DestinationExchange added in v2.2.0

func (o ShovelInfoPtrOutput) DestinationExchange() pulumi.StringPtrOutput

The exchange to which messages should be published. Either this or destinationQueue must be specified but not both.

func (ShovelInfoPtrOutput) DestinationExchangeKey added in v2.2.0

func (o ShovelInfoPtrOutput) DestinationExchangeKey() pulumi.StringPtrOutput

The routing key when using destination_exchange.

func (ShovelInfoPtrOutput) DestinationQueue added in v2.2.0

func (o ShovelInfoPtrOutput) DestinationQueue() pulumi.StringPtrOutput

The queue to which messages should be published. Either this or destinationExchange must be specified but not both.

func (ShovelInfoPtrOutput) DestinationUri added in v2.2.0

func (o ShovelInfoPtrOutput) DestinationUri() pulumi.StringPtrOutput

The amqp uri for the destination .

func (ShovelInfoPtrOutput) Elem added in v2.2.0

func (ShovelInfoPtrOutput) ElementType added in v2.2.0

func (ShovelInfoPtrOutput) ElementType() reflect.Type

func (ShovelInfoPtrOutput) PrefetchCount added in v2.2.0

func (o ShovelInfoPtrOutput) PrefetchCount() pulumi.IntPtrOutput

The maximum number of unacknowledged messages copied over a shovel at any one time. Defaults to `1000`.

func (ShovelInfoPtrOutput) ReconnectDelay added in v2.2.0

func (o ShovelInfoPtrOutput) ReconnectDelay() pulumi.IntPtrOutput

The duration in seconds to reconnect to a broker after disconnected. Defaults to `1`.

func (ShovelInfoPtrOutput) SourceExchange added in v2.2.0

func (o ShovelInfoPtrOutput) SourceExchange() pulumi.StringPtrOutput

The exchange from which to consume. Either this or sourceQueue must be specified but not both.

func (ShovelInfoPtrOutput) SourceExchangeKey added in v2.2.0

func (o ShovelInfoPtrOutput) SourceExchangeKey() pulumi.StringPtrOutput

The routing key when using source_exchange.

func (ShovelInfoPtrOutput) SourceQueue added in v2.2.0

func (o ShovelInfoPtrOutput) SourceQueue() pulumi.StringPtrOutput

The queue from which to consume. Either this or sourceExchange must be specified but not both.

func (ShovelInfoPtrOutput) SourceUri added in v2.2.0

The amqp uri for the source.

func (ShovelInfoPtrOutput) ToShovelInfoPtrOutput added in v2.2.0

func (o ShovelInfoPtrOutput) ToShovelInfoPtrOutput() ShovelInfoPtrOutput

func (ShovelInfoPtrOutput) ToShovelInfoPtrOutputWithContext added in v2.2.0

func (o ShovelInfoPtrOutput) ToShovelInfoPtrOutputWithContext(ctx context.Context) ShovelInfoPtrOutput

type ShovelInput added in v2.4.1

type ShovelInput interface {
	pulumi.Input

	ToShovelOutput() ShovelOutput
	ToShovelOutputWithContext(ctx context.Context) ShovelOutput
}

type ShovelOutput added in v2.4.1

type ShovelOutput struct {
	*pulumi.OutputState
}

func (ShovelOutput) ElementType added in v2.4.1

func (ShovelOutput) ElementType() reflect.Type

func (ShovelOutput) ToShovelOutput added in v2.4.1

func (o ShovelOutput) ToShovelOutput() ShovelOutput

func (ShovelOutput) ToShovelOutputWithContext added in v2.4.1

func (o ShovelOutput) ToShovelOutputWithContext(ctx context.Context) ShovelOutput

type ShovelState added in v2.2.0

type ShovelState struct {
	// The settings of the shovel. The structure is
	// described below.
	Info ShovelInfoPtrInput
	// The shovel name.
	Name pulumi.StringPtrInput
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrInput
}

func (ShovelState) ElementType added in v2.2.0

func (ShovelState) ElementType() reflect.Type

type TopicPermissions

type TopicPermissions struct {
	pulumi.CustomResourceState

	// The settings of the permissions. The structure is
	// described below.
	Permissions TopicPermissionsPermissionArrayOutput `pulumi:"permissions"`
	// The user to apply the permissions to.
	User pulumi.StringOutput `pulumi:"user"`
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrOutput `pulumi:"vhost"`
}

The “TopicPermissions“ resource creates and manages a user's set of topic permissions.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-rabbitmq/sdk/v2/go/rabbitmq"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testVHost, err := rabbitmq.NewVHost(ctx, "testVHost", nil)
		if err != nil {
			return err
		}
		testUser, err := rabbitmq.NewUser(ctx, "testUser", &rabbitmq.UserArgs{
			Password: pulumi.String("foobar"),
			Tags: pulumi.StringArray{
				pulumi.String("administrator"),
			},
		})
		if err != nil {
			return err
		}
		_, err = rabbitmq.NewTopicPermissions(ctx, "testTopicPermissions", &rabbitmq.TopicPermissionsArgs{
			Permissions: rabbitmq.TopicPermissionsPermissionArray{
				&rabbitmq.TopicPermissionsPermissionArgs{
					Exchange: pulumi.String("amq.topic"),
					Read:     pulumi.String(".*"),
					Write:    pulumi.String(".*"),
				},
			},
			User:  testUser.Name,
			Vhost: testVHost.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Permissions can be imported using the `id` which is composed of

`user@vhost`. E.g.

```sh

$ pulumi import rabbitmq:index/topicPermissions:TopicPermissions test user@vhost

```

func GetTopicPermissions

func GetTopicPermissions(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TopicPermissionsState, opts ...pulumi.ResourceOption) (*TopicPermissions, error)

GetTopicPermissions gets an existing TopicPermissions resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTopicPermissions

func NewTopicPermissions(ctx *pulumi.Context,
	name string, args *TopicPermissionsArgs, opts ...pulumi.ResourceOption) (*TopicPermissions, error)

NewTopicPermissions registers a new resource with the given unique name, arguments, and options.

func (TopicPermissions) ElementType added in v2.4.1

func (TopicPermissions) ElementType() reflect.Type

func (TopicPermissions) ToTopicPermissionsOutput added in v2.4.1

func (i TopicPermissions) ToTopicPermissionsOutput() TopicPermissionsOutput

func (TopicPermissions) ToTopicPermissionsOutputWithContext added in v2.4.1

func (i TopicPermissions) ToTopicPermissionsOutputWithContext(ctx context.Context) TopicPermissionsOutput

type TopicPermissionsArgs

type TopicPermissionsArgs struct {
	// The settings of the permissions. The structure is
	// described below.
	Permissions TopicPermissionsPermissionArrayInput
	// The user to apply the permissions to.
	User pulumi.StringInput
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrInput
}

The set of arguments for constructing a TopicPermissions resource.

func (TopicPermissionsArgs) ElementType

func (TopicPermissionsArgs) ElementType() reflect.Type

type TopicPermissionsInput added in v2.4.1

type TopicPermissionsInput interface {
	pulumi.Input

	ToTopicPermissionsOutput() TopicPermissionsOutput
	ToTopicPermissionsOutputWithContext(ctx context.Context) TopicPermissionsOutput
}

type TopicPermissionsOutput added in v2.4.1

type TopicPermissionsOutput struct {
	*pulumi.OutputState
}

func (TopicPermissionsOutput) ElementType added in v2.4.1

func (TopicPermissionsOutput) ElementType() reflect.Type

func (TopicPermissionsOutput) ToTopicPermissionsOutput added in v2.4.1

func (o TopicPermissionsOutput) ToTopicPermissionsOutput() TopicPermissionsOutput

func (TopicPermissionsOutput) ToTopicPermissionsOutputWithContext added in v2.4.1

func (o TopicPermissionsOutput) ToTopicPermissionsOutputWithContext(ctx context.Context) TopicPermissionsOutput

type TopicPermissionsPermission

type TopicPermissionsPermission struct {
	// The exchange to set the permissions for.
	Exchange string `pulumi:"exchange"`
	// The "read" ACL.
	Read string `pulumi:"read"`
	// The "write" ACL.
	Write string `pulumi:"write"`
}

type TopicPermissionsPermissionArgs

type TopicPermissionsPermissionArgs struct {
	// The exchange to set the permissions for.
	Exchange pulumi.StringInput `pulumi:"exchange"`
	// The "read" ACL.
	Read pulumi.StringInput `pulumi:"read"`
	// The "write" ACL.
	Write pulumi.StringInput `pulumi:"write"`
}

func (TopicPermissionsPermissionArgs) ElementType

func (TopicPermissionsPermissionArgs) ToTopicPermissionsPermissionOutput

func (i TopicPermissionsPermissionArgs) ToTopicPermissionsPermissionOutput() TopicPermissionsPermissionOutput

func (TopicPermissionsPermissionArgs) ToTopicPermissionsPermissionOutputWithContext

func (i TopicPermissionsPermissionArgs) ToTopicPermissionsPermissionOutputWithContext(ctx context.Context) TopicPermissionsPermissionOutput

type TopicPermissionsPermissionArray

type TopicPermissionsPermissionArray []TopicPermissionsPermissionInput

func (TopicPermissionsPermissionArray) ElementType

func (TopicPermissionsPermissionArray) ToTopicPermissionsPermissionArrayOutput

func (i TopicPermissionsPermissionArray) ToTopicPermissionsPermissionArrayOutput() TopicPermissionsPermissionArrayOutput

func (TopicPermissionsPermissionArray) ToTopicPermissionsPermissionArrayOutputWithContext

func (i TopicPermissionsPermissionArray) ToTopicPermissionsPermissionArrayOutputWithContext(ctx context.Context) TopicPermissionsPermissionArrayOutput

type TopicPermissionsPermissionArrayInput

type TopicPermissionsPermissionArrayInput interface {
	pulumi.Input

	ToTopicPermissionsPermissionArrayOutput() TopicPermissionsPermissionArrayOutput
	ToTopicPermissionsPermissionArrayOutputWithContext(context.Context) TopicPermissionsPermissionArrayOutput
}

TopicPermissionsPermissionArrayInput is an input type that accepts TopicPermissionsPermissionArray and TopicPermissionsPermissionArrayOutput values. You can construct a concrete instance of `TopicPermissionsPermissionArrayInput` via:

TopicPermissionsPermissionArray{ TopicPermissionsPermissionArgs{...} }

type TopicPermissionsPermissionArrayOutput

type TopicPermissionsPermissionArrayOutput struct{ *pulumi.OutputState }

func (TopicPermissionsPermissionArrayOutput) ElementType

func (TopicPermissionsPermissionArrayOutput) Index

func (TopicPermissionsPermissionArrayOutput) ToTopicPermissionsPermissionArrayOutput

func (o TopicPermissionsPermissionArrayOutput) ToTopicPermissionsPermissionArrayOutput() TopicPermissionsPermissionArrayOutput

func (TopicPermissionsPermissionArrayOutput) ToTopicPermissionsPermissionArrayOutputWithContext

func (o TopicPermissionsPermissionArrayOutput) ToTopicPermissionsPermissionArrayOutputWithContext(ctx context.Context) TopicPermissionsPermissionArrayOutput

type TopicPermissionsPermissionInput

type TopicPermissionsPermissionInput interface {
	pulumi.Input

	ToTopicPermissionsPermissionOutput() TopicPermissionsPermissionOutput
	ToTopicPermissionsPermissionOutputWithContext(context.Context) TopicPermissionsPermissionOutput
}

TopicPermissionsPermissionInput is an input type that accepts TopicPermissionsPermissionArgs and TopicPermissionsPermissionOutput values. You can construct a concrete instance of `TopicPermissionsPermissionInput` via:

TopicPermissionsPermissionArgs{...}

type TopicPermissionsPermissionOutput

type TopicPermissionsPermissionOutput struct{ *pulumi.OutputState }

func (TopicPermissionsPermissionOutput) ElementType

func (TopicPermissionsPermissionOutput) Exchange

The exchange to set the permissions for.

func (TopicPermissionsPermissionOutput) Read

The "read" ACL.

func (TopicPermissionsPermissionOutput) ToTopicPermissionsPermissionOutput

func (o TopicPermissionsPermissionOutput) ToTopicPermissionsPermissionOutput() TopicPermissionsPermissionOutput

func (TopicPermissionsPermissionOutput) ToTopicPermissionsPermissionOutputWithContext

func (o TopicPermissionsPermissionOutput) ToTopicPermissionsPermissionOutputWithContext(ctx context.Context) TopicPermissionsPermissionOutput

func (TopicPermissionsPermissionOutput) Write

The "write" ACL.

type TopicPermissionsState

type TopicPermissionsState struct {
	// The settings of the permissions. The structure is
	// described below.
	Permissions TopicPermissionsPermissionArrayInput
	// The user to apply the permissions to.
	User pulumi.StringPtrInput
	// The vhost to create the resource in.
	Vhost pulumi.StringPtrInput
}

func (TopicPermissionsState) ElementType

func (TopicPermissionsState) ElementType() reflect.Type

type User

type User struct {
	pulumi.CustomResourceState

	// The name of the user.
	Name pulumi.StringOutput `pulumi:"name"`
	// The password of the user. The value of this argument
	// is plain-text so make sure to secure where this is defined.
	Password pulumi.StringOutput `pulumi:"password"`
	// Which permission model to apply to the user. Valid
	// options are: management, policymaker, monitoring, and administrator.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
}

The “User“ resource creates and manages a user.

> **Note:** All arguments including username and password will be stored in the raw state as plain-text. [Read more about sensitive data in state](https://www.terraform.io/docs/state/sensitive-data.html).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-rabbitmq/sdk/v2/go/rabbitmq"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rabbitmq.NewUser(ctx, "test", &rabbitmq.UserArgs{
			Password: pulumi.String("foobar"),
			Tags: pulumi.StringArray{
				pulumi.String("administrator"),
				pulumi.String("management"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Users can be imported using the `name`, e.g.

```sh

$ pulumi import rabbitmq:index/user:User test mctest

```

func GetUser

func GetUser(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *UserState, opts ...pulumi.ResourceOption) (*User, error)

GetUser gets an existing User resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewUser

func NewUser(ctx *pulumi.Context,
	name string, args *UserArgs, opts ...pulumi.ResourceOption) (*User, error)

NewUser registers a new resource with the given unique name, arguments, and options.

func (User) ElementType added in v2.4.1

func (User) ElementType() reflect.Type

func (User) ToUserOutput added in v2.4.1

func (i User) ToUserOutput() UserOutput

func (User) ToUserOutputWithContext added in v2.4.1

func (i User) ToUserOutputWithContext(ctx context.Context) UserOutput

type UserArgs

type UserArgs struct {
	// The name of the user.
	Name pulumi.StringPtrInput
	// The password of the user. The value of this argument
	// is plain-text so make sure to secure where this is defined.
	Password pulumi.StringInput
	// Which permission model to apply to the user. Valid
	// options are: management, policymaker, monitoring, and administrator.
	Tags pulumi.StringArrayInput
}

The set of arguments for constructing a User resource.

func (UserArgs) ElementType

func (UserArgs) ElementType() reflect.Type

type UserInput added in v2.4.1

type UserInput interface {
	pulumi.Input

	ToUserOutput() UserOutput
	ToUserOutputWithContext(ctx context.Context) UserOutput
}

type UserOutput added in v2.4.1

type UserOutput struct {
	*pulumi.OutputState
}

func (UserOutput) ElementType added in v2.4.1

func (UserOutput) ElementType() reflect.Type

func (UserOutput) ToUserOutput added in v2.4.1

func (o UserOutput) ToUserOutput() UserOutput

func (UserOutput) ToUserOutputWithContext added in v2.4.1

func (o UserOutput) ToUserOutputWithContext(ctx context.Context) UserOutput

type UserState

type UserState struct {
	// The name of the user.
	Name pulumi.StringPtrInput
	// The password of the user. The value of this argument
	// is plain-text so make sure to secure where this is defined.
	Password pulumi.StringPtrInput
	// Which permission model to apply to the user. Valid
	// options are: management, policymaker, monitoring, and administrator.
	Tags pulumi.StringArrayInput
}

func (UserState) ElementType

func (UserState) ElementType() reflect.Type

type VHost

type VHost struct {
	pulumi.CustomResourceState

	// The name of the vhost.
	Name pulumi.StringOutput `pulumi:"name"`
}

The “VHost“ resource creates and manages a vhost.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-rabbitmq/sdk/v2/go/rabbitmq"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rabbitmq.NewVHost(ctx, "myVhost", nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Vhosts can be imported using the `name`, e.g.

```sh

$ pulumi import rabbitmq:index/vHost:VHost my_vhost my_vhost

```

func GetVHost

func GetVHost(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VHostState, opts ...pulumi.ResourceOption) (*VHost, error)

GetVHost gets an existing VHost resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVHost

func NewVHost(ctx *pulumi.Context,
	name string, args *VHostArgs, opts ...pulumi.ResourceOption) (*VHost, error)

NewVHost registers a new resource with the given unique name, arguments, and options.

func (VHost) ElementType added in v2.4.1

func (VHost) ElementType() reflect.Type

func (VHost) ToVHostOutput added in v2.4.1

func (i VHost) ToVHostOutput() VHostOutput

func (VHost) ToVHostOutputWithContext added in v2.4.1

func (i VHost) ToVHostOutputWithContext(ctx context.Context) VHostOutput

type VHostArgs

type VHostArgs struct {
	// The name of the vhost.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a VHost resource.

func (VHostArgs) ElementType

func (VHostArgs) ElementType() reflect.Type

type VHostInput added in v2.4.1

type VHostInput interface {
	pulumi.Input

	ToVHostOutput() VHostOutput
	ToVHostOutputWithContext(ctx context.Context) VHostOutput
}

type VHostOutput added in v2.4.1

type VHostOutput struct {
	*pulumi.OutputState
}

func (VHostOutput) ElementType added in v2.4.1

func (VHostOutput) ElementType() reflect.Type

func (VHostOutput) ToVHostOutput added in v2.4.1

func (o VHostOutput) ToVHostOutput() VHostOutput

func (VHostOutput) ToVHostOutputWithContext added in v2.4.1

func (o VHostOutput) ToVHostOutputWithContext(ctx context.Context) VHostOutput

type VHostState

type VHostState struct {
	// The name of the vhost.
	Name pulumi.StringPtrInput
}

func (VHostState) ElementType

func (VHostState) ElementType() reflect.Type

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL