Resource: aws_lambda_function_event_invoke_config

Manages an asynchronous invocation configuration for a Lambda Function or Alias. More information about asynchronous invocations and the configurable values can be found in the Lambda Developer Guide.

Example Usage

Destination Configuration

resource "aws_lambda_function_event_invoke_config" "example" {
  function_name = aws_lambda_alias.example.function_name

  destination_config {
    on_failure {
      destination = aws_sqs_queue.example.arn
    }

    on_success {
      destination = aws_sns_topic.example.arn
    }
  }
}

Error Handling Configuration

resource "aws_lambda_function_event_invoke_config" "example" {
  function_name                = aws_lambda_alias.example.function_name
  maximum_event_age_in_seconds = 60
  maximum_retry_attempts       = 0
}

Configuration for Alias Name

resource "aws_lambda_function_event_invoke_config" "example" {
  function_name = aws_lambda_alias.example.function_name
  qualifier     = aws_lambda_alias.example.name

  # ... other configuration ...
}

Configuration for Function Latest Unpublished Version

resource "aws_lambda_function_event_invoke_config" "example" {
  function_name = aws_lambda_function.example.function_name
  qualifier     = "$LATEST"

  # ... other configuration ...
}

Configuration for Function Published Version

resource "aws_lambda_function_event_invoke_config" "example" {
  function_name = aws_lambda_function.example.function_name
  qualifier     = aws_lambda_function.example.version

  # ... other configuration ...
}

Argument Reference

The following arguments are required:

The following arguments are optional:

destination_config Configuration Block

The following arguments are optional:

destination_config on_failure Configuration Block

The following arguments are required:

destination_config on_success Configuration Block

The following arguments are required:

Attribute Reference

This resource exports the following attributes in addition to the arguments above:

Import

In Terraform v1.5.0 and later, use an import block to import Lambda Function Event Invoke Configs using the fully qualified Function name or Amazon Resource Name (ARN). For example:

ARN without qualifier (all versions and aliases):

import {
  to = aws_lambda_function_event_invoke_config.example
  id = "arn:aws:us-east-1:123456789012:function:my_function"
}

ARN with qualifier:

import {
  to = aws_lambda_function_event_invoke_config.example
  id = "arn:aws:us-east-1:123456789012:function:my_function:production"
}

Name without qualifier (all versions and aliases):

import {
  to = aws_lambda_function_event_invoke_config.example
  id = "my_function"
}

Name with qualifier:

import {
  to = aws_lambda_function_event_invoke_config.example
  id = "my_function:production"
}

Using terraform import to import Lambda Function Event Invoke Configs using the fully qualified Function name or Amazon Resource Name (ARN). For example:

ARN without qualifier (all versions and aliases):

% terraform import aws_lambda_function_event_invoke_config.example arn:aws:us-east-1:123456789012:function:my_function

ARN with qualifier:

% terraform import aws_lambda_function_event_invoke_config.example arn:aws:us-east-1:123456789012:function:my_function:production

Name without qualifier (all versions and aliases):

% terraform import aws_lambda_function_event_invoke_config.example my_function

Name with qualifier:

% terraform import aws_lambda_function_event_invoke_config.example my_function:production