amqp

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Dec 21, 2022 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PkgVersion added in v0.0.1

func PkgVersion() (semver.Version, error)

PkgVersion uses reflection to determine the version of the current package. If a version cannot be determined, v1 will be assumed. The second return value is always nil.

Types

type Binding

type Binding struct {
	pulumi.CustomResourceState

	// X-match Attributes. Valid Values:
	// * "x-match:all": Default Value, All the Message Header of Key-Value Pairs Stored in the Must Match.
	// * "x-match:any": at Least One Pair of the Message Header of Key-Value Pairs Stored in the Must Match.
	Argument pulumi.StringOutput `pulumi:"argument"`
	// The Binding Key.
	// * For a non-topic source exchange: The binding key can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).
	//   The binding key must be 1 to 255 characters in length.
	// * For a topic source exchange: The binding key can contain letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).
	//   If the binding key contains a number sign (#), the binding key must start with a number sign (#) followed by a period (.) or end with a number sign (#) that follows a period (.).
	//   The binding key must be 1 to 255 characters in length.
	BindingKey pulumi.StringOutput `pulumi:"bindingKey"`
	// The Target Binding Types. Valid values: `EXCHANGE`, `QUEUE`.
	BindingType pulumi.StringOutput `pulumi:"bindingType"`
	// The Target Queue Or Exchange of the Name.
	DestinationName pulumi.StringOutput `pulumi:"destinationName"`
	// Instance Id.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The Source Exchange Name.
	SourceExchange pulumi.StringOutput `pulumi:"sourceExchange"`
	// Virtualhost Name.
	VirtualHostName pulumi.StringOutput `pulumi:"virtualHostName"`
}

Provides a RabbitMQ (AMQP) Binding resource to bind tha exchange with another exchange or queue.

> **NOTE:** Available in v1.135.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/amqp"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleVirtualHost, err := amqp.NewVirtualHost(ctx, "exampleVirtualHost", &amqp.VirtualHostArgs{
			InstanceId:      pulumi.String("amqp-abc12345"),
			VirtualHostName: pulumi.String("my-VirtualHost"),
		})
		if err != nil {
			return err
		}
		exampleExchange, err := amqp.NewExchange(ctx, "exampleExchange", &amqp.ExchangeArgs{
			AutoDeleteState: pulumi.Bool(false),
			ExchangeName:    pulumi.String("my-Exchange"),
			ExchangeType:    pulumi.String("HEADERS"),
			InstanceId:      exampleVirtualHost.InstanceId,
			Internal:        pulumi.Bool(false),
			VirtualHostName: exampleVirtualHost.VirtualHostName,
		})
		if err != nil {
			return err
		}
		exampleQueue, err := amqp.NewQueue(ctx, "exampleQueue", &amqp.QueueArgs{
			InstanceId:      exampleVirtualHost.InstanceId,
			QueueName:       pulumi.String("my-Queue"),
			VirtualHostName: exampleVirtualHost.VirtualHostName,
		})
		if err != nil {
			return err
		}
		_, err = amqp.NewBinding(ctx, "exampleBinding", &amqp.BindingArgs{
			Argument:        pulumi.String("x-match:all"),
			BindingKey:      exampleQueue.QueueName,
			BindingType:     pulumi.String("QUEUE"),
			DestinationName: pulumi.String("binding-queue"),
			InstanceId:      exampleExchange.InstanceId,
			SourceExchange:  exampleExchange.ExchangeName,
			VirtualHostName: exampleExchange.VirtualHostName,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RabbitMQ (AMQP) Binding can be imported using the id, e.g.

```sh

$ pulumi import alicloud:amqp/binding:Binding example <instance_id>:<virtual_host_name>:<source_exchange>:<destination_name>

```

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

func (*Binding) ElementType() reflect.Type

func (*Binding) ToBindingOutput

func (i *Binding) ToBindingOutput() BindingOutput

func (*Binding) ToBindingOutputWithContext

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

type BindingArgs

type BindingArgs struct {
	// X-match Attributes. Valid Values:
	// * "x-match:all": Default Value, All the Message Header of Key-Value Pairs Stored in the Must Match.
	// * "x-match:any": at Least One Pair of the Message Header of Key-Value Pairs Stored in the Must Match.
	Argument pulumi.StringPtrInput
	// The Binding Key.
	// * For a non-topic source exchange: The binding key can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).
	//   The binding key must be 1 to 255 characters in length.
	// * For a topic source exchange: The binding key can contain letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).
	//   If the binding key contains a number sign (#), the binding key must start with a number sign (#) followed by a period (.) or end with a number sign (#) that follows a period (.).
	//   The binding key must be 1 to 255 characters in length.
	BindingKey pulumi.StringInput
	// The Target Binding Types. Valid values: `EXCHANGE`, `QUEUE`.
	BindingType pulumi.StringInput
	// The Target Queue Or Exchange of the Name.
	DestinationName pulumi.StringInput
	// Instance Id.
	InstanceId pulumi.StringInput
	// The Source Exchange Name.
	SourceExchange pulumi.StringInput
	// Virtualhost Name.
	VirtualHostName pulumi.StringInput
}

The set of arguments for constructing a Binding resource.

func (BindingArgs) ElementType

func (BindingArgs) ElementType() reflect.Type

type BindingArray

type BindingArray []BindingInput

func (BindingArray) ElementType

func (BindingArray) ElementType() reflect.Type

func (BindingArray) ToBindingArrayOutput

func (i BindingArray) ToBindingArrayOutput() BindingArrayOutput

func (BindingArray) ToBindingArrayOutputWithContext

func (i BindingArray) ToBindingArrayOutputWithContext(ctx context.Context) BindingArrayOutput

type BindingArrayInput

type BindingArrayInput interface {
	pulumi.Input

	ToBindingArrayOutput() BindingArrayOutput
	ToBindingArrayOutputWithContext(context.Context) BindingArrayOutput
}

BindingArrayInput is an input type that accepts BindingArray and BindingArrayOutput values. You can construct a concrete instance of `BindingArrayInput` via:

BindingArray{ BindingArgs{...} }

type BindingArrayOutput

type BindingArrayOutput struct{ *pulumi.OutputState }

func (BindingArrayOutput) ElementType

func (BindingArrayOutput) ElementType() reflect.Type

func (BindingArrayOutput) Index

func (BindingArrayOutput) ToBindingArrayOutput

func (o BindingArrayOutput) ToBindingArrayOutput() BindingArrayOutput

func (BindingArrayOutput) ToBindingArrayOutputWithContext

func (o BindingArrayOutput) ToBindingArrayOutputWithContext(ctx context.Context) BindingArrayOutput

type BindingInput

type BindingInput interface {
	pulumi.Input

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

type BindingMap

type BindingMap map[string]BindingInput

func (BindingMap) ElementType

func (BindingMap) ElementType() reflect.Type

func (BindingMap) ToBindingMapOutput

func (i BindingMap) ToBindingMapOutput() BindingMapOutput

func (BindingMap) ToBindingMapOutputWithContext

func (i BindingMap) ToBindingMapOutputWithContext(ctx context.Context) BindingMapOutput

type BindingMapInput

type BindingMapInput interface {
	pulumi.Input

	ToBindingMapOutput() BindingMapOutput
	ToBindingMapOutputWithContext(context.Context) BindingMapOutput
}

BindingMapInput is an input type that accepts BindingMap and BindingMapOutput values. You can construct a concrete instance of `BindingMapInput` via:

BindingMap{ "key": BindingArgs{...} }

type BindingMapOutput

type BindingMapOutput struct{ *pulumi.OutputState }

func (BindingMapOutput) ElementType

func (BindingMapOutput) ElementType() reflect.Type

func (BindingMapOutput) MapIndex

func (BindingMapOutput) ToBindingMapOutput

func (o BindingMapOutput) ToBindingMapOutput() BindingMapOutput

func (BindingMapOutput) ToBindingMapOutputWithContext

func (o BindingMapOutput) ToBindingMapOutputWithContext(ctx context.Context) BindingMapOutput

type BindingOutput

type BindingOutput struct{ *pulumi.OutputState }

func (BindingOutput) Argument

func (o BindingOutput) Argument() pulumi.StringOutput

X-match Attributes. Valid Values: * "x-match:all": Default Value, All the Message Header of Key-Value Pairs Stored in the Must Match. * "x-match:any": at Least One Pair of the Message Header of Key-Value Pairs Stored in the Must Match.

func (BindingOutput) BindingKey

func (o BindingOutput) BindingKey() pulumi.StringOutput

The Binding Key.

  • For a non-topic source exchange: The binding key can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@). The binding key must be 1 to 255 characters in length.
  • For a topic source exchange: The binding key can contain letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@). If the binding key contains a number sign (#), the binding key must start with a number sign (#) followed by a period (.) or end with a number sign (#) that follows a period (.). The binding key must be 1 to 255 characters in length.

func (BindingOutput) BindingType

func (o BindingOutput) BindingType() pulumi.StringOutput

The Target Binding Types. Valid values: `EXCHANGE`, `QUEUE`.

func (BindingOutput) DestinationName

func (o BindingOutput) DestinationName() pulumi.StringOutput

The Target Queue Or Exchange of the Name.

func (BindingOutput) ElementType

func (BindingOutput) ElementType() reflect.Type

func (BindingOutput) InstanceId

func (o BindingOutput) InstanceId() pulumi.StringOutput

Instance Id.

func (BindingOutput) SourceExchange

func (o BindingOutput) SourceExchange() pulumi.StringOutput

The Source Exchange Name.

func (BindingOutput) ToBindingOutput

func (o BindingOutput) ToBindingOutput() BindingOutput

func (BindingOutput) ToBindingOutputWithContext

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

func (BindingOutput) VirtualHostName

func (o BindingOutput) VirtualHostName() pulumi.StringOutput

Virtualhost Name.

type BindingState

type BindingState struct {
	// X-match Attributes. Valid Values:
	// * "x-match:all": Default Value, All the Message Header of Key-Value Pairs Stored in the Must Match.
	// * "x-match:any": at Least One Pair of the Message Header of Key-Value Pairs Stored in the Must Match.
	Argument pulumi.StringPtrInput
	// The Binding Key.
	// * For a non-topic source exchange: The binding key can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).
	//   The binding key must be 1 to 255 characters in length.
	// * For a topic source exchange: The binding key can contain letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).
	//   If the binding key contains a number sign (#), the binding key must start with a number sign (#) followed by a period (.) or end with a number sign (#) that follows a period (.).
	//   The binding key must be 1 to 255 characters in length.
	BindingKey pulumi.StringPtrInput
	// The Target Binding Types. Valid values: `EXCHANGE`, `QUEUE`.
	BindingType pulumi.StringPtrInput
	// The Target Queue Or Exchange of the Name.
	DestinationName pulumi.StringPtrInput
	// Instance Id.
	InstanceId pulumi.StringPtrInput
	// The Source Exchange Name.
	SourceExchange pulumi.StringPtrInput
	// Virtualhost Name.
	VirtualHostName pulumi.StringPtrInput
}

func (BindingState) ElementType

func (BindingState) ElementType() reflect.Type

type Exchange

type Exchange struct {
	pulumi.CustomResourceState

	// The alternate exchange. An alternate exchange is configured for an existing exchange. It is used to receive messages that fail to be routed to queues from the existing exchange.
	AlternateExchange pulumi.StringPtrOutput `pulumi:"alternateExchange"`
	// Specifies whether the Auto Delete attribute is configured. Valid values:
	// * true: The Auto Delete attribute is configured. If the last queue that is bound to an exchange is unbound, the exchange is automatically deleted.
	// * false: The Auto Delete attribute is not configured. If the last queue that is bound to an exchange is unbound, the exchange is not automatically deleted.
	AutoDeleteState pulumi.BoolOutput `pulumi:"autoDeleteState"`
	// The name of the exchange. It must be 1 to 255 characters in length, and can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).
	ExchangeName pulumi.StringOutput `pulumi:"exchangeName"`
	// The type of the exchange. Valid values:
	// * FANOUT: An exchange of this type routes all the received messages to all the queues bound to this exchange. You can use a fanout exchange to broadcast messages.
	// * DIRECT: An exchange of this type routes a message to the queue whose binding key is exactly the same as the routing key of the message.
	// * TOPIC: This type is similar to the direct exchange type. An exchange of this type routes a message to one or more queues based on the fuzzy match or multi-condition match result between the routing key of the message and the binding keys of the current exchange.
	// * HEADERS: Headers Exchange uses the Headers property instead of Routing Key for routing matching.
	//   When binding Headers Exchange and Queue, set the key-value pair of the binding property;
	//   when sending a message to the Headers Exchange, set the message's Headers property key-value pair and use the message Headers
	//   The message is routed to the bound Queue by comparing the attribute key-value pair and the bound attribute key-value pair.
	ExchangeType pulumi.StringOutput `pulumi:"exchangeType"`
	// The ID of the instance.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// Specifies whether an exchange is an internal exchange. Valid values:
	// * false: The exchange is not an internal exchange.
	// * true: The exchange is an internal exchange.
	Internal pulumi.BoolOutput `pulumi:"internal"`
	// The name of virtual host where an exchange resides.
	VirtualHostName pulumi.StringOutput `pulumi:"virtualHostName"`
}

Provides a RabbitMQ (AMQP) Exchange resource.

For information about RabbitMQ (AMQP) Exchange and how to use it, see [What is Exchange](https://www.alibabacloud.com/help/product/100989.html).

> **NOTE:** Available in v1.128.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/amqp"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleVirtualHost, err := amqp.NewVirtualHost(ctx, "exampleVirtualHost", &amqp.VirtualHostArgs{
			InstanceId:      pulumi.String("amqp-abc12345"),
			VirtualHostName: pulumi.String("my-VirtualHost"),
		})
		if err != nil {
			return err
		}
		_, err = amqp.NewExchange(ctx, "exampleExchange", &amqp.ExchangeArgs{
			AutoDeleteState: pulumi.Bool(false),
			ExchangeName:    pulumi.String("my-Exchange"),
			ExchangeType:    pulumi.String("DIRECT"),
			InstanceId:      exampleVirtualHost.InstanceId,
			Internal:        pulumi.Bool(false),
			VirtualHostName: exampleVirtualHost.VirtualHostName,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RabbitMQ (AMQP) Exchange can be imported using the id, e.g.

```sh

$ pulumi import alicloud:amqp/exchange:Exchange example <instance_id>:<virtual_host_name>:<exchange_name>

```

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

func (*Exchange) ElementType() reflect.Type

func (*Exchange) ToExchangeOutput

func (i *Exchange) ToExchangeOutput() ExchangeOutput

func (*Exchange) ToExchangeOutputWithContext

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

type ExchangeArgs

type ExchangeArgs struct {
	// The alternate exchange. An alternate exchange is configured for an existing exchange. It is used to receive messages that fail to be routed to queues from the existing exchange.
	AlternateExchange pulumi.StringPtrInput
	// Specifies whether the Auto Delete attribute is configured. Valid values:
	// * true: The Auto Delete attribute is configured. If the last queue that is bound to an exchange is unbound, the exchange is automatically deleted.
	// * false: The Auto Delete attribute is not configured. If the last queue that is bound to an exchange is unbound, the exchange is not automatically deleted.
	AutoDeleteState pulumi.BoolInput
	// The name of the exchange. It must be 1 to 255 characters in length, and can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).
	ExchangeName pulumi.StringInput
	// The type of the exchange. Valid values:
	// * FANOUT: An exchange of this type routes all the received messages to all the queues bound to this exchange. You can use a fanout exchange to broadcast messages.
	// * DIRECT: An exchange of this type routes a message to the queue whose binding key is exactly the same as the routing key of the message.
	// * TOPIC: This type is similar to the direct exchange type. An exchange of this type routes a message to one or more queues based on the fuzzy match or multi-condition match result between the routing key of the message and the binding keys of the current exchange.
	// * HEADERS: Headers Exchange uses the Headers property instead of Routing Key for routing matching.
	//   When binding Headers Exchange and Queue, set the key-value pair of the binding property;
	//   when sending a message to the Headers Exchange, set the message's Headers property key-value pair and use the message Headers
	//   The message is routed to the bound Queue by comparing the attribute key-value pair and the bound attribute key-value pair.
	ExchangeType pulumi.StringInput
	// The ID of the instance.
	InstanceId pulumi.StringInput
	// Specifies whether an exchange is an internal exchange. Valid values:
	// * false: The exchange is not an internal exchange.
	// * true: The exchange is an internal exchange.
	Internal pulumi.BoolInput
	// The name of virtual host where an exchange resides.
	VirtualHostName pulumi.StringInput
}

The set of arguments for constructing a Exchange resource.

func (ExchangeArgs) ElementType

func (ExchangeArgs) ElementType() reflect.Type

type ExchangeArray

type ExchangeArray []ExchangeInput

func (ExchangeArray) ElementType

func (ExchangeArray) ElementType() reflect.Type

func (ExchangeArray) ToExchangeArrayOutput

func (i ExchangeArray) ToExchangeArrayOutput() ExchangeArrayOutput

func (ExchangeArray) ToExchangeArrayOutputWithContext

func (i ExchangeArray) ToExchangeArrayOutputWithContext(ctx context.Context) ExchangeArrayOutput

type ExchangeArrayInput

type ExchangeArrayInput interface {
	pulumi.Input

	ToExchangeArrayOutput() ExchangeArrayOutput
	ToExchangeArrayOutputWithContext(context.Context) ExchangeArrayOutput
}

ExchangeArrayInput is an input type that accepts ExchangeArray and ExchangeArrayOutput values. You can construct a concrete instance of `ExchangeArrayInput` via:

ExchangeArray{ ExchangeArgs{...} }

type ExchangeArrayOutput

type ExchangeArrayOutput struct{ *pulumi.OutputState }

func (ExchangeArrayOutput) ElementType

func (ExchangeArrayOutput) ElementType() reflect.Type

func (ExchangeArrayOutput) Index

func (ExchangeArrayOutput) ToExchangeArrayOutput

func (o ExchangeArrayOutput) ToExchangeArrayOutput() ExchangeArrayOutput

func (ExchangeArrayOutput) ToExchangeArrayOutputWithContext

func (o ExchangeArrayOutput) ToExchangeArrayOutputWithContext(ctx context.Context) ExchangeArrayOutput

type ExchangeInput

type ExchangeInput interface {
	pulumi.Input

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

type ExchangeMap

type ExchangeMap map[string]ExchangeInput

func (ExchangeMap) ElementType

func (ExchangeMap) ElementType() reflect.Type

func (ExchangeMap) ToExchangeMapOutput

func (i ExchangeMap) ToExchangeMapOutput() ExchangeMapOutput

func (ExchangeMap) ToExchangeMapOutputWithContext

func (i ExchangeMap) ToExchangeMapOutputWithContext(ctx context.Context) ExchangeMapOutput

type ExchangeMapInput

type ExchangeMapInput interface {
	pulumi.Input

	ToExchangeMapOutput() ExchangeMapOutput
	ToExchangeMapOutputWithContext(context.Context) ExchangeMapOutput
}

ExchangeMapInput is an input type that accepts ExchangeMap and ExchangeMapOutput values. You can construct a concrete instance of `ExchangeMapInput` via:

ExchangeMap{ "key": ExchangeArgs{...} }

type ExchangeMapOutput

type ExchangeMapOutput struct{ *pulumi.OutputState }

func (ExchangeMapOutput) ElementType

func (ExchangeMapOutput) ElementType() reflect.Type

func (ExchangeMapOutput) MapIndex

func (ExchangeMapOutput) ToExchangeMapOutput

func (o ExchangeMapOutput) ToExchangeMapOutput() ExchangeMapOutput

func (ExchangeMapOutput) ToExchangeMapOutputWithContext

func (o ExchangeMapOutput) ToExchangeMapOutputWithContext(ctx context.Context) ExchangeMapOutput

type ExchangeOutput

type ExchangeOutput struct{ *pulumi.OutputState }

func (ExchangeOutput) AlternateExchange

func (o ExchangeOutput) AlternateExchange() pulumi.StringPtrOutput

The alternate exchange. An alternate exchange is configured for an existing exchange. It is used to receive messages that fail to be routed to queues from the existing exchange.

func (ExchangeOutput) AutoDeleteState

func (o ExchangeOutput) AutoDeleteState() pulumi.BoolOutput

Specifies whether the Auto Delete attribute is configured. Valid values: * true: The Auto Delete attribute is configured. If the last queue that is bound to an exchange is unbound, the exchange is automatically deleted. * false: The Auto Delete attribute is not configured. If the last queue that is bound to an exchange is unbound, the exchange is not automatically deleted.

func (ExchangeOutput) ElementType

func (ExchangeOutput) ElementType() reflect.Type

func (ExchangeOutput) ExchangeName

func (o ExchangeOutput) ExchangeName() pulumi.StringOutput

The name of the exchange. It must be 1 to 255 characters in length, and can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).

func (ExchangeOutput) ExchangeType

func (o ExchangeOutput) ExchangeType() pulumi.StringOutput

The type of the exchange. Valid values:

  • FANOUT: An exchange of this type routes all the received messages to all the queues bound to this exchange. You can use a fanout exchange to broadcast messages.
  • DIRECT: An exchange of this type routes a message to the queue whose binding key is exactly the same as the routing key of the message.
  • TOPIC: This type is similar to the direct exchange type. An exchange of this type routes a message to one or more queues based on the fuzzy match or multi-condition match result between the routing key of the message and the binding keys of the current exchange.
  • HEADERS: Headers Exchange uses the Headers property instead of Routing Key for routing matching. When binding Headers Exchange and Queue, set the key-value pair of the binding property; when sending a message to the Headers Exchange, set the message's Headers property key-value pair and use the message Headers The message is routed to the bound Queue by comparing the attribute key-value pair and the bound attribute key-value pair.

func (ExchangeOutput) InstanceId

func (o ExchangeOutput) InstanceId() pulumi.StringOutput

The ID of the instance.

func (ExchangeOutput) Internal

func (o ExchangeOutput) Internal() pulumi.BoolOutput

Specifies whether an exchange is an internal exchange. Valid values: * false: The exchange is not an internal exchange. * true: The exchange is an internal exchange.

func (ExchangeOutput) ToExchangeOutput

func (o ExchangeOutput) ToExchangeOutput() ExchangeOutput

func (ExchangeOutput) ToExchangeOutputWithContext

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

func (ExchangeOutput) VirtualHostName

func (o ExchangeOutput) VirtualHostName() pulumi.StringOutput

The name of virtual host where an exchange resides.

type ExchangeState

type ExchangeState struct {
	// The alternate exchange. An alternate exchange is configured for an existing exchange. It is used to receive messages that fail to be routed to queues from the existing exchange.
	AlternateExchange pulumi.StringPtrInput
	// Specifies whether the Auto Delete attribute is configured. Valid values:
	// * true: The Auto Delete attribute is configured. If the last queue that is bound to an exchange is unbound, the exchange is automatically deleted.
	// * false: The Auto Delete attribute is not configured. If the last queue that is bound to an exchange is unbound, the exchange is not automatically deleted.
	AutoDeleteState pulumi.BoolPtrInput
	// The name of the exchange. It must be 1 to 255 characters in length, and can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).
	ExchangeName pulumi.StringPtrInput
	// The type of the exchange. Valid values:
	// * FANOUT: An exchange of this type routes all the received messages to all the queues bound to this exchange. You can use a fanout exchange to broadcast messages.
	// * DIRECT: An exchange of this type routes a message to the queue whose binding key is exactly the same as the routing key of the message.
	// * TOPIC: This type is similar to the direct exchange type. An exchange of this type routes a message to one or more queues based on the fuzzy match or multi-condition match result between the routing key of the message and the binding keys of the current exchange.
	// * HEADERS: Headers Exchange uses the Headers property instead of Routing Key for routing matching.
	//   When binding Headers Exchange and Queue, set the key-value pair of the binding property;
	//   when sending a message to the Headers Exchange, set the message's Headers property key-value pair and use the message Headers
	//   The message is routed to the bound Queue by comparing the attribute key-value pair and the bound attribute key-value pair.
	ExchangeType pulumi.StringPtrInput
	// The ID of the instance.
	InstanceId pulumi.StringPtrInput
	// Specifies whether an exchange is an internal exchange. Valid values:
	// * false: The exchange is not an internal exchange.
	// * true: The exchange is an internal exchange.
	Internal pulumi.BoolPtrInput
	// The name of virtual host where an exchange resides.
	VirtualHostName pulumi.StringPtrInput
}

func (ExchangeState) ElementType

func (ExchangeState) ElementType() reflect.Type

type GetBindingsArgs

type GetBindingsArgs struct {
	// Instance Id.
	InstanceId string  `pulumi:"instanceId"`
	OutputFile *string `pulumi:"outputFile"`
	// Virtualhost Name.
	VirtualHostName string `pulumi:"virtualHostName"`
}

A collection of arguments for invoking getBindings.

type GetBindingsBinding

type GetBindingsBinding struct {
	// X-match Attributes. Valid Values: All: Default Value, All the Message Header of Key-Value Pairs Stored in the Must Match. Any: at Least One Pair of the Message Header of Key-Value Pairs Stored in the Must Match. This Parameter Applies Only to Headers Exchange Other Types of Exchange Is Invalid. Other Types of Exchange Here Can Either Be an Arbitrary Value.
	Argument string `pulumi:"argument"`
	// The Binding Key. The Source of the Binding Exchange Non-Topic Type: Can Only Contain Letters, Lowercase Letters, Numbers, and the Dash (-), the Underscore Character (_), English Periods (.) and the at Sign (@). Length from 1 to 255 Characters. The Source of the Binding Exchange Topic Type: Can Contain Letters, Lowercase Letters, Numbers, and the Dash (-), the Underscore Character (_), English Periods (.) and the at Sign (@). If You Include the Hash (.
	BindingKey string `pulumi:"bindingKey"`
	// The Target Binding Types.
	BindingType string `pulumi:"bindingType"`
	// The Target Queue Or Exchange of the Name.
	DestinationName string `pulumi:"destinationName"`
	// The ID of the Binding. The value formats as `<instance_id>:<virtual_host_name>:<source_exchange>:<destination_name>`.
	Id string `pulumi:"id"`
	// Instance Id.
	InstanceId string `pulumi:"instanceId"`
	// The Source Exchange Name.
	SourceExchange string `pulumi:"sourceExchange"`
	// Virtualhost Name.
	VirtualHostName string `pulumi:"virtualHostName"`
}

type GetBindingsBindingArgs

type GetBindingsBindingArgs struct {
	// X-match Attributes. Valid Values: All: Default Value, All the Message Header of Key-Value Pairs Stored in the Must Match. Any: at Least One Pair of the Message Header of Key-Value Pairs Stored in the Must Match. This Parameter Applies Only to Headers Exchange Other Types of Exchange Is Invalid. Other Types of Exchange Here Can Either Be an Arbitrary Value.
	Argument pulumi.StringInput `pulumi:"argument"`
	// The Binding Key. The Source of the Binding Exchange Non-Topic Type: Can Only Contain Letters, Lowercase Letters, Numbers, and the Dash (-), the Underscore Character (_), English Periods (.) and the at Sign (@). Length from 1 to 255 Characters. The Source of the Binding Exchange Topic Type: Can Contain Letters, Lowercase Letters, Numbers, and the Dash (-), the Underscore Character (_), English Periods (.) and the at Sign (@). If You Include the Hash (.
	BindingKey pulumi.StringInput `pulumi:"bindingKey"`
	// The Target Binding Types.
	BindingType pulumi.StringInput `pulumi:"bindingType"`
	// The Target Queue Or Exchange of the Name.
	DestinationName pulumi.StringInput `pulumi:"destinationName"`
	// The ID of the Binding. The value formats as `<instance_id>:<virtual_host_name>:<source_exchange>:<destination_name>`.
	Id pulumi.StringInput `pulumi:"id"`
	// Instance Id.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The Source Exchange Name.
	SourceExchange pulumi.StringInput `pulumi:"sourceExchange"`
	// Virtualhost Name.
	VirtualHostName pulumi.StringInput `pulumi:"virtualHostName"`
}

func (GetBindingsBindingArgs) ElementType

func (GetBindingsBindingArgs) ElementType() reflect.Type

func (GetBindingsBindingArgs) ToGetBindingsBindingOutput

func (i GetBindingsBindingArgs) ToGetBindingsBindingOutput() GetBindingsBindingOutput

func (GetBindingsBindingArgs) ToGetBindingsBindingOutputWithContext

func (i GetBindingsBindingArgs) ToGetBindingsBindingOutputWithContext(ctx context.Context) GetBindingsBindingOutput

type GetBindingsBindingArray

type GetBindingsBindingArray []GetBindingsBindingInput

func (GetBindingsBindingArray) ElementType

func (GetBindingsBindingArray) ElementType() reflect.Type

func (GetBindingsBindingArray) ToGetBindingsBindingArrayOutput

func (i GetBindingsBindingArray) ToGetBindingsBindingArrayOutput() GetBindingsBindingArrayOutput

func (GetBindingsBindingArray) ToGetBindingsBindingArrayOutputWithContext

func (i GetBindingsBindingArray) ToGetBindingsBindingArrayOutputWithContext(ctx context.Context) GetBindingsBindingArrayOutput

type GetBindingsBindingArrayInput

type GetBindingsBindingArrayInput interface {
	pulumi.Input

	ToGetBindingsBindingArrayOutput() GetBindingsBindingArrayOutput
	ToGetBindingsBindingArrayOutputWithContext(context.Context) GetBindingsBindingArrayOutput
}

GetBindingsBindingArrayInput is an input type that accepts GetBindingsBindingArray and GetBindingsBindingArrayOutput values. You can construct a concrete instance of `GetBindingsBindingArrayInput` via:

GetBindingsBindingArray{ GetBindingsBindingArgs{...} }

type GetBindingsBindingArrayOutput

type GetBindingsBindingArrayOutput struct{ *pulumi.OutputState }

func (GetBindingsBindingArrayOutput) ElementType

func (GetBindingsBindingArrayOutput) Index

func (GetBindingsBindingArrayOutput) ToGetBindingsBindingArrayOutput

func (o GetBindingsBindingArrayOutput) ToGetBindingsBindingArrayOutput() GetBindingsBindingArrayOutput

func (GetBindingsBindingArrayOutput) ToGetBindingsBindingArrayOutputWithContext

func (o GetBindingsBindingArrayOutput) ToGetBindingsBindingArrayOutputWithContext(ctx context.Context) GetBindingsBindingArrayOutput

type GetBindingsBindingInput

type GetBindingsBindingInput interface {
	pulumi.Input

	ToGetBindingsBindingOutput() GetBindingsBindingOutput
	ToGetBindingsBindingOutputWithContext(context.Context) GetBindingsBindingOutput
}

GetBindingsBindingInput is an input type that accepts GetBindingsBindingArgs and GetBindingsBindingOutput values. You can construct a concrete instance of `GetBindingsBindingInput` via:

GetBindingsBindingArgs{...}

type GetBindingsBindingOutput

type GetBindingsBindingOutput struct{ *pulumi.OutputState }

func (GetBindingsBindingOutput) Argument

X-match Attributes. Valid Values: All: Default Value, All the Message Header of Key-Value Pairs Stored in the Must Match. Any: at Least One Pair of the Message Header of Key-Value Pairs Stored in the Must Match. This Parameter Applies Only to Headers Exchange Other Types of Exchange Is Invalid. Other Types of Exchange Here Can Either Be an Arbitrary Value.

func (GetBindingsBindingOutput) BindingKey

The Binding Key. The Source of the Binding Exchange Non-Topic Type: Can Only Contain Letters, Lowercase Letters, Numbers, and the Dash (-), the Underscore Character (_), English Periods (.) and the at Sign (@). Length from 1 to 255 Characters. The Source of the Binding Exchange Topic Type: Can Contain Letters, Lowercase Letters, Numbers, and the Dash (-), the Underscore Character (_), English Periods (.) and the at Sign (@). If You Include the Hash (.

func (GetBindingsBindingOutput) BindingType

The Target Binding Types.

func (GetBindingsBindingOutput) DestinationName

func (o GetBindingsBindingOutput) DestinationName() pulumi.StringOutput

The Target Queue Or Exchange of the Name.

func (GetBindingsBindingOutput) ElementType

func (GetBindingsBindingOutput) ElementType() reflect.Type

func (GetBindingsBindingOutput) Id

The ID of the Binding. The value formats as `<instance_id>:<virtual_host_name>:<source_exchange>:<destination_name>`.

func (GetBindingsBindingOutput) InstanceId

Instance Id.

func (GetBindingsBindingOutput) SourceExchange

func (o GetBindingsBindingOutput) SourceExchange() pulumi.StringOutput

The Source Exchange Name.

func (GetBindingsBindingOutput) ToGetBindingsBindingOutput

func (o GetBindingsBindingOutput) ToGetBindingsBindingOutput() GetBindingsBindingOutput

func (GetBindingsBindingOutput) ToGetBindingsBindingOutputWithContext

func (o GetBindingsBindingOutput) ToGetBindingsBindingOutputWithContext(ctx context.Context) GetBindingsBindingOutput

func (GetBindingsBindingOutput) VirtualHostName

func (o GetBindingsBindingOutput) VirtualHostName() pulumi.StringOutput

Virtualhost Name.

type GetBindingsOutputArgs

type GetBindingsOutputArgs struct {
	// Instance Id.
	InstanceId pulumi.StringInput    `pulumi:"instanceId"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// Virtualhost Name.
	VirtualHostName pulumi.StringInput `pulumi:"virtualHostName"`
}

A collection of arguments for invoking getBindings.

func (GetBindingsOutputArgs) ElementType

func (GetBindingsOutputArgs) ElementType() reflect.Type

type GetBindingsResult

type GetBindingsResult struct {
	Bindings []GetBindingsBinding `pulumi:"bindings"`
	// The provider-assigned unique ID for this managed resource.
	Id              string   `pulumi:"id"`
	Ids             []string `pulumi:"ids"`
	InstanceId      string   `pulumi:"instanceId"`
	OutputFile      *string  `pulumi:"outputFile"`
	VirtualHostName string   `pulumi:"virtualHostName"`
}

A collection of values returned by getBindings.

func GetBindings

func GetBindings(ctx *pulumi.Context, args *GetBindingsArgs, opts ...pulumi.InvokeOption) (*GetBindingsResult, error)

This data source provides the Amqp Bindings of the current Alibaba Cloud user.

> **NOTE:** Available in v1.135.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/amqp"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/amqp"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := amqp.GetBindings(ctx, &amqp.GetBindingsArgs{
			InstanceId:      "amqp-cn-xxxxx",
			VirtualHostName: "my-vh",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetBindingsResultOutput

type GetBindingsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getBindings.

func (GetBindingsResultOutput) Bindings

func (GetBindingsResultOutput) ElementType

func (GetBindingsResultOutput) ElementType() reflect.Type

func (GetBindingsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetBindingsResultOutput) Ids

func (GetBindingsResultOutput) InstanceId

func (GetBindingsResultOutput) OutputFile

func (GetBindingsResultOutput) ToGetBindingsResultOutput

func (o GetBindingsResultOutput) ToGetBindingsResultOutput() GetBindingsResultOutput

func (GetBindingsResultOutput) ToGetBindingsResultOutputWithContext

func (o GetBindingsResultOutput) ToGetBindingsResultOutputWithContext(ctx context.Context) GetBindingsResultOutput

func (GetBindingsResultOutput) VirtualHostName

func (o GetBindingsResultOutput) VirtualHostName() pulumi.StringOutput

type GetExchangesArgs

type GetExchangesArgs struct {
	// A list of Exchange IDs. Its element value is same as Exchange Name.
	Ids []string `pulumi:"ids"`
	// The ID of the instance.
	InstanceId string `pulumi:"instanceId"`
	// A regex string to filter results by Exchange name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The name of virtual host where an exchange resides.
	VirtualHostName string `pulumi:"virtualHostName"`
}

A collection of arguments for invoking getExchanges.

type GetExchangesExchange

type GetExchangesExchange struct {
	// The attributes.
	Attributes map[string]interface{} `pulumi:"attributes"`
	// Indicates whether the Auto Delete attribute is configured.
	AutoDeleteState bool `pulumi:"autoDeleteState"`
	// The creation time.
	CreateTime string `pulumi:"createTime"`
	// The name of the exchange.
	ExchangeName string `pulumi:"exchangeName"`
	// The type of the exchange.
	ExchangeType string `pulumi:"exchangeType"`
	// The ID of the Exchange. Its value is same as Queue Name.
	Id string `pulumi:"id"`
	// The ID of the instance.
	InstanceId string `pulumi:"instanceId"`
	// The name of virtual host where an exchange resides.
	VirtualHostName string `pulumi:"virtualHostName"`
}

type GetExchangesExchangeArgs

type GetExchangesExchangeArgs struct {
	// The attributes.
	Attributes pulumi.MapInput `pulumi:"attributes"`
	// Indicates whether the Auto Delete attribute is configured.
	AutoDeleteState pulumi.BoolInput `pulumi:"autoDeleteState"`
	// The creation time.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// The name of the exchange.
	ExchangeName pulumi.StringInput `pulumi:"exchangeName"`
	// The type of the exchange.
	ExchangeType pulumi.StringInput `pulumi:"exchangeType"`
	// The ID of the Exchange. Its value is same as Queue Name.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the instance.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The name of virtual host where an exchange resides.
	VirtualHostName pulumi.StringInput `pulumi:"virtualHostName"`
}

func (GetExchangesExchangeArgs) ElementType

func (GetExchangesExchangeArgs) ElementType() reflect.Type

func (GetExchangesExchangeArgs) ToGetExchangesExchangeOutput

func (i GetExchangesExchangeArgs) ToGetExchangesExchangeOutput() GetExchangesExchangeOutput

func (GetExchangesExchangeArgs) ToGetExchangesExchangeOutputWithContext

func (i GetExchangesExchangeArgs) ToGetExchangesExchangeOutputWithContext(ctx context.Context) GetExchangesExchangeOutput

type GetExchangesExchangeArray

type GetExchangesExchangeArray []GetExchangesExchangeInput

func (GetExchangesExchangeArray) ElementType

func (GetExchangesExchangeArray) ElementType() reflect.Type

func (GetExchangesExchangeArray) ToGetExchangesExchangeArrayOutput

func (i GetExchangesExchangeArray) ToGetExchangesExchangeArrayOutput() GetExchangesExchangeArrayOutput

func (GetExchangesExchangeArray) ToGetExchangesExchangeArrayOutputWithContext

func (i GetExchangesExchangeArray) ToGetExchangesExchangeArrayOutputWithContext(ctx context.Context) GetExchangesExchangeArrayOutput

type GetExchangesExchangeArrayInput

type GetExchangesExchangeArrayInput interface {
	pulumi.Input

	ToGetExchangesExchangeArrayOutput() GetExchangesExchangeArrayOutput
	ToGetExchangesExchangeArrayOutputWithContext(context.Context) GetExchangesExchangeArrayOutput
}

GetExchangesExchangeArrayInput is an input type that accepts GetExchangesExchangeArray and GetExchangesExchangeArrayOutput values. You can construct a concrete instance of `GetExchangesExchangeArrayInput` via:

GetExchangesExchangeArray{ GetExchangesExchangeArgs{...} }

type GetExchangesExchangeArrayOutput

type GetExchangesExchangeArrayOutput struct{ *pulumi.OutputState }

func (GetExchangesExchangeArrayOutput) ElementType

func (GetExchangesExchangeArrayOutput) Index

func (GetExchangesExchangeArrayOutput) ToGetExchangesExchangeArrayOutput

func (o GetExchangesExchangeArrayOutput) ToGetExchangesExchangeArrayOutput() GetExchangesExchangeArrayOutput

func (GetExchangesExchangeArrayOutput) ToGetExchangesExchangeArrayOutputWithContext

func (o GetExchangesExchangeArrayOutput) ToGetExchangesExchangeArrayOutputWithContext(ctx context.Context) GetExchangesExchangeArrayOutput

type GetExchangesExchangeInput

type GetExchangesExchangeInput interface {
	pulumi.Input

	ToGetExchangesExchangeOutput() GetExchangesExchangeOutput
	ToGetExchangesExchangeOutputWithContext(context.Context) GetExchangesExchangeOutput
}

GetExchangesExchangeInput is an input type that accepts GetExchangesExchangeArgs and GetExchangesExchangeOutput values. You can construct a concrete instance of `GetExchangesExchangeInput` via:

GetExchangesExchangeArgs{...}

type GetExchangesExchangeOutput

type GetExchangesExchangeOutput struct{ *pulumi.OutputState }

func (GetExchangesExchangeOutput) Attributes

The attributes.

func (GetExchangesExchangeOutput) AutoDeleteState

func (o GetExchangesExchangeOutput) AutoDeleteState() pulumi.BoolOutput

Indicates whether the Auto Delete attribute is configured.

func (GetExchangesExchangeOutput) CreateTime

The creation time.

func (GetExchangesExchangeOutput) ElementType

func (GetExchangesExchangeOutput) ElementType() reflect.Type

func (GetExchangesExchangeOutput) ExchangeName

The name of the exchange.

func (GetExchangesExchangeOutput) ExchangeType

The type of the exchange.

func (GetExchangesExchangeOutput) Id

The ID of the Exchange. Its value is same as Queue Name.

func (GetExchangesExchangeOutput) InstanceId

The ID of the instance.

func (GetExchangesExchangeOutput) ToGetExchangesExchangeOutput

func (o GetExchangesExchangeOutput) ToGetExchangesExchangeOutput() GetExchangesExchangeOutput

func (GetExchangesExchangeOutput) ToGetExchangesExchangeOutputWithContext

func (o GetExchangesExchangeOutput) ToGetExchangesExchangeOutputWithContext(ctx context.Context) GetExchangesExchangeOutput

func (GetExchangesExchangeOutput) VirtualHostName

func (o GetExchangesExchangeOutput) VirtualHostName() pulumi.StringOutput

The name of virtual host where an exchange resides.

type GetExchangesOutputArgs

type GetExchangesOutputArgs struct {
	// A list of Exchange IDs. Its element value is same as Exchange Name.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The ID of the instance.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// A regex string to filter results by Exchange name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The name of virtual host where an exchange resides.
	VirtualHostName pulumi.StringInput `pulumi:"virtualHostName"`
}

A collection of arguments for invoking getExchanges.

func (GetExchangesOutputArgs) ElementType

func (GetExchangesOutputArgs) ElementType() reflect.Type

type GetExchangesResult

type GetExchangesResult struct {
	Exchanges []GetExchangesExchange `pulumi:"exchanges"`
	// The provider-assigned unique ID for this managed resource.
	Id              string   `pulumi:"id"`
	Ids             []string `pulumi:"ids"`
	InstanceId      string   `pulumi:"instanceId"`
	NameRegex       *string  `pulumi:"nameRegex"`
	Names           []string `pulumi:"names"`
	OutputFile      *string  `pulumi:"outputFile"`
	VirtualHostName string   `pulumi:"virtualHostName"`
}

A collection of values returned by getExchanges.

func GetExchanges

func GetExchanges(ctx *pulumi.Context, args *GetExchangesArgs, opts ...pulumi.InvokeOption) (*GetExchangesResult, error)

This data source provides the Amqp Exchanges of the current Alibaba Cloud user.

> **NOTE:** Available in v1.128.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/amqp"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/amqp"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := amqp.GetExchanges(ctx, &amqp.GetExchangesArgs{
			InstanceId:      "amqp-abc12345",
			VirtualHostName: "my-VirtualHost",
			Ids: []string{
				"my-Exchange-1",
				"my-Exchange-2",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("amqpExchangeId1", ids.Exchanges[0].Id)
		nameRegex, err := amqp.GetExchanges(ctx, &amqp.GetExchangesArgs{
			InstanceId:      "amqp-abc12345",
			VirtualHostName: "my-VirtualHost",
			NameRegex:       pulumi.StringRef("^my-Exchange"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("amqpExchangeId2", nameRegex.Exchanges[0].Id)
		return nil
	})
}

```

type GetExchangesResultOutput

type GetExchangesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getExchanges.

func (GetExchangesResultOutput) ElementType

func (GetExchangesResultOutput) ElementType() reflect.Type

func (GetExchangesResultOutput) Exchanges

func (GetExchangesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetExchangesResultOutput) Ids

func (GetExchangesResultOutput) InstanceId

func (GetExchangesResultOutput) NameRegex

func (GetExchangesResultOutput) Names

func (GetExchangesResultOutput) OutputFile

func (GetExchangesResultOutput) ToGetExchangesResultOutput

func (o GetExchangesResultOutput) ToGetExchangesResultOutput() GetExchangesResultOutput

func (GetExchangesResultOutput) ToGetExchangesResultOutputWithContext

func (o GetExchangesResultOutput) ToGetExchangesResultOutputWithContext(ctx context.Context) GetExchangesResultOutput

func (GetExchangesResultOutput) VirtualHostName

func (o GetExchangesResultOutput) VirtualHostName() pulumi.StringOutput

type GetInstancesArgs

type GetInstancesArgs struct {
	// Default to `false`. Set it to `true` can output more details about resource attributes.
	EnableDetails *bool `pulumi:"enableDetails"`
	// A list of Instance IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by Instance name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The status of the resource.
	Status *string `pulumi:"status"`
}

A collection of arguments for invoking getInstances.

type GetInstancesInstance

type GetInstancesInstance struct {
	// OrderCreateTime.
	CreateTime string `pulumi:"createTime"`
	// ExpireTime.
	ExpireTime string `pulumi:"expireTime"`
	// The ID of the Instance.
	Id string `pulumi:"id"`
	// THe instance Id.
	InstanceId string `pulumi:"instanceId"`
	// THe instance name.
	InstanceName string `pulumi:"instanceName"`
	// The instance type.
	InstanceType string `pulumi:"instanceType"`
	// The Pay-as-You-Type Values Include: the Subscription of a Pre-Paid.
	PaymentType string `pulumi:"paymentType"`
	// The private endPoint.
	PrivateEndPoint string `pulumi:"privateEndPoint"`
	// The public dndpoint.
	PublicEndpoint string `pulumi:"publicEndpoint"`
	// Renewal duration.
	RenewalDuration int `pulumi:"renewalDuration"`
	// Auto-Renewal Cycle Unit Values Include: Month: Month. Year: Years.
	RenewalDurationUnit string `pulumi:"renewalDurationUnit"`
	// Renew status.
	RenewalStatus string `pulumi:"renewalStatus"`
	// The status of the resource.
	Status string `pulumi:"status"`
	// Whether to support eip.
	SupportEip bool `pulumi:"supportEip"`
}

type GetInstancesInstanceArgs

type GetInstancesInstanceArgs struct {
	// OrderCreateTime.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// ExpireTime.
	ExpireTime pulumi.StringInput `pulumi:"expireTime"`
	// The ID of the Instance.
	Id pulumi.StringInput `pulumi:"id"`
	// THe instance Id.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// THe instance name.
	InstanceName pulumi.StringInput `pulumi:"instanceName"`
	// The instance type.
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	// The Pay-as-You-Type Values Include: the Subscription of a Pre-Paid.
	PaymentType pulumi.StringInput `pulumi:"paymentType"`
	// The private endPoint.
	PrivateEndPoint pulumi.StringInput `pulumi:"privateEndPoint"`
	// The public dndpoint.
	PublicEndpoint pulumi.StringInput `pulumi:"publicEndpoint"`
	// Renewal duration.
	RenewalDuration pulumi.IntInput `pulumi:"renewalDuration"`
	// Auto-Renewal Cycle Unit Values Include: Month: Month. Year: Years.
	RenewalDurationUnit pulumi.StringInput `pulumi:"renewalDurationUnit"`
	// Renew status.
	RenewalStatus pulumi.StringInput `pulumi:"renewalStatus"`
	// The status of the resource.
	Status pulumi.StringInput `pulumi:"status"`
	// Whether to support eip.
	SupportEip pulumi.BoolInput `pulumi:"supportEip"`
}

func (GetInstancesInstanceArgs) ElementType

func (GetInstancesInstanceArgs) ElementType() reflect.Type

func (GetInstancesInstanceArgs) ToGetInstancesInstanceOutput

func (i GetInstancesInstanceArgs) ToGetInstancesInstanceOutput() GetInstancesInstanceOutput

func (GetInstancesInstanceArgs) ToGetInstancesInstanceOutputWithContext

func (i GetInstancesInstanceArgs) ToGetInstancesInstanceOutputWithContext(ctx context.Context) GetInstancesInstanceOutput

type GetInstancesInstanceArray

type GetInstancesInstanceArray []GetInstancesInstanceInput

func (GetInstancesInstanceArray) ElementType

func (GetInstancesInstanceArray) ElementType() reflect.Type

func (GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutput

func (i GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput

func (GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutputWithContext

func (i GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutputWithContext(ctx context.Context) GetInstancesInstanceArrayOutput

type GetInstancesInstanceArrayInput

type GetInstancesInstanceArrayInput interface {
	pulumi.Input

	ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput
	ToGetInstancesInstanceArrayOutputWithContext(context.Context) GetInstancesInstanceArrayOutput
}

GetInstancesInstanceArrayInput is an input type that accepts GetInstancesInstanceArray and GetInstancesInstanceArrayOutput values. You can construct a concrete instance of `GetInstancesInstanceArrayInput` via:

GetInstancesInstanceArray{ GetInstancesInstanceArgs{...} }

type GetInstancesInstanceArrayOutput

type GetInstancesInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceArrayOutput) ElementType

func (GetInstancesInstanceArrayOutput) Index

func (GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutput

func (o GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput

func (GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutputWithContext

func (o GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutputWithContext(ctx context.Context) GetInstancesInstanceArrayOutput

type GetInstancesInstanceInput

type GetInstancesInstanceInput interface {
	pulumi.Input

	ToGetInstancesInstanceOutput() GetInstancesInstanceOutput
	ToGetInstancesInstanceOutputWithContext(context.Context) GetInstancesInstanceOutput
}

GetInstancesInstanceInput is an input type that accepts GetInstancesInstanceArgs and GetInstancesInstanceOutput values. You can construct a concrete instance of `GetInstancesInstanceInput` via:

GetInstancesInstanceArgs{...}

type GetInstancesInstanceOutput

type GetInstancesInstanceOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceOutput) CreateTime

OrderCreateTime.

func (GetInstancesInstanceOutput) ElementType

func (GetInstancesInstanceOutput) ElementType() reflect.Type

func (GetInstancesInstanceOutput) ExpireTime

ExpireTime.

func (GetInstancesInstanceOutput) Id

The ID of the Instance.

func (GetInstancesInstanceOutput) InstanceId

THe instance Id.

func (GetInstancesInstanceOutput) InstanceName

THe instance name.

func (GetInstancesInstanceOutput) InstanceType

The instance type.

func (GetInstancesInstanceOutput) PaymentType

The Pay-as-You-Type Values Include: the Subscription of a Pre-Paid.

func (GetInstancesInstanceOutput) PrivateEndPoint

func (o GetInstancesInstanceOutput) PrivateEndPoint() pulumi.StringOutput

The private endPoint.

func (GetInstancesInstanceOutput) PublicEndpoint

func (o GetInstancesInstanceOutput) PublicEndpoint() pulumi.StringOutput

The public dndpoint.

func (GetInstancesInstanceOutput) RenewalDuration

func (o GetInstancesInstanceOutput) RenewalDuration() pulumi.IntOutput

Renewal duration.

func (GetInstancesInstanceOutput) RenewalDurationUnit

func (o GetInstancesInstanceOutput) RenewalDurationUnit() pulumi.StringOutput

Auto-Renewal Cycle Unit Values Include: Month: Month. Year: Years.

func (GetInstancesInstanceOutput) RenewalStatus

Renew status.

func (GetInstancesInstanceOutput) Status

The status of the resource.

func (GetInstancesInstanceOutput) SupportEip

Whether to support eip.

func (GetInstancesInstanceOutput) ToGetInstancesInstanceOutput

func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutput() GetInstancesInstanceOutput

func (GetInstancesInstanceOutput) ToGetInstancesInstanceOutputWithContext

func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutputWithContext(ctx context.Context) GetInstancesInstanceOutput

type GetInstancesOutputArgs

type GetInstancesOutputArgs struct {
	// Default to `false`. Set it to `true` can output more details about resource attributes.
	EnableDetails pulumi.BoolPtrInput `pulumi:"enableDetails"`
	// A list of Instance IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to filter results by Instance name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The status of the resource.
	Status pulumi.StringPtrInput `pulumi:"status"`
}

A collection of arguments for invoking getInstances.

func (GetInstancesOutputArgs) ElementType

func (GetInstancesOutputArgs) ElementType() reflect.Type

type GetInstancesResult

type GetInstancesResult struct {
	EnableDetails *bool `pulumi:"enableDetails"`
	// The provider-assigned unique ID for this managed resource.
	Id         string                 `pulumi:"id"`
	Ids        []string               `pulumi:"ids"`
	Instances  []GetInstancesInstance `pulumi:"instances"`
	NameRegex  *string                `pulumi:"nameRegex"`
	Names      []string               `pulumi:"names"`
	OutputFile *string                `pulumi:"outputFile"`
	Status     *string                `pulumi:"status"`
}

A collection of values returned by getInstances.

func GetInstances

func GetInstances(ctx *pulumi.Context, args *GetInstancesArgs, opts ...pulumi.InvokeOption) (*GetInstancesResult, error)

This data source provides the Amqp Instances of the current Alibaba Cloud user.

> **NOTE:** Available in v1.128.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/amqp"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/amqp"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := amqp.GetInstances(ctx, &amqp.GetInstancesArgs{
			Ids: []string{
				"amqp-abc12345",
				"amqp-abc34567",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("amqpInstanceId1", ids.Instances[0].Id)
		nameRegex, err := amqp.GetInstances(ctx, &amqp.GetInstancesArgs{
			NameRegex: pulumi.StringRef("^my-Instance"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("amqpInstanceId2", nameRegex.Instances[0].Id)
		return nil
	})
}

```

type GetInstancesResultOutput

type GetInstancesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstances.

func (GetInstancesResultOutput) ElementType

func (GetInstancesResultOutput) ElementType() reflect.Type

func (GetInstancesResultOutput) EnableDetails

func (o GetInstancesResultOutput) EnableDetails() pulumi.BoolPtrOutput

func (GetInstancesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetInstancesResultOutput) Ids

func (GetInstancesResultOutput) Instances

func (GetInstancesResultOutput) NameRegex

func (GetInstancesResultOutput) Names

func (GetInstancesResultOutput) OutputFile

func (GetInstancesResultOutput) Status

func (GetInstancesResultOutput) ToGetInstancesResultOutput

func (o GetInstancesResultOutput) ToGetInstancesResultOutput() GetInstancesResultOutput

func (GetInstancesResultOutput) ToGetInstancesResultOutputWithContext

func (o GetInstancesResultOutput) ToGetInstancesResultOutputWithContext(ctx context.Context) GetInstancesResultOutput

type GetQueuesArgs

type GetQueuesArgs struct {
	// A list of Queue IDs. Its element value is same as Queue Name.
	Ids []string `pulumi:"ids"`
	// The ID of the instance.
	InstanceId string `pulumi:"instanceId"`
	// A regex string to filter results by Queue name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The name of the virtual host.
	VirtualHostName string `pulumi:"virtualHostName"`
}

A collection of arguments for invoking getQueues.

type GetQueuesOutputArgs

type GetQueuesOutputArgs struct {
	// A list of Queue IDs. Its element value is same as Queue Name.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The ID of the instance.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// A regex string to filter results by Queue name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The name of the virtual host.
	VirtualHostName pulumi.StringInput `pulumi:"virtualHostName"`
}

A collection of arguments for invoking getQueues.

func (GetQueuesOutputArgs) ElementType

func (GetQueuesOutputArgs) ElementType() reflect.Type

type GetQueuesQueue

type GetQueuesQueue struct {
	// The attributes for the Queue.
	Attributes map[string]interface{} `pulumi:"attributes"`
	// Specifies whether the Auto Delete attribute is configured.
	AutoDeleteState bool `pulumi:"autoDeleteState"`
	// CreateTime.
	CreateTime string `pulumi:"createTime"`
	// Specifies whether the queue is an exclusive queue.
	ExclusiveState bool `pulumi:"exclusiveState"`
	// The ID of the Queue. Its value is same as Queue Name.
	Id string `pulumi:"id"`
	// The ID of the instance.
	InstanceId string `pulumi:"instanceId"`
	// The last consume time.
	LastConsumeTime string `pulumi:"lastConsumeTime"`
	// The queue name.
	QueueName string `pulumi:"queueName"`
	// The name of the virtual host.
	VirtualHostName string `pulumi:"virtualHostName"`
}

type GetQueuesQueueArgs

type GetQueuesQueueArgs struct {
	// The attributes for the Queue.
	Attributes pulumi.MapInput `pulumi:"attributes"`
	// Specifies whether the Auto Delete attribute is configured.
	AutoDeleteState pulumi.BoolInput `pulumi:"autoDeleteState"`
	// CreateTime.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// Specifies whether the queue is an exclusive queue.
	ExclusiveState pulumi.BoolInput `pulumi:"exclusiveState"`
	// The ID of the Queue. Its value is same as Queue Name.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the instance.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The last consume time.
	LastConsumeTime pulumi.StringInput `pulumi:"lastConsumeTime"`
	// The queue name.
	QueueName pulumi.StringInput `pulumi:"queueName"`
	// The name of the virtual host.
	VirtualHostName pulumi.StringInput `pulumi:"virtualHostName"`
}

func (GetQueuesQueueArgs) ElementType

func (GetQueuesQueueArgs) ElementType() reflect.Type

func (GetQueuesQueueArgs) ToGetQueuesQueueOutput

func (i GetQueuesQueueArgs) ToGetQueuesQueueOutput() GetQueuesQueueOutput

func (GetQueuesQueueArgs) ToGetQueuesQueueOutputWithContext

func (i GetQueuesQueueArgs) ToGetQueuesQueueOutputWithContext(ctx context.Context) GetQueuesQueueOutput

type GetQueuesQueueArray

type GetQueuesQueueArray []GetQueuesQueueInput

func (GetQueuesQueueArray) ElementType

func (GetQueuesQueueArray) ElementType() reflect.Type

func (GetQueuesQueueArray) ToGetQueuesQueueArrayOutput

func (i GetQueuesQueueArray) ToGetQueuesQueueArrayOutput() GetQueuesQueueArrayOutput

func (GetQueuesQueueArray) ToGetQueuesQueueArrayOutputWithContext

func (i GetQueuesQueueArray) ToGetQueuesQueueArrayOutputWithContext(ctx context.Context) GetQueuesQueueArrayOutput

type GetQueuesQueueArrayInput

type GetQueuesQueueArrayInput interface {
	pulumi.Input

	ToGetQueuesQueueArrayOutput() GetQueuesQueueArrayOutput
	ToGetQueuesQueueArrayOutputWithContext(context.Context) GetQueuesQueueArrayOutput
}

GetQueuesQueueArrayInput is an input type that accepts GetQueuesQueueArray and GetQueuesQueueArrayOutput values. You can construct a concrete instance of `GetQueuesQueueArrayInput` via:

GetQueuesQueueArray{ GetQueuesQueueArgs{...} }

type GetQueuesQueueArrayOutput

type GetQueuesQueueArrayOutput struct{ *pulumi.OutputState }

func (GetQueuesQueueArrayOutput) ElementType

func (GetQueuesQueueArrayOutput) ElementType() reflect.Type

func (GetQueuesQueueArrayOutput) Index

func (GetQueuesQueueArrayOutput) ToGetQueuesQueueArrayOutput

func (o GetQueuesQueueArrayOutput) ToGetQueuesQueueArrayOutput() GetQueuesQueueArrayOutput

func (GetQueuesQueueArrayOutput) ToGetQueuesQueueArrayOutputWithContext

func (o GetQueuesQueueArrayOutput) ToGetQueuesQueueArrayOutputWithContext(ctx context.Context) GetQueuesQueueArrayOutput

type GetQueuesQueueInput

type GetQueuesQueueInput interface {
	pulumi.Input

	ToGetQueuesQueueOutput() GetQueuesQueueOutput
	ToGetQueuesQueueOutputWithContext(context.Context) GetQueuesQueueOutput
}

GetQueuesQueueInput is an input type that accepts GetQueuesQueueArgs and GetQueuesQueueOutput values. You can construct a concrete instance of `GetQueuesQueueInput` via:

GetQueuesQueueArgs{...}

type GetQueuesQueueOutput

type GetQueuesQueueOutput struct{ *pulumi.OutputState }

func (GetQueuesQueueOutput) Attributes

func (o GetQueuesQueueOutput) Attributes() pulumi.MapOutput

The attributes for the Queue.

func (GetQueuesQueueOutput) AutoDeleteState

func (o GetQueuesQueueOutput) AutoDeleteState() pulumi.BoolOutput

Specifies whether the Auto Delete attribute is configured.

func (GetQueuesQueueOutput) CreateTime

func (o GetQueuesQueueOutput) CreateTime() pulumi.StringOutput

CreateTime.

func (GetQueuesQueueOutput) ElementType

func (GetQueuesQueueOutput) ElementType() reflect.Type

func (GetQueuesQueueOutput) ExclusiveState

func (o GetQueuesQueueOutput) ExclusiveState() pulumi.BoolOutput

Specifies whether the queue is an exclusive queue.

func (GetQueuesQueueOutput) Id

The ID of the Queue. Its value is same as Queue Name.

func (GetQueuesQueueOutput) InstanceId

func (o GetQueuesQueueOutput) InstanceId() pulumi.StringOutput

The ID of the instance.

func (GetQueuesQueueOutput) LastConsumeTime

func (o GetQueuesQueueOutput) LastConsumeTime() pulumi.StringOutput

The last consume time.

func (GetQueuesQueueOutput) QueueName

The queue name.

func (GetQueuesQueueOutput) ToGetQueuesQueueOutput

func (o GetQueuesQueueOutput) ToGetQueuesQueueOutput() GetQueuesQueueOutput

func (GetQueuesQueueOutput) ToGetQueuesQueueOutputWithContext

func (o GetQueuesQueueOutput) ToGetQueuesQueueOutputWithContext(ctx context.Context) GetQueuesQueueOutput

func (GetQueuesQueueOutput) VirtualHostName

func (o GetQueuesQueueOutput) VirtualHostName() pulumi.StringOutput

The name of the virtual host.

type GetQueuesResult

type GetQueuesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id              string           `pulumi:"id"`
	Ids             []string         `pulumi:"ids"`
	InstanceId      string           `pulumi:"instanceId"`
	NameRegex       *string          `pulumi:"nameRegex"`
	Names           []string         `pulumi:"names"`
	OutputFile      *string          `pulumi:"outputFile"`
	Queues          []GetQueuesQueue `pulumi:"queues"`
	VirtualHostName string           `pulumi:"virtualHostName"`
}

A collection of values returned by getQueues.

func GetQueues

func GetQueues(ctx *pulumi.Context, args *GetQueuesArgs, opts ...pulumi.InvokeOption) (*GetQueuesResult, error)

This data source provides the Amqp Queues of the current Alibaba Cloud user.

> **NOTE:** Available in v1.127.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/amqp"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/amqp"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := amqp.GetQueues(ctx, &amqp.GetQueuesArgs{
			InstanceId:      "amqp-abc12345",
			VirtualHostName: "my-VirtualHost",
			Ids: []string{
				"my-Queue-1",
				"my-Queue-2",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("amqpQueueId1", ids.Queues[0].Id)
		nameRegex, err := amqp.GetQueues(ctx, &amqp.GetQueuesArgs{
			InstanceId:      "amqp-abc12345",
			VirtualHostName: "my-VirtualHost",
			NameRegex:       pulumi.StringRef("^my-Queue"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("amqpQueueId2", nameRegex.Queues[0].Id)
		return nil
	})
}

```

type GetQueuesResultOutput

type GetQueuesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getQueues.

func (GetQueuesResultOutput) ElementType

func (GetQueuesResultOutput) ElementType() reflect.Type

func (GetQueuesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetQueuesResultOutput) Ids

func (GetQueuesResultOutput) InstanceId

func (o GetQueuesResultOutput) InstanceId() pulumi.StringOutput

func (GetQueuesResultOutput) NameRegex

func (GetQueuesResultOutput) Names

func (GetQueuesResultOutput) OutputFile

func (GetQueuesResultOutput) Queues

func (GetQueuesResultOutput) ToGetQueuesResultOutput

func (o GetQueuesResultOutput) ToGetQueuesResultOutput() GetQueuesResultOutput

func (GetQueuesResultOutput) ToGetQueuesResultOutputWithContext

func (o GetQueuesResultOutput) ToGetQueuesResultOutputWithContext(ctx context.Context) GetQueuesResultOutput

func (GetQueuesResultOutput) VirtualHostName

func (o GetQueuesResultOutput) VirtualHostName() pulumi.StringOutput

type GetVirtualHostsArgs

type GetVirtualHostsArgs struct {
	// A list of Virtual Host IDs. Its element value is same as Virtual Host Name.
	Ids []string `pulumi:"ids"`
	// InstanceId.
	InstanceId string `pulumi:"instanceId"`
	// A regex string to filter results by Virtual Host name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getVirtualHosts.

type GetVirtualHostsHost

type GetVirtualHostsHost struct {
	// The ID of the Virtual Host.
	Id string `pulumi:"id"`
	// InstanceId.
	InstanceId string `pulumi:"instanceId"`
	// VirtualHostName.
	VirtualHostName string `pulumi:"virtualHostName"`
}

type GetVirtualHostsHostArgs

type GetVirtualHostsHostArgs struct {
	// The ID of the Virtual Host.
	Id pulumi.StringInput `pulumi:"id"`
	// InstanceId.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// VirtualHostName.
	VirtualHostName pulumi.StringInput `pulumi:"virtualHostName"`
}

func (GetVirtualHostsHostArgs) ElementType

func (GetVirtualHostsHostArgs) ElementType() reflect.Type

func (GetVirtualHostsHostArgs) ToGetVirtualHostsHostOutput

func (i GetVirtualHostsHostArgs) ToGetVirtualHostsHostOutput() GetVirtualHostsHostOutput

func (GetVirtualHostsHostArgs) ToGetVirtualHostsHostOutputWithContext

func (i GetVirtualHostsHostArgs) ToGetVirtualHostsHostOutputWithContext(ctx context.Context) GetVirtualHostsHostOutput

type GetVirtualHostsHostArray

type GetVirtualHostsHostArray []GetVirtualHostsHostInput

func (GetVirtualHostsHostArray) ElementType

func (GetVirtualHostsHostArray) ElementType() reflect.Type

func (GetVirtualHostsHostArray) ToGetVirtualHostsHostArrayOutput

func (i GetVirtualHostsHostArray) ToGetVirtualHostsHostArrayOutput() GetVirtualHostsHostArrayOutput

func (GetVirtualHostsHostArray) ToGetVirtualHostsHostArrayOutputWithContext

func (i GetVirtualHostsHostArray) ToGetVirtualHostsHostArrayOutputWithContext(ctx context.Context) GetVirtualHostsHostArrayOutput

type GetVirtualHostsHostArrayInput

type GetVirtualHostsHostArrayInput interface {
	pulumi.Input

	ToGetVirtualHostsHostArrayOutput() GetVirtualHostsHostArrayOutput
	ToGetVirtualHostsHostArrayOutputWithContext(context.Context) GetVirtualHostsHostArrayOutput
}

GetVirtualHostsHostArrayInput is an input type that accepts GetVirtualHostsHostArray and GetVirtualHostsHostArrayOutput values. You can construct a concrete instance of `GetVirtualHostsHostArrayInput` via:

GetVirtualHostsHostArray{ GetVirtualHostsHostArgs{...} }

type GetVirtualHostsHostArrayOutput

type GetVirtualHostsHostArrayOutput struct{ *pulumi.OutputState }

func (GetVirtualHostsHostArrayOutput) ElementType

func (GetVirtualHostsHostArrayOutput) Index

func (GetVirtualHostsHostArrayOutput) ToGetVirtualHostsHostArrayOutput

func (o GetVirtualHostsHostArrayOutput) ToGetVirtualHostsHostArrayOutput() GetVirtualHostsHostArrayOutput

func (GetVirtualHostsHostArrayOutput) ToGetVirtualHostsHostArrayOutputWithContext

func (o GetVirtualHostsHostArrayOutput) ToGetVirtualHostsHostArrayOutputWithContext(ctx context.Context) GetVirtualHostsHostArrayOutput

type GetVirtualHostsHostInput

type GetVirtualHostsHostInput interface {
	pulumi.Input

	ToGetVirtualHostsHostOutput() GetVirtualHostsHostOutput
	ToGetVirtualHostsHostOutputWithContext(context.Context) GetVirtualHostsHostOutput
}

GetVirtualHostsHostInput is an input type that accepts GetVirtualHostsHostArgs and GetVirtualHostsHostOutput values. You can construct a concrete instance of `GetVirtualHostsHostInput` via:

GetVirtualHostsHostArgs{...}

type GetVirtualHostsHostOutput

type GetVirtualHostsHostOutput struct{ *pulumi.OutputState }

func (GetVirtualHostsHostOutput) ElementType

func (GetVirtualHostsHostOutput) ElementType() reflect.Type

func (GetVirtualHostsHostOutput) Id

The ID of the Virtual Host.

func (GetVirtualHostsHostOutput) InstanceId

InstanceId.

func (GetVirtualHostsHostOutput) ToGetVirtualHostsHostOutput

func (o GetVirtualHostsHostOutput) ToGetVirtualHostsHostOutput() GetVirtualHostsHostOutput

func (GetVirtualHostsHostOutput) ToGetVirtualHostsHostOutputWithContext

func (o GetVirtualHostsHostOutput) ToGetVirtualHostsHostOutputWithContext(ctx context.Context) GetVirtualHostsHostOutput

func (GetVirtualHostsHostOutput) VirtualHostName

func (o GetVirtualHostsHostOutput) VirtualHostName() pulumi.StringOutput

VirtualHostName.

type GetVirtualHostsOutputArgs

type GetVirtualHostsOutputArgs struct {
	// A list of Virtual Host IDs. Its element value is same as Virtual Host Name.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// InstanceId.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// A regex string to filter results by Virtual Host name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getVirtualHosts.

func (GetVirtualHostsOutputArgs) ElementType

func (GetVirtualHostsOutputArgs) ElementType() reflect.Type

type GetVirtualHostsResult

type GetVirtualHostsResult struct {
	Hosts []GetVirtualHostsHost `pulumi:"hosts"`
	// The provider-assigned unique ID for this managed resource.
	Id         string   `pulumi:"id"`
	Ids        []string `pulumi:"ids"`
	InstanceId string   `pulumi:"instanceId"`
	NameRegex  *string  `pulumi:"nameRegex"`
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
}

A collection of values returned by getVirtualHosts.

func GetVirtualHosts

func GetVirtualHosts(ctx *pulumi.Context, args *GetVirtualHostsArgs, opts ...pulumi.InvokeOption) (*GetVirtualHostsResult, error)

This data source provides the Amqp Virtual Hosts of the current Alibaba Cloud user.

> **NOTE:** Available in v1.126.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/go/alicloud/amqp"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/amqp"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := amqp.GetVirtualHosts(ctx, &amqp.GetVirtualHostsArgs{
			InstanceId: "amqp-abc12345",
			Ids: []string{
				"my-VirtualHost-1",
				"my-VirtualHost-2",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("amqpVirtualHostId1", ids.Hosts[0].Id)
		nameRegex, err := amqp.GetVirtualHosts(ctx, &amqp.GetVirtualHostsArgs{
			InstanceId: "amqp-abc12345",
			NameRegex:  pulumi.StringRef("^my-VirtualHost"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("amqpVirtualHostId2", nameRegex.Hosts[0].Id)
		return nil
	})
}

```

type GetVirtualHostsResultOutput

type GetVirtualHostsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getVirtualHosts.

func (GetVirtualHostsResultOutput) ElementType

func (GetVirtualHostsResultOutput) Hosts

func (GetVirtualHostsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetVirtualHostsResultOutput) Ids

func (GetVirtualHostsResultOutput) InstanceId

func (GetVirtualHostsResultOutput) NameRegex

func (GetVirtualHostsResultOutput) Names

func (GetVirtualHostsResultOutput) OutputFile

func (GetVirtualHostsResultOutput) ToGetVirtualHostsResultOutput

func (o GetVirtualHostsResultOutput) ToGetVirtualHostsResultOutput() GetVirtualHostsResultOutput

func (GetVirtualHostsResultOutput) ToGetVirtualHostsResultOutputWithContext

func (o GetVirtualHostsResultOutput) ToGetVirtualHostsResultOutputWithContext(ctx context.Context) GetVirtualHostsResultOutput

type Instance

type Instance struct {
	pulumi.CustomResourceState

	// The instance name.
	InstanceName pulumi.StringOutput `pulumi:"instanceName"`
	// The Instance Type. Valid values: `professional`, `enterprise`, `vip`.
	InstanceType pulumi.StringOutput    `pulumi:"instanceType"`
	Logistics    pulumi.StringPtrOutput `pulumi:"logistics"`
	// The max eip tps. It is valid when `supportEip` is true. The valid value is [128, 45000] with the step size 128.
	MaxEipTps pulumi.StringPtrOutput `pulumi:"maxEipTps"`
	// The peak TPS traffic. The smallest valid value is 1000 and the largest value is 100,000.
	MaxTps pulumi.StringOutput `pulumi:"maxTps"`
	// The modify type. Valid values: `Downgrade`, `Upgrade`. It is required when updating other attributes.
	ModifyType pulumi.StringPtrOutput `pulumi:"modifyType"`
	// The payment type. Valid values: `Subscription`.
	PaymentType pulumi.StringOutput `pulumi:"paymentType"`
	// The period. Valid values: `1`, `12`, `2`, `24`, `3`, `6`.
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// The queue capacity. The smallest value is 50 and the step size 5.
	QueueCapacity pulumi.StringOutput `pulumi:"queueCapacity"`
	// RenewalDuration. Valid values: `1`, `12`, `2`, `3`, `6`.
	RenewalDuration pulumi.IntPtrOutput `pulumi:"renewalDuration"`
	// Auto-Renewal Cycle Unit Values Include: Month: Month. Year: Years. Valid values: `Month`, `Year`.
	RenewalDurationUnit pulumi.StringPtrOutput `pulumi:"renewalDurationUnit"`
	// Whether to renew an instance automatically or not. Default to "ManualRenewal".
	// - `AutoRenewal`: Auto renewal.
	// - `ManualRenewal`: Manual renewal.
	// - `NotRenewal`: No renewal any longer. After you specify this value, Alibaba Cloud stop sending notification of instance expiry, and only gives a brief reminder on the third day before the instance expiry.
	RenewalStatus pulumi.StringOutput `pulumi:"renewalStatus"`
	// The status of the resource.
	Status pulumi.StringOutput `pulumi:"status"`
	// The storage size. It is valid when `instanceType` is vip.
	StorageSize pulumi.StringPtrOutput `pulumi:"storageSize"`
	// Whether to support EIP.
	SupportEip pulumi.BoolOutput `pulumi:"supportEip"`
}

Provides a RabbitMQ (AMQP) Instance resource.

For information about RabbitMQ (AMQP) Instance and how to use it, see [What is Instance](https://www.alibabacloud.com/help/doc-detail/101631.htm).

> **NOTE:** Available in v1.128.0+.

> **NOTE:** The AMQP Instance is not support to be purchase automatically in the international site.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/amqp"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := amqp.NewInstance(ctx, "professional", &amqp.InstanceArgs{
			InstanceType:  pulumi.String("professional"),
			MaxEipTps:     pulumi.String("128"),
			MaxTps:        pulumi.String("1000"),
			PaymentType:   pulumi.String("Subscription"),
			Period:        pulumi.Int(1),
			QueueCapacity: pulumi.String("50"),
			SupportEip:    pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = amqp.NewInstance(ctx, "vip", &amqp.InstanceArgs{
			InstanceType:  pulumi.String("vip"),
			MaxEipTps:     pulumi.String("128"),
			MaxTps:        pulumi.String("5000"),
			PaymentType:   pulumi.String("Subscription"),
			Period:        pulumi.Int(1),
			QueueCapacity: pulumi.String("50"),
			StorageSize:   pulumi.String("700"),
			SupportEip:    pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RabbitMQ (AMQP) Instance can be imported using the id, e.g.

```sh

$ pulumi import alicloud:amqp/instance:Instance example <id>

```

func GetInstance

func GetInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)

GetInstance gets an existing Instance 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 NewInstance

func NewInstance(ctx *pulumi.Context,
	name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error)

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

func (*Instance) ElementType

func (*Instance) ElementType() reflect.Type

func (*Instance) ToInstanceOutput

func (i *Instance) ToInstanceOutput() InstanceOutput

func (*Instance) ToInstanceOutputWithContext

func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

type InstanceArgs

type InstanceArgs struct {
	// The instance name.
	InstanceName pulumi.StringPtrInput
	// The Instance Type. Valid values: `professional`, `enterprise`, `vip`.
	InstanceType pulumi.StringInput
	Logistics    pulumi.StringPtrInput
	// The max eip tps. It is valid when `supportEip` is true. The valid value is [128, 45000] with the step size 128.
	MaxEipTps pulumi.StringPtrInput
	// The peak TPS traffic. The smallest valid value is 1000 and the largest value is 100,000.
	MaxTps pulumi.StringInput
	// The modify type. Valid values: `Downgrade`, `Upgrade`. It is required when updating other attributes.
	ModifyType pulumi.StringPtrInput
	// The payment type. Valid values: `Subscription`.
	PaymentType pulumi.StringInput
	// The period. Valid values: `1`, `12`, `2`, `24`, `3`, `6`.
	Period pulumi.IntPtrInput
	// The queue capacity. The smallest value is 50 and the step size 5.
	QueueCapacity pulumi.StringInput
	// RenewalDuration. Valid values: `1`, `12`, `2`, `3`, `6`.
	RenewalDuration pulumi.IntPtrInput
	// Auto-Renewal Cycle Unit Values Include: Month: Month. Year: Years. Valid values: `Month`, `Year`.
	RenewalDurationUnit pulumi.StringPtrInput
	// Whether to renew an instance automatically or not. Default to "ManualRenewal".
	// - `AutoRenewal`: Auto renewal.
	// - `ManualRenewal`: Manual renewal.
	// - `NotRenewal`: No renewal any longer. After you specify this value, Alibaba Cloud stop sending notification of instance expiry, and only gives a brief reminder on the third day before the instance expiry.
	RenewalStatus pulumi.StringPtrInput
	// The storage size. It is valid when `instanceType` is vip.
	StorageSize pulumi.StringPtrInput
	// Whether to support EIP.
	SupportEip pulumi.BoolInput
}

The set of arguments for constructing a Instance resource.

func (InstanceArgs) ElementType

func (InstanceArgs) ElementType() reflect.Type

type InstanceArray

type InstanceArray []InstanceInput

func (InstanceArray) ElementType

func (InstanceArray) ElementType() reflect.Type

func (InstanceArray) ToInstanceArrayOutput

func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArray) ToInstanceArrayOutputWithContext

func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceArrayInput

type InstanceArrayInput interface {
	pulumi.Input

	ToInstanceArrayOutput() InstanceArrayOutput
	ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput
}

InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values. You can construct a concrete instance of `InstanceArrayInput` via:

InstanceArray{ InstanceArgs{...} }

type InstanceArrayOutput

type InstanceArrayOutput struct{ *pulumi.OutputState }

func (InstanceArrayOutput) ElementType

func (InstanceArrayOutput) ElementType() reflect.Type

func (InstanceArrayOutput) Index

func (InstanceArrayOutput) ToInstanceArrayOutput

func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArrayOutput) ToInstanceArrayOutputWithContext

func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceInput

type InstanceInput interface {
	pulumi.Input

	ToInstanceOutput() InstanceOutput
	ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
}

type InstanceMap

type InstanceMap map[string]InstanceInput

func (InstanceMap) ElementType

func (InstanceMap) ElementType() reflect.Type

func (InstanceMap) ToInstanceMapOutput

func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMap) ToInstanceMapOutputWithContext

func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceMapInput

type InstanceMapInput interface {
	pulumi.Input

	ToInstanceMapOutput() InstanceMapOutput
	ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput
}

InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:

InstanceMap{ "key": InstanceArgs{...} }

type InstanceMapOutput

type InstanceMapOutput struct{ *pulumi.OutputState }

func (InstanceMapOutput) ElementType

func (InstanceMapOutput) ElementType() reflect.Type

func (InstanceMapOutput) MapIndex

func (InstanceMapOutput) ToInstanceMapOutput

func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMapOutput) ToInstanceMapOutputWithContext

func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceOutput

type InstanceOutput struct{ *pulumi.OutputState }

func (InstanceOutput) ElementType

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) InstanceName

func (o InstanceOutput) InstanceName() pulumi.StringOutput

The instance name.

func (InstanceOutput) InstanceType

func (o InstanceOutput) InstanceType() pulumi.StringOutput

The Instance Type. Valid values: `professional`, `enterprise`, `vip`.

func (InstanceOutput) Logistics

func (o InstanceOutput) Logistics() pulumi.StringPtrOutput

func (InstanceOutput) MaxEipTps

func (o InstanceOutput) MaxEipTps() pulumi.StringPtrOutput

The max eip tps. It is valid when `supportEip` is true. The valid value is [128, 45000] with the step size 128.

func (InstanceOutput) MaxTps

func (o InstanceOutput) MaxTps() pulumi.StringOutput

The peak TPS traffic. The smallest valid value is 1000 and the largest value is 100,000.

func (InstanceOutput) ModifyType

func (o InstanceOutput) ModifyType() pulumi.StringPtrOutput

The modify type. Valid values: `Downgrade`, `Upgrade`. It is required when updating other attributes.

func (InstanceOutput) PaymentType

func (o InstanceOutput) PaymentType() pulumi.StringOutput

The payment type. Valid values: `Subscription`.

func (InstanceOutput) Period

func (o InstanceOutput) Period() pulumi.IntPtrOutput

The period. Valid values: `1`, `12`, `2`, `24`, `3`, `6`.

func (InstanceOutput) QueueCapacity

func (o InstanceOutput) QueueCapacity() pulumi.StringOutput

The queue capacity. The smallest value is 50 and the step size 5.

func (InstanceOutput) RenewalDuration

func (o InstanceOutput) RenewalDuration() pulumi.IntPtrOutput

RenewalDuration. Valid values: `1`, `12`, `2`, `3`, `6`.

func (InstanceOutput) RenewalDurationUnit

func (o InstanceOutput) RenewalDurationUnit() pulumi.StringPtrOutput

Auto-Renewal Cycle Unit Values Include: Month: Month. Year: Years. Valid values: `Month`, `Year`.

func (InstanceOutput) RenewalStatus

func (o InstanceOutput) RenewalStatus() pulumi.StringOutput

Whether to renew an instance automatically or not. Default to "ManualRenewal". - `AutoRenewal`: Auto renewal. - `ManualRenewal`: Manual renewal. - `NotRenewal`: No renewal any longer. After you specify this value, Alibaba Cloud stop sending notification of instance expiry, and only gives a brief reminder on the third day before the instance expiry.

func (InstanceOutput) Status

func (o InstanceOutput) Status() pulumi.StringOutput

The status of the resource.

func (InstanceOutput) StorageSize

func (o InstanceOutput) StorageSize() pulumi.StringPtrOutput

The storage size. It is valid when `instanceType` is vip.

func (InstanceOutput) SupportEip

func (o InstanceOutput) SupportEip() pulumi.BoolOutput

Whether to support EIP.

func (InstanceOutput) ToInstanceOutput

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext

func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

type InstanceState

type InstanceState struct {
	// The instance name.
	InstanceName pulumi.StringPtrInput
	// The Instance Type. Valid values: `professional`, `enterprise`, `vip`.
	InstanceType pulumi.StringPtrInput
	Logistics    pulumi.StringPtrInput
	// The max eip tps. It is valid when `supportEip` is true. The valid value is [128, 45000] with the step size 128.
	MaxEipTps pulumi.StringPtrInput
	// The peak TPS traffic. The smallest valid value is 1000 and the largest value is 100,000.
	MaxTps pulumi.StringPtrInput
	// The modify type. Valid values: `Downgrade`, `Upgrade`. It is required when updating other attributes.
	ModifyType pulumi.StringPtrInput
	// The payment type. Valid values: `Subscription`.
	PaymentType pulumi.StringPtrInput
	// The period. Valid values: `1`, `12`, `2`, `24`, `3`, `6`.
	Period pulumi.IntPtrInput
	// The queue capacity. The smallest value is 50 and the step size 5.
	QueueCapacity pulumi.StringPtrInput
	// RenewalDuration. Valid values: `1`, `12`, `2`, `3`, `6`.
	RenewalDuration pulumi.IntPtrInput
	// Auto-Renewal Cycle Unit Values Include: Month: Month. Year: Years. Valid values: `Month`, `Year`.
	RenewalDurationUnit pulumi.StringPtrInput
	// Whether to renew an instance automatically or not. Default to "ManualRenewal".
	// - `AutoRenewal`: Auto renewal.
	// - `ManualRenewal`: Manual renewal.
	// - `NotRenewal`: No renewal any longer. After you specify this value, Alibaba Cloud stop sending notification of instance expiry, and only gives a brief reminder on the third day before the instance expiry.
	RenewalStatus pulumi.StringPtrInput
	// The status of the resource.
	Status pulumi.StringPtrInput
	// The storage size. It is valid when `instanceType` is vip.
	StorageSize pulumi.StringPtrInput
	// Whether to support EIP.
	SupportEip pulumi.BoolPtrInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

type Queue

type Queue struct {
	pulumi.CustomResourceState

	// Specifies whether the Auto Delete attribute is configured. Valid values:
	// * true: The Auto Delete attribute is configured. The queue is automatically deleted after the last subscription from consumers to this queue is canceled.
	// * false: The Auto Delete attribute is not configured.
	AutoDeleteState pulumi.BoolPtrOutput `pulumi:"autoDeleteState"`
	// The validity period after which the queue is automatically deleted.
	// If the queue is not accessed within a specified period of time, it is automatically deleted.
	AutoExpireState pulumi.StringPtrOutput `pulumi:"autoExpireState"`
	// The dead-letter exchange. A dead-letter exchange is used to receive rejected messages.
	// If a consumer rejects a message that cannot be retried, this message is routed to a specified dead-letter exchange.
	// Then, the dead-letter exchange routes the message to the queue that is bound to the dead-letter exchange.
	DeadLetterExchange pulumi.StringPtrOutput `pulumi:"deadLetterExchange"`
	// The dead letter routing key.
	DeadLetterRoutingKey pulumi.StringPtrOutput `pulumi:"deadLetterRoutingKey"`
	// Specifies whether the queue is an exclusive queue. Valid values:
	// * true: The queue is an exclusive queue. It can be used only for the connection that declares the exclusive queue. After the connection is closed, the exclusive queue is automatically deleted.
	// * false: The queue is not an exclusive queue.
	ExclusiveState pulumi.BoolPtrOutput `pulumi:"exclusiveState"`
	// The ID of the instance.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The maximum number of messages that can be stored in the queue.
	// If this threshold is exceeded, the earliest messages that are routed to the queue are discarded.
	MaxLength pulumi.StringPtrOutput `pulumi:"maxLength"`
	// The highest priority supported by the queue. This parameter is set to a positive integer.
	// Valid values: 0 to 255. Recommended values: 1 to 10
	MaximumPriority pulumi.IntPtrOutput `pulumi:"maximumPriority"`
	// The message TTL of the queue.
	// If the retention period of a message in the queue exceeds the message TTL of the queue, the message expires.
	// Message TTL must be set to a non-negative integer, in milliseconds.
	// For example, if the message TTL of the queue is 1000, messages survive for at most 1 second in the queue.
	MessageTtl pulumi.StringPtrOutput `pulumi:"messageTtl"`
	// The name of the queue.
	// The queue name must be 1 to 255 characters in length, and can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).
	QueueName pulumi.StringOutput `pulumi:"queueName"`
	// The name of the virtual host.
	VirtualHostName pulumi.StringOutput `pulumi:"virtualHostName"`
}

Provides a RabbitMQ (AMQP) Queue resource.

For information about RabbitMQ (AMQP) Queue and how to use it, see [What is Queue](https://www.alibabacloud.com/help/doc-detail/101631.htm).

> **NOTE:** Available in v1.127.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/amqp"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleVirtualHost, err := amqp.NewVirtualHost(ctx, "exampleVirtualHost", &amqp.VirtualHostArgs{
			InstanceId:      pulumi.String("amqp-abc12345"),
			VirtualHostName: pulumi.String("my-VirtualHost"),
		})
		if err != nil {
			return err
		}
		_, err = amqp.NewQueue(ctx, "exampleQueue", &amqp.QueueArgs{
			InstanceId:      exampleVirtualHost.InstanceId,
			QueueName:       pulumi.String("my-Queue"),
			VirtualHostName: exampleVirtualHost.VirtualHostName,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RabbitMQ (AMQP) Queue can be imported using the id, e.g.

```sh

$ pulumi import alicloud:amqp/queue:Queue example <instance_id>:<virtual_host_name>:<queue_name>

```

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

func (*Queue) ElementType() reflect.Type

func (*Queue) ToQueueOutput

func (i *Queue) ToQueueOutput() QueueOutput

func (*Queue) ToQueueOutputWithContext

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

type QueueArgs

type QueueArgs struct {
	// Specifies whether the Auto Delete attribute is configured. Valid values:
	// * true: The Auto Delete attribute is configured. The queue is automatically deleted after the last subscription from consumers to this queue is canceled.
	// * false: The Auto Delete attribute is not configured.
	AutoDeleteState pulumi.BoolPtrInput
	// The validity period after which the queue is automatically deleted.
	// If the queue is not accessed within a specified period of time, it is automatically deleted.
	AutoExpireState pulumi.StringPtrInput
	// The dead-letter exchange. A dead-letter exchange is used to receive rejected messages.
	// If a consumer rejects a message that cannot be retried, this message is routed to a specified dead-letter exchange.
	// Then, the dead-letter exchange routes the message to the queue that is bound to the dead-letter exchange.
	DeadLetterExchange pulumi.StringPtrInput
	// The dead letter routing key.
	DeadLetterRoutingKey pulumi.StringPtrInput
	// Specifies whether the queue is an exclusive queue. Valid values:
	// * true: The queue is an exclusive queue. It can be used only for the connection that declares the exclusive queue. After the connection is closed, the exclusive queue is automatically deleted.
	// * false: The queue is not an exclusive queue.
	ExclusiveState pulumi.BoolPtrInput
	// The ID of the instance.
	InstanceId pulumi.StringInput
	// The maximum number of messages that can be stored in the queue.
	// If this threshold is exceeded, the earliest messages that are routed to the queue are discarded.
	MaxLength pulumi.StringPtrInput
	// The highest priority supported by the queue. This parameter is set to a positive integer.
	// Valid values: 0 to 255. Recommended values: 1 to 10
	MaximumPriority pulumi.IntPtrInput
	// The message TTL of the queue.
	// If the retention period of a message in the queue exceeds the message TTL of the queue, the message expires.
	// Message TTL must be set to a non-negative integer, in milliseconds.
	// For example, if the message TTL of the queue is 1000, messages survive for at most 1 second in the queue.
	MessageTtl pulumi.StringPtrInput
	// The name of the queue.
	// The queue name must be 1 to 255 characters in length, and can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).
	QueueName pulumi.StringInput
	// The name of the virtual host.
	VirtualHostName pulumi.StringInput
}

The set of arguments for constructing a Queue resource.

func (QueueArgs) ElementType

func (QueueArgs) ElementType() reflect.Type

type QueueArray

type QueueArray []QueueInput

func (QueueArray) ElementType

func (QueueArray) ElementType() reflect.Type

func (QueueArray) ToQueueArrayOutput

func (i QueueArray) ToQueueArrayOutput() QueueArrayOutput

func (QueueArray) ToQueueArrayOutputWithContext

func (i QueueArray) ToQueueArrayOutputWithContext(ctx context.Context) QueueArrayOutput

type QueueArrayInput

type QueueArrayInput interface {
	pulumi.Input

	ToQueueArrayOutput() QueueArrayOutput
	ToQueueArrayOutputWithContext(context.Context) QueueArrayOutput
}

QueueArrayInput is an input type that accepts QueueArray and QueueArrayOutput values. You can construct a concrete instance of `QueueArrayInput` via:

QueueArray{ QueueArgs{...} }

type QueueArrayOutput

type QueueArrayOutput struct{ *pulumi.OutputState }

func (QueueArrayOutput) ElementType

func (QueueArrayOutput) ElementType() reflect.Type

func (QueueArrayOutput) Index

func (QueueArrayOutput) ToQueueArrayOutput

func (o QueueArrayOutput) ToQueueArrayOutput() QueueArrayOutput

func (QueueArrayOutput) ToQueueArrayOutputWithContext

func (o QueueArrayOutput) ToQueueArrayOutputWithContext(ctx context.Context) QueueArrayOutput

type QueueInput

type QueueInput interface {
	pulumi.Input

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

type QueueMap

type QueueMap map[string]QueueInput

func (QueueMap) ElementType

func (QueueMap) ElementType() reflect.Type

func (QueueMap) ToQueueMapOutput

func (i QueueMap) ToQueueMapOutput() QueueMapOutput

func (QueueMap) ToQueueMapOutputWithContext

func (i QueueMap) ToQueueMapOutputWithContext(ctx context.Context) QueueMapOutput

type QueueMapInput

type QueueMapInput interface {
	pulumi.Input

	ToQueueMapOutput() QueueMapOutput
	ToQueueMapOutputWithContext(context.Context) QueueMapOutput
}

QueueMapInput is an input type that accepts QueueMap and QueueMapOutput values. You can construct a concrete instance of `QueueMapInput` via:

QueueMap{ "key": QueueArgs{...} }

type QueueMapOutput

type QueueMapOutput struct{ *pulumi.OutputState }

func (QueueMapOutput) ElementType

func (QueueMapOutput) ElementType() reflect.Type

func (QueueMapOutput) MapIndex

func (QueueMapOutput) ToQueueMapOutput

func (o QueueMapOutput) ToQueueMapOutput() QueueMapOutput

func (QueueMapOutput) ToQueueMapOutputWithContext

func (o QueueMapOutput) ToQueueMapOutputWithContext(ctx context.Context) QueueMapOutput

type QueueOutput

type QueueOutput struct{ *pulumi.OutputState }

func (QueueOutput) AutoDeleteState

func (o QueueOutput) AutoDeleteState() pulumi.BoolPtrOutput

Specifies whether the Auto Delete attribute is configured. Valid values: * true: The Auto Delete attribute is configured. The queue is automatically deleted after the last subscription from consumers to this queue is canceled. * false: The Auto Delete attribute is not configured.

func (QueueOutput) AutoExpireState

func (o QueueOutput) AutoExpireState() pulumi.StringPtrOutput

The validity period after which the queue is automatically deleted. If the queue is not accessed within a specified period of time, it is automatically deleted.

func (QueueOutput) DeadLetterExchange

func (o QueueOutput) DeadLetterExchange() pulumi.StringPtrOutput

The dead-letter exchange. A dead-letter exchange is used to receive rejected messages. If a consumer rejects a message that cannot be retried, this message is routed to a specified dead-letter exchange. Then, the dead-letter exchange routes the message to the queue that is bound to the dead-letter exchange.

func (QueueOutput) DeadLetterRoutingKey

func (o QueueOutput) DeadLetterRoutingKey() pulumi.StringPtrOutput

The dead letter routing key.

func (QueueOutput) ElementType

func (QueueOutput) ElementType() reflect.Type

func (QueueOutput) ExclusiveState

func (o QueueOutput) ExclusiveState() pulumi.BoolPtrOutput

Specifies whether the queue is an exclusive queue. Valid values: * true: The queue is an exclusive queue. It can be used only for the connection that declares the exclusive queue. After the connection is closed, the exclusive queue is automatically deleted. * false: The queue is not an exclusive queue.

func (QueueOutput) InstanceId

func (o QueueOutput) InstanceId() pulumi.StringOutput

The ID of the instance.

func (QueueOutput) MaxLength

func (o QueueOutput) MaxLength() pulumi.StringPtrOutput

The maximum number of messages that can be stored in the queue. If this threshold is exceeded, the earliest messages that are routed to the queue are discarded.

func (QueueOutput) MaximumPriority

func (o QueueOutput) MaximumPriority() pulumi.IntPtrOutput

The highest priority supported by the queue. This parameter is set to a positive integer. Valid values: 0 to 255. Recommended values: 1 to 10

func (QueueOutput) MessageTtl

func (o QueueOutput) MessageTtl() pulumi.StringPtrOutput

The message TTL of the queue. If the retention period of a message in the queue exceeds the message TTL of the queue, the message expires. Message TTL must be set to a non-negative integer, in milliseconds. For example, if the message TTL of the queue is 1000, messages survive for at most 1 second in the queue.

func (QueueOutput) QueueName

func (o QueueOutput) QueueName() pulumi.StringOutput

The name of the queue. The queue name must be 1 to 255 characters in length, and can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).

func (QueueOutput) ToQueueOutput

func (o QueueOutput) ToQueueOutput() QueueOutput

func (QueueOutput) ToQueueOutputWithContext

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

func (QueueOutput) VirtualHostName

func (o QueueOutput) VirtualHostName() pulumi.StringOutput

The name of the virtual host.

type QueueState

type QueueState struct {
	// Specifies whether the Auto Delete attribute is configured. Valid values:
	// * true: The Auto Delete attribute is configured. The queue is automatically deleted after the last subscription from consumers to this queue is canceled.
	// * false: The Auto Delete attribute is not configured.
	AutoDeleteState pulumi.BoolPtrInput
	// The validity period after which the queue is automatically deleted.
	// If the queue is not accessed within a specified period of time, it is automatically deleted.
	AutoExpireState pulumi.StringPtrInput
	// The dead-letter exchange. A dead-letter exchange is used to receive rejected messages.
	// If a consumer rejects a message that cannot be retried, this message is routed to a specified dead-letter exchange.
	// Then, the dead-letter exchange routes the message to the queue that is bound to the dead-letter exchange.
	DeadLetterExchange pulumi.StringPtrInput
	// The dead letter routing key.
	DeadLetterRoutingKey pulumi.StringPtrInput
	// Specifies whether the queue is an exclusive queue. Valid values:
	// * true: The queue is an exclusive queue. It can be used only for the connection that declares the exclusive queue. After the connection is closed, the exclusive queue is automatically deleted.
	// * false: The queue is not an exclusive queue.
	ExclusiveState pulumi.BoolPtrInput
	// The ID of the instance.
	InstanceId pulumi.StringPtrInput
	// The maximum number of messages that can be stored in the queue.
	// If this threshold is exceeded, the earliest messages that are routed to the queue are discarded.
	MaxLength pulumi.StringPtrInput
	// The highest priority supported by the queue. This parameter is set to a positive integer.
	// Valid values: 0 to 255. Recommended values: 1 to 10
	MaximumPriority pulumi.IntPtrInput
	// The message TTL of the queue.
	// If the retention period of a message in the queue exceeds the message TTL of the queue, the message expires.
	// Message TTL must be set to a non-negative integer, in milliseconds.
	// For example, if the message TTL of the queue is 1000, messages survive for at most 1 second in the queue.
	MessageTtl pulumi.StringPtrInput
	// The name of the queue.
	// The queue name must be 1 to 255 characters in length, and can contain only letters, digits, hyphens (-), underscores (_), periods (.), and at signs (@).
	QueueName pulumi.StringPtrInput
	// The name of the virtual host.
	VirtualHostName pulumi.StringPtrInput
}

func (QueueState) ElementType

func (QueueState) ElementType() reflect.Type

type VirtualHost

type VirtualHost struct {
	pulumi.CustomResourceState

	// InstanceId.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// VirtualHostName.
	VirtualHostName pulumi.StringOutput `pulumi:"virtualHostName"`
}

Provides a RabbitMQ (AMQP) Virtual Host resource.

For information about RabbitMQ (AMQP) Virtual Host and how to use it, see [What is Virtual Host](https://www.alibabacloud.com/help/product/100989.html).

> **NOTE:** Available in v1.126.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/amqp"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := amqp.NewVirtualHost(ctx, "example", &amqp.VirtualHostArgs{
			InstanceId:      pulumi.String("amqp-abc12345"),
			VirtualHostName: pulumi.String("my-VirtualHost"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RabbitMQ (AMQP) Virtual Host can be imported using the id, e.g.

```sh

$ pulumi import alicloud:amqp/virtualHost:VirtualHost example <instance_id>:<virtual_host_name>

```

func GetVirtualHost

func GetVirtualHost(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VirtualHostState, opts ...pulumi.ResourceOption) (*VirtualHost, error)

GetVirtualHost gets an existing VirtualHost 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 NewVirtualHost

func NewVirtualHost(ctx *pulumi.Context,
	name string, args *VirtualHostArgs, opts ...pulumi.ResourceOption) (*VirtualHost, error)

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

func (*VirtualHost) ElementType

func (*VirtualHost) ElementType() reflect.Type

func (*VirtualHost) ToVirtualHostOutput

func (i *VirtualHost) ToVirtualHostOutput() VirtualHostOutput

func (*VirtualHost) ToVirtualHostOutputWithContext

func (i *VirtualHost) ToVirtualHostOutputWithContext(ctx context.Context) VirtualHostOutput

type VirtualHostArgs

type VirtualHostArgs struct {
	// InstanceId.
	InstanceId pulumi.StringInput
	// VirtualHostName.
	VirtualHostName pulumi.StringInput
}

The set of arguments for constructing a VirtualHost resource.

func (VirtualHostArgs) ElementType

func (VirtualHostArgs) ElementType() reflect.Type

type VirtualHostArray

type VirtualHostArray []VirtualHostInput

func (VirtualHostArray) ElementType

func (VirtualHostArray) ElementType() reflect.Type

func (VirtualHostArray) ToVirtualHostArrayOutput

func (i VirtualHostArray) ToVirtualHostArrayOutput() VirtualHostArrayOutput

func (VirtualHostArray) ToVirtualHostArrayOutputWithContext

func (i VirtualHostArray) ToVirtualHostArrayOutputWithContext(ctx context.Context) VirtualHostArrayOutput

type VirtualHostArrayInput

type VirtualHostArrayInput interface {
	pulumi.Input

	ToVirtualHostArrayOutput() VirtualHostArrayOutput
	ToVirtualHostArrayOutputWithContext(context.Context) VirtualHostArrayOutput
}

VirtualHostArrayInput is an input type that accepts VirtualHostArray and VirtualHostArrayOutput values. You can construct a concrete instance of `VirtualHostArrayInput` via:

VirtualHostArray{ VirtualHostArgs{...} }

type VirtualHostArrayOutput

type VirtualHostArrayOutput struct{ *pulumi.OutputState }

func (VirtualHostArrayOutput) ElementType

func (VirtualHostArrayOutput) ElementType() reflect.Type

func (VirtualHostArrayOutput) Index

func (VirtualHostArrayOutput) ToVirtualHostArrayOutput

func (o VirtualHostArrayOutput) ToVirtualHostArrayOutput() VirtualHostArrayOutput

func (VirtualHostArrayOutput) ToVirtualHostArrayOutputWithContext

func (o VirtualHostArrayOutput) ToVirtualHostArrayOutputWithContext(ctx context.Context) VirtualHostArrayOutput

type VirtualHostInput

type VirtualHostInput interface {
	pulumi.Input

	ToVirtualHostOutput() VirtualHostOutput
	ToVirtualHostOutputWithContext(ctx context.Context) VirtualHostOutput
}

type VirtualHostMap

type VirtualHostMap map[string]VirtualHostInput

func (VirtualHostMap) ElementType

func (VirtualHostMap) ElementType() reflect.Type

func (VirtualHostMap) ToVirtualHostMapOutput

func (i VirtualHostMap) ToVirtualHostMapOutput() VirtualHostMapOutput

func (VirtualHostMap) ToVirtualHostMapOutputWithContext

func (i VirtualHostMap) ToVirtualHostMapOutputWithContext(ctx context.Context) VirtualHostMapOutput

type VirtualHostMapInput

type VirtualHostMapInput interface {
	pulumi.Input

	ToVirtualHostMapOutput() VirtualHostMapOutput
	ToVirtualHostMapOutputWithContext(context.Context) VirtualHostMapOutput
}

VirtualHostMapInput is an input type that accepts VirtualHostMap and VirtualHostMapOutput values. You can construct a concrete instance of `VirtualHostMapInput` via:

VirtualHostMap{ "key": VirtualHostArgs{...} }

type VirtualHostMapOutput

type VirtualHostMapOutput struct{ *pulumi.OutputState }

func (VirtualHostMapOutput) ElementType

func (VirtualHostMapOutput) ElementType() reflect.Type

func (VirtualHostMapOutput) MapIndex

func (VirtualHostMapOutput) ToVirtualHostMapOutput

func (o VirtualHostMapOutput) ToVirtualHostMapOutput() VirtualHostMapOutput

func (VirtualHostMapOutput) ToVirtualHostMapOutputWithContext

func (o VirtualHostMapOutput) ToVirtualHostMapOutputWithContext(ctx context.Context) VirtualHostMapOutput

type VirtualHostOutput

type VirtualHostOutput struct{ *pulumi.OutputState }

func (VirtualHostOutput) ElementType

func (VirtualHostOutput) ElementType() reflect.Type

func (VirtualHostOutput) InstanceId

func (o VirtualHostOutput) InstanceId() pulumi.StringOutput

InstanceId.

func (VirtualHostOutput) ToVirtualHostOutput

func (o VirtualHostOutput) ToVirtualHostOutput() VirtualHostOutput

func (VirtualHostOutput) ToVirtualHostOutputWithContext

func (o VirtualHostOutput) ToVirtualHostOutputWithContext(ctx context.Context) VirtualHostOutput

func (VirtualHostOutput) VirtualHostName

func (o VirtualHostOutput) VirtualHostName() pulumi.StringOutput

VirtualHostName.

type VirtualHostState

type VirtualHostState struct {
	// InstanceId.
	InstanceId pulumi.StringPtrInput
	// VirtualHostName.
	VirtualHostName pulumi.StringPtrInput
}

func (VirtualHostState) ElementType

func (VirtualHostState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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