sqs

package
v4.38.1 Latest Latest
Warning

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

Go to latest
Published: Mar 10, 2022 License: Apache-2.0 Imports: 7 Imported by: 5

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type LookupQueueArgs

type LookupQueueArgs struct {
	// The name of the queue to match.
	Name string `pulumi:"name"`
	// A map of tags for the resource.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getQueue.

type LookupQueueOutputArgs added in v4.21.0

type LookupQueueOutputArgs struct {
	// The name of the queue to match.
	Name pulumi.StringInput `pulumi:"name"`
	// A map of tags for the resource.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getQueue.

func (LookupQueueOutputArgs) ElementType added in v4.21.0

func (LookupQueueOutputArgs) ElementType() reflect.Type

type LookupQueueResult

type LookupQueueResult struct {
	// The Amazon Resource Name (ARN) of the queue.
	Arn string `pulumi:"arn"`
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
	// A map of tags for the resource.
	Tags map[string]string `pulumi:"tags"`
	// The URL of the queue.
	Url string `pulumi:"url"`
}

A collection of values returned by getQueue.

func LookupQueue

func LookupQueue(ctx *pulumi.Context, args *LookupQueueArgs, opts ...pulumi.InvokeOption) (*LookupQueueResult, error)

Use this data source to get the ARN and URL of queue in AWS Simple Queue Service (SQS). By using this data source, you can reference SQS queues without having to hardcode the ARNs as input.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/sqs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := sqs.LookupQueue(ctx, &sqs.LookupQueueArgs{
			Name: "queue",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupQueueResultOutput added in v4.21.0

type LookupQueueResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getQueue.

func LookupQueueOutput added in v4.21.0

func LookupQueueOutput(ctx *pulumi.Context, args LookupQueueOutputArgs, opts ...pulumi.InvokeOption) LookupQueueResultOutput

func (LookupQueueResultOutput) Arn added in v4.21.0

The Amazon Resource Name (ARN) of the queue.

func (LookupQueueResultOutput) ElementType added in v4.21.0

func (LookupQueueResultOutput) ElementType() reflect.Type

func (LookupQueueResultOutput) Id added in v4.21.0

The provider-assigned unique ID for this managed resource.

func (LookupQueueResultOutput) Name added in v4.21.0

func (LookupQueueResultOutput) Tags added in v4.21.0

A map of tags for the resource.

func (LookupQueueResultOutput) ToLookupQueueResultOutput added in v4.21.0

func (o LookupQueueResultOutput) ToLookupQueueResultOutput() LookupQueueResultOutput

func (LookupQueueResultOutput) ToLookupQueueResultOutputWithContext added in v4.21.0

func (o LookupQueueResultOutput) ToLookupQueueResultOutputWithContext(ctx context.Context) LookupQueueResultOutput

func (LookupQueueResultOutput) Url added in v4.21.0

The URL of the queue.

type Queue

type Queue struct {
	pulumi.CustomResourceState

	// The ARN of the SQS queue
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Enables content-based deduplication for FIFO queues. For more information, see the [related documentation](http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing)
	ContentBasedDeduplication pulumi.BoolPtrOutput `pulumi:"contentBasedDeduplication"`
	// Specifies whether message deduplication occurs at the message group or queue level. Valid values are `messageGroup` and `queue` (default).
	DeduplicationScope pulumi.StringOutput `pulumi:"deduplicationScope"`
	// The time in seconds that the delivery of all messages in the queue will be delayed. An integer from 0 to 900 (15 minutes). The default for this attribute is 0 seconds.
	DelaySeconds pulumi.IntPtrOutput `pulumi:"delaySeconds"`
	// Boolean designating a FIFO queue. If not set, it defaults to `false` making it standard.
	FifoQueue pulumi.BoolPtrOutput `pulumi:"fifoQueue"`
	// Specifies whether the FIFO queue throughput quota applies to the entire queue or per message group. Valid values are `perQueue` (default) and `perMessageGroupId`.
	FifoThroughputLimit pulumi.StringOutput `pulumi:"fifoThroughputLimit"`
	// The length of time, in seconds, for which Amazon SQS can reuse a data key to encrypt or decrypt messages before calling AWS KMS again. An integer representing seconds, between 60 seconds (1 minute) and 86,400 seconds (24 hours). The default is 300 (5 minutes).
	KmsDataKeyReusePeriodSeconds pulumi.IntOutput `pulumi:"kmsDataKeyReusePeriodSeconds"`
	// The ID of an AWS-managed customer master key (CMK) for Amazon SQS or a custom CMK. For more information, see [Key Terms](http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms).
	KmsMasterKeyId pulumi.StringPtrOutput `pulumi:"kmsMasterKeyId"`
	// The limit of how many bytes a message can contain before Amazon SQS rejects it. An integer from 1024 bytes (1 KiB) up to 262144 bytes (256 KiB). The default for this attribute is 262144 (256 KiB).
	MaxMessageSize pulumi.IntPtrOutput `pulumi:"maxMessageSize"`
	// The number of seconds Amazon SQS retains a message. Integer representing seconds, from 60 (1 minute) to 1209600 (14 days). The default for this attribute is 345600 (4 days).
	MessageRetentionSeconds pulumi.IntPtrOutput `pulumi:"messageRetentionSeconds"`
	// The name of the queue. Queue names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 80 characters long. For a FIFO (first-in-first-out) queue, the name must end with the `.fifo` suffix. If omitted, this provider will assign a random, unique name. Conflicts with `namePrefix`
	Name pulumi.StringOutput `pulumi:"name"`
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`
	NamePrefix pulumi.StringOutput `pulumi:"namePrefix"`
	// The JSON policy for the SQS queue.
	Policy pulumi.StringOutput `pulumi:"policy"`
	// The time for which a ReceiveMessage call will wait for a message to arrive (long polling) before returning. An integer from 0 to 20 (seconds). The default for this attribute is 0, meaning that the call will return immediately.
	ReceiveWaitTimeSeconds pulumi.IntPtrOutput `pulumi:"receiveWaitTimeSeconds"`
	// The JSON policy to set up the Dead Letter Queue redrive permission, see [AWS docs](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html).
	RedriveAllowPolicy pulumi.StringPtrOutput `pulumi:"redriveAllowPolicy"`
	// The JSON policy to set up the Dead Letter Queue, see [AWS docs](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html). **Note:** when specifying `maxReceiveCount`, you must specify it as an integer (`5`), and not a string (`"5"`).
	RedrivePolicy pulumi.StringPtrOutput `pulumi:"redrivePolicy"`
	// Boolean to enable server-side encryption (SSE) of message content with SQS-owned encryption keys. Defaults to `false`. See [Encryption at rest](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html).
	SqsManagedSseEnabled pulumi.BoolPtrOutput `pulumi:"sqsManagedSseEnabled"`
	// A map of tags to assign to the queue. If configured with a provider `defaultTags` configuration block) present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Same as `id`: The URL for the created Amazon SQS queue.
	Url pulumi.StringOutput `pulumi:"url"`
	// The visibility timeout for the queue. An integer from 0 to 43200 (12 hours). The default for this attribute is 30. For more information about visibility timeout, see [AWS docs](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html).
	VisibilityTimeoutSeconds pulumi.IntPtrOutput `pulumi:"visibilityTimeoutSeconds"`
}

## Example Usage

```go package main

import (

"encoding/json"

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/sqs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		tmpJSON0, err := json.Marshal(map[string]interface{}{
			"deadLetterTargetArn": aws_sqs_queue.Queue_deadletter.Arn,
			"maxReceiveCount":     4,
		})
		if err != nil {
			return err
		}
		json0 := string(tmpJSON0)
		tmpJSON1, err := json.Marshal(map[string]interface{}{
			"redrivePermission": "byQueue",
			"sourceQueueArns": []interface{}{
				aws_sqs_queue.Terraform_queue_deadletter.Arn,
			},
		})
		if err != nil {
			return err
		}
		json1 := string(tmpJSON1)
		_, err := sqs.NewQueue(ctx, "queue", &sqs.QueueArgs{
			DelaySeconds:            pulumi.Int(90),
			MaxMessageSize:          pulumi.Int(2048),
			MessageRetentionSeconds: pulumi.Int(86400),
			ReceiveWaitTimeSeconds:  pulumi.Int(10),
			RedrivePolicy:           pulumi.String(json0),
			RedriveAllowPolicy:      pulumi.String(json1),
			Tags: pulumi.StringMap{
				"Environment": pulumi.String("production"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## FIFO queue

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/sqs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := sqs.NewQueue(ctx, "queue", &sqs.QueueArgs{
			ContentBasedDeduplication: pulumi.Bool(true),
			FifoQueue:                 pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## High-throughput FIFO queue

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/sqs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := sqs.NewQueue(ctx, "terraformQueue", &sqs.QueueArgs{
			DeduplicationScope:  pulumi.String("messageGroup"),
			FifoQueue:           pulumi.Bool(true),
			FifoThroughputLimit: pulumi.String("perMessageGroupId"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Server-side encryption (SSE)

Using [SSE-SQS](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html):

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/sqs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := sqs.NewQueue(ctx, "terraformQueue", &sqs.QueueArgs{
			SqsManagedSseEnabled: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

Using [SSE-KMS](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html):

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/sqs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := sqs.NewQueue(ctx, "queue", &sqs.QueueArgs{
			KmsDataKeyReusePeriodSeconds: pulumi.Int(300),
			KmsMasterKeyId:               pulumi.String("alias/aws/sqs"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

SQS Queues can be imported using the `queue url`, e.g.,

```sh

$ pulumi import aws:sqs/queue:Queue public_queue https://queue.amazonaws.com/80398EXAMPLE/MyQueue

```

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 {
	// Enables content-based deduplication for FIFO queues. For more information, see the [related documentation](http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing)
	ContentBasedDeduplication pulumi.BoolPtrInput
	// Specifies whether message deduplication occurs at the message group or queue level. Valid values are `messageGroup` and `queue` (default).
	DeduplicationScope pulumi.StringPtrInput
	// The time in seconds that the delivery of all messages in the queue will be delayed. An integer from 0 to 900 (15 minutes). The default for this attribute is 0 seconds.
	DelaySeconds pulumi.IntPtrInput
	// Boolean designating a FIFO queue. If not set, it defaults to `false` making it standard.
	FifoQueue pulumi.BoolPtrInput
	// Specifies whether the FIFO queue throughput quota applies to the entire queue or per message group. Valid values are `perQueue` (default) and `perMessageGroupId`.
	FifoThroughputLimit pulumi.StringPtrInput
	// The length of time, in seconds, for which Amazon SQS can reuse a data key to encrypt or decrypt messages before calling AWS KMS again. An integer representing seconds, between 60 seconds (1 minute) and 86,400 seconds (24 hours). The default is 300 (5 minutes).
	KmsDataKeyReusePeriodSeconds pulumi.IntPtrInput
	// The ID of an AWS-managed customer master key (CMK) for Amazon SQS or a custom CMK. For more information, see [Key Terms](http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms).
	KmsMasterKeyId pulumi.StringPtrInput
	// The limit of how many bytes a message can contain before Amazon SQS rejects it. An integer from 1024 bytes (1 KiB) up to 262144 bytes (256 KiB). The default for this attribute is 262144 (256 KiB).
	MaxMessageSize pulumi.IntPtrInput
	// The number of seconds Amazon SQS retains a message. Integer representing seconds, from 60 (1 minute) to 1209600 (14 days). The default for this attribute is 345600 (4 days).
	MessageRetentionSeconds pulumi.IntPtrInput
	// The name of the queue. Queue names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 80 characters long. For a FIFO (first-in-first-out) queue, the name must end with the `.fifo` suffix. If omitted, this provider will assign a random, unique name. Conflicts with `namePrefix`
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`
	NamePrefix pulumi.StringPtrInput
	// The JSON policy for the SQS queue.
	Policy pulumi.StringPtrInput
	// The time for which a ReceiveMessage call will wait for a message to arrive (long polling) before returning. An integer from 0 to 20 (seconds). The default for this attribute is 0, meaning that the call will return immediately.
	ReceiveWaitTimeSeconds pulumi.IntPtrInput
	// The JSON policy to set up the Dead Letter Queue redrive permission, see [AWS docs](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html).
	RedriveAllowPolicy pulumi.StringPtrInput
	// The JSON policy to set up the Dead Letter Queue, see [AWS docs](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html). **Note:** when specifying `maxReceiveCount`, you must specify it as an integer (`5`), and not a string (`"5"`).
	RedrivePolicy pulumi.StringPtrInput
	// Boolean to enable server-side encryption (SSE) of message content with SQS-owned encryption keys. Defaults to `false`. See [Encryption at rest](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html).
	SqsManagedSseEnabled pulumi.BoolPtrInput
	// A map of tags to assign to the queue. If configured with a provider `defaultTags` configuration block) present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// The visibility timeout for the queue. An integer from 0 to 43200 (12 hours). The default for this attribute is 30. For more information about visibility timeout, see [AWS docs](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html).
	VisibilityTimeoutSeconds pulumi.IntPtrInput
}

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) ElementType

func (QueueOutput) ElementType() reflect.Type

func (QueueOutput) ToQueueOutput

func (o QueueOutput) ToQueueOutput() QueueOutput

func (QueueOutput) ToQueueOutputWithContext

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

type QueuePolicy

type QueuePolicy struct {
	pulumi.CustomResourceState

	// The JSON policy for the SQS queue.
	Policy pulumi.StringOutput `pulumi:"policy"`
	// The URL of the SQS Queue to which to attach the policy
	QueueUrl pulumi.StringOutput `pulumi:"queueUrl"`
}

Allows you to set a policy of an SQS Queue while referencing ARN of the queue within the policy.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/iam"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/sqs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		queue, err := sqs.NewQueue(ctx, "queue", nil)
		if err != nil {
			return err
		}
		_, err = sqs.NewQueuePolicy(ctx, "test", &sqs.QueuePolicyArgs{
			QueueUrl: queue.ID(),
			Policy: queue.Arn.ApplyT(func(arn string) (string, error) {
				return fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", "  \"Version\": \"2012-10-17\",\n", "  \"Id\": \"sqspolicy\",\n", "  \"Statement\": [\n", "    {\n", "      \"Sid\": \"First\",\n", "      \"Effect\": \"Allow\",\n", "      \"Principal\": \"*\",\n", "      \"Action\": \"sqs:SendMessage\",\n", "      \"Resource\": \"", arn, "\",\n", "      \"Condition\": {\n", "        \"ArnEquals\": {\n", "          \"aws:SourceArn\": \"", aws_sns_topic.Example.Arn, "\"\n", "        }\n", "      }\n", "    }\n", "  ]\n", "}\n"), nil
			}).(pulumi.StringOutput),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

SQS Queue Policies can be imported using the queue URL, e.g.,

```sh

$ pulumi import aws:sqs/queuePolicy:QueuePolicy test https://queue.amazonaws.com/0123456789012/myqueue

```

func GetQueuePolicy

func GetQueuePolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *QueuePolicyState, opts ...pulumi.ResourceOption) (*QueuePolicy, error)

GetQueuePolicy gets an existing QueuePolicy 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 NewQueuePolicy

func NewQueuePolicy(ctx *pulumi.Context,
	name string, args *QueuePolicyArgs, opts ...pulumi.ResourceOption) (*QueuePolicy, error)

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

func (*QueuePolicy) ElementType

func (*QueuePolicy) ElementType() reflect.Type

func (*QueuePolicy) ToQueuePolicyOutput

func (i *QueuePolicy) ToQueuePolicyOutput() QueuePolicyOutput

func (*QueuePolicy) ToQueuePolicyOutputWithContext

func (i *QueuePolicy) ToQueuePolicyOutputWithContext(ctx context.Context) QueuePolicyOutput

type QueuePolicyArgs

type QueuePolicyArgs struct {
	// The JSON policy for the SQS queue.
	Policy pulumi.Input
	// The URL of the SQS Queue to which to attach the policy
	QueueUrl pulumi.StringInput
}

The set of arguments for constructing a QueuePolicy resource.

func (QueuePolicyArgs) ElementType

func (QueuePolicyArgs) ElementType() reflect.Type

type QueuePolicyArray

type QueuePolicyArray []QueuePolicyInput

func (QueuePolicyArray) ElementType

func (QueuePolicyArray) ElementType() reflect.Type

func (QueuePolicyArray) ToQueuePolicyArrayOutput

func (i QueuePolicyArray) ToQueuePolicyArrayOutput() QueuePolicyArrayOutput

func (QueuePolicyArray) ToQueuePolicyArrayOutputWithContext

func (i QueuePolicyArray) ToQueuePolicyArrayOutputWithContext(ctx context.Context) QueuePolicyArrayOutput

type QueuePolicyArrayInput

type QueuePolicyArrayInput interface {
	pulumi.Input

	ToQueuePolicyArrayOutput() QueuePolicyArrayOutput
	ToQueuePolicyArrayOutputWithContext(context.Context) QueuePolicyArrayOutput
}

QueuePolicyArrayInput is an input type that accepts QueuePolicyArray and QueuePolicyArrayOutput values. You can construct a concrete instance of `QueuePolicyArrayInput` via:

QueuePolicyArray{ QueuePolicyArgs{...} }

type QueuePolicyArrayOutput

type QueuePolicyArrayOutput struct{ *pulumi.OutputState }

func (QueuePolicyArrayOutput) ElementType

func (QueuePolicyArrayOutput) ElementType() reflect.Type

func (QueuePolicyArrayOutput) Index

func (QueuePolicyArrayOutput) ToQueuePolicyArrayOutput

func (o QueuePolicyArrayOutput) ToQueuePolicyArrayOutput() QueuePolicyArrayOutput

func (QueuePolicyArrayOutput) ToQueuePolicyArrayOutputWithContext

func (o QueuePolicyArrayOutput) ToQueuePolicyArrayOutputWithContext(ctx context.Context) QueuePolicyArrayOutput

type QueuePolicyInput

type QueuePolicyInput interface {
	pulumi.Input

	ToQueuePolicyOutput() QueuePolicyOutput
	ToQueuePolicyOutputWithContext(ctx context.Context) QueuePolicyOutput
}

type QueuePolicyMap

type QueuePolicyMap map[string]QueuePolicyInput

func (QueuePolicyMap) ElementType

func (QueuePolicyMap) ElementType() reflect.Type

func (QueuePolicyMap) ToQueuePolicyMapOutput

func (i QueuePolicyMap) ToQueuePolicyMapOutput() QueuePolicyMapOutput

func (QueuePolicyMap) ToQueuePolicyMapOutputWithContext

func (i QueuePolicyMap) ToQueuePolicyMapOutputWithContext(ctx context.Context) QueuePolicyMapOutput

type QueuePolicyMapInput

type QueuePolicyMapInput interface {
	pulumi.Input

	ToQueuePolicyMapOutput() QueuePolicyMapOutput
	ToQueuePolicyMapOutputWithContext(context.Context) QueuePolicyMapOutput
}

QueuePolicyMapInput is an input type that accepts QueuePolicyMap and QueuePolicyMapOutput values. You can construct a concrete instance of `QueuePolicyMapInput` via:

QueuePolicyMap{ "key": QueuePolicyArgs{...} }

type QueuePolicyMapOutput

type QueuePolicyMapOutput struct{ *pulumi.OutputState }

func (QueuePolicyMapOutput) ElementType

func (QueuePolicyMapOutput) ElementType() reflect.Type

func (QueuePolicyMapOutput) MapIndex

func (QueuePolicyMapOutput) ToQueuePolicyMapOutput

func (o QueuePolicyMapOutput) ToQueuePolicyMapOutput() QueuePolicyMapOutput

func (QueuePolicyMapOutput) ToQueuePolicyMapOutputWithContext

func (o QueuePolicyMapOutput) ToQueuePolicyMapOutputWithContext(ctx context.Context) QueuePolicyMapOutput

type QueuePolicyOutput

type QueuePolicyOutput struct{ *pulumi.OutputState }

func (QueuePolicyOutput) ElementType

func (QueuePolicyOutput) ElementType() reflect.Type

func (QueuePolicyOutput) ToQueuePolicyOutput

func (o QueuePolicyOutput) ToQueuePolicyOutput() QueuePolicyOutput

func (QueuePolicyOutput) ToQueuePolicyOutputWithContext

func (o QueuePolicyOutput) ToQueuePolicyOutputWithContext(ctx context.Context) QueuePolicyOutput

type QueuePolicyState

type QueuePolicyState struct {
	// The JSON policy for the SQS queue.
	Policy pulumi.Input
	// The URL of the SQS Queue to which to attach the policy
	QueueUrl pulumi.StringPtrInput
}

func (QueuePolicyState) ElementType

func (QueuePolicyState) ElementType() reflect.Type

type QueueState

type QueueState struct {
	// The ARN of the SQS queue
	Arn pulumi.StringPtrInput
	// Enables content-based deduplication for FIFO queues. For more information, see the [related documentation](http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing)
	ContentBasedDeduplication pulumi.BoolPtrInput
	// Specifies whether message deduplication occurs at the message group or queue level. Valid values are `messageGroup` and `queue` (default).
	DeduplicationScope pulumi.StringPtrInput
	// The time in seconds that the delivery of all messages in the queue will be delayed. An integer from 0 to 900 (15 minutes). The default for this attribute is 0 seconds.
	DelaySeconds pulumi.IntPtrInput
	// Boolean designating a FIFO queue. If not set, it defaults to `false` making it standard.
	FifoQueue pulumi.BoolPtrInput
	// Specifies whether the FIFO queue throughput quota applies to the entire queue or per message group. Valid values are `perQueue` (default) and `perMessageGroupId`.
	FifoThroughputLimit pulumi.StringPtrInput
	// The length of time, in seconds, for which Amazon SQS can reuse a data key to encrypt or decrypt messages before calling AWS KMS again. An integer representing seconds, between 60 seconds (1 minute) and 86,400 seconds (24 hours). The default is 300 (5 minutes).
	KmsDataKeyReusePeriodSeconds pulumi.IntPtrInput
	// The ID of an AWS-managed customer master key (CMK) for Amazon SQS or a custom CMK. For more information, see [Key Terms](http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms).
	KmsMasterKeyId pulumi.StringPtrInput
	// The limit of how many bytes a message can contain before Amazon SQS rejects it. An integer from 1024 bytes (1 KiB) up to 262144 bytes (256 KiB). The default for this attribute is 262144 (256 KiB).
	MaxMessageSize pulumi.IntPtrInput
	// The number of seconds Amazon SQS retains a message. Integer representing seconds, from 60 (1 minute) to 1209600 (14 days). The default for this attribute is 345600 (4 days).
	MessageRetentionSeconds pulumi.IntPtrInput
	// The name of the queue. Queue names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 80 characters long. For a FIFO (first-in-first-out) queue, the name must end with the `.fifo` suffix. If omitted, this provider will assign a random, unique name. Conflicts with `namePrefix`
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `name`
	NamePrefix pulumi.StringPtrInput
	// The JSON policy for the SQS queue.
	Policy pulumi.StringPtrInput
	// The time for which a ReceiveMessage call will wait for a message to arrive (long polling) before returning. An integer from 0 to 20 (seconds). The default for this attribute is 0, meaning that the call will return immediately.
	ReceiveWaitTimeSeconds pulumi.IntPtrInput
	// The JSON policy to set up the Dead Letter Queue redrive permission, see [AWS docs](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html).
	RedriveAllowPolicy pulumi.StringPtrInput
	// The JSON policy to set up the Dead Letter Queue, see [AWS docs](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/SQSDeadLetterQueue.html). **Note:** when specifying `maxReceiveCount`, you must specify it as an integer (`5`), and not a string (`"5"`).
	RedrivePolicy pulumi.StringPtrInput
	// Boolean to enable server-side encryption (SSE) of message content with SQS-owned encryption keys. Defaults to `false`. See [Encryption at rest](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html).
	SqsManagedSseEnabled pulumi.BoolPtrInput
	// A map of tags to assign to the queue. If configured with a provider `defaultTags` configuration block) present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider.
	TagsAll pulumi.StringMapInput
	// Same as `id`: The URL for the created Amazon SQS queue.
	Url pulumi.StringPtrInput
	// The visibility timeout for the queue. An integer from 0 to 43200 (12 hours). The default for this attribute is 30. For more information about visibility timeout, see [AWS docs](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/AboutVT.html).
	VisibilityTimeoutSeconds pulumi.IntPtrInput
}

func (QueueState) ElementType

func (QueueState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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