AwsSqsQueuePolicyTemplateArgs

interface AwsSqsQueuePolicyTemplateArgs extends JsonFileTemplateArgs { path: string; variableArrays?: Record<string, Input<Input<string>[]>>; variables?: Record<string, Input<string>>; }

Queue policy template input for AwsSqs.

Remarks

variables supports custom substitutions used by renderJsonTemplateFile(...). The keys queueArn and queueName are reserved and automatically injected by the component. Literal string values in variables must be non-empty.

Example

CODE
const queue = new AwsSqs({
  name: 'audit',
  queuePolicy: {
    path: 'policies/sqs-policy.json',
    variables: {
      principalArn: 'arn:aws:iam::000000000000:role/consumer',
    },
  },
});

Hierarchy

  • JsonFileTemplateArgs
  • AwsSqsQueuePolicyTemplateArgs

Properties

path: string

Inherited from path

Path to the template file.

variableArrays: Record<string, Input<Input<string>[]>>

Inherited from variableArrays

Optional string-array substitutions for template rendering.

Remarks

Place each placeholder as a quoted array element, for example ["{{ resourceArns }}"]. The complete placeholder is expanded into comma-separated, JSON-encoded string values. Arrays must contain at least one non-empty string, and keys must not also appear in variables. Literal values are validated synchronously; computed Pulumi inputs are validated after resolution and preserve secret propagation.

Example

CODE
const template: FileTemplateArgs = {
  path: './policy.json',
  variables: { region: 'eu-west-1' },
  variableArrays: {
    resourceArns: [queue.arn, archiveQueue.arn],
  },
};

variables: Record<string, Input<string>>

Overrides variables

Optional template substitutions.

Reserved keys queueArn and queueName are not allowed because the component sets them automatically. Literal string values must be non-empty.