FunctionEventInvokeConfig

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

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var example = new Aws.Lambda.FunctionEventInvokeConfig("example", new Aws.Lambda.FunctionEventInvokeConfigArgs
        {
            FunctionName = aws_lambda_alias.Example.Function_name,
            DestinationConfig = new Aws.Lambda.Inputs.FunctionEventInvokeConfigDestinationConfigArgs
            {
                OnFailure = new Aws.Lambda.Inputs.FunctionEventInvokeConfigDestinationConfigOnFailureArgs
                {
                    Destination = aws_sqs_queue.Example.Arn,
                },
                OnSuccess = new Aws.Lambda.Inputs.FunctionEventInvokeConfigDestinationConfigOnSuccessArgs
                {
                    Destination = aws_sns_topic.Example.Arn,
                },
            },
        });
    }

}
package main

import (
    "github.com/pulumi/pulumi-aws/sdk/v2/go/aws/lambda"
    "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        _, err := lambda.NewFunctionEventInvokeConfig(ctx, "example", &lambda.FunctionEventInvokeConfigArgs{
            FunctionName: pulumi.String(aws_lambda_alias.Example.Function_name),
            DestinationConfig: &lambda.FunctionEventInvokeConfigDestinationConfigArgs{
                OnFailure: &lambda.FunctionEventInvokeConfigDestinationConfigOnFailureArgs{
                    Destination: pulumi.String(aws_sqs_queue.Example.Arn),
                },
                OnSuccess: &lambda.FunctionEventInvokeConfigDestinationConfigOnSuccessArgs{
                    Destination: pulumi.String(aws_sns_topic.Example.Arn),
                },
            },
        })
        if err != nil {
            return err
        }
        return nil
    })
}
import pulumi
import pulumi_aws as aws

example = aws.lambda_.FunctionEventInvokeConfig("example",
    function_name=aws_lambda_alias["example"]["function_name"],
    destination_config={
        "on_failure": {
            "destination": aws_sqs_queue["example"]["arn"],
        },
        "onSuccess": {
            "destination": aws_sns_topic["example"]["arn"],
        },
    })
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.lambda.FunctionEventInvokeConfig("example", {
    functionName: aws_lambda_alias.example.function_name,
    destinationConfig: {
        onFailure: {
            destination: aws_sqs_queue.example.arn,
        },
        onSuccess: {
            destination: aws_sns_topic.example.arn,
        },
    },
});

Error Handling Configuration

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var example = new Aws.Lambda.FunctionEventInvokeConfig("example", new Aws.Lambda.FunctionEventInvokeConfigArgs
        {
            FunctionName = aws_lambda_alias.Example.Function_name,
            MaximumEventAgeInSeconds = 60,
            MaximumRetryAttempts = 0,
        });
    }

}
package main

import (
    "github.com/pulumi/pulumi-aws/sdk/v2/go/aws/lambda"
    "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        _, err := lambda.NewFunctionEventInvokeConfig(ctx, "example", &lambda.FunctionEventInvokeConfigArgs{
            FunctionName:             pulumi.String(aws_lambda_alias.Example.Function_name),
            MaximumEventAgeInSeconds: pulumi.Int(60),
            MaximumRetryAttempts:     pulumi.Int(0),
        })
        if err != nil {
            return err
        }
        return nil
    })
}
import pulumi
import pulumi_aws as aws

example = aws.lambda_.FunctionEventInvokeConfig("example",
    function_name=aws_lambda_alias["example"]["function_name"],
    maximum_event_age_in_seconds=60,
    maximum_retry_attempts=0)
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.lambda.FunctionEventInvokeConfig("example", {
    functionName: aws_lambda_alias.example.function_name,
    maximumEventAgeInSeconds: 60,
    maximumRetryAttempts: 0,
});

Configuration for Alias Name

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var example = new Aws.Lambda.FunctionEventInvokeConfig("example", new Aws.Lambda.FunctionEventInvokeConfigArgs
        {
            FunctionName = aws_lambda_alias.Example.Function_name,
            Qualifier = aws_lambda_alias.Example.Name,
        });
        // ... other configuration ...
    }

}
package main

import (
    "github.com/pulumi/pulumi-aws/sdk/v2/go/aws/lambda"
    "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        _, err := lambda.NewFunctionEventInvokeConfig(ctx, "example", &lambda.FunctionEventInvokeConfigArgs{
            FunctionName: pulumi.String(aws_lambda_alias.Example.Function_name),
            Qualifier:    pulumi.String(aws_lambda_alias.Example.Name),
        })
        if err != nil {
            return err
        }
        return nil
    })
}
import pulumi
import pulumi_aws as aws

example = aws.lambda_.FunctionEventInvokeConfig("example",
    function_name=aws_lambda_alias["example"]["function_name"],
    qualifier=aws_lambda_alias["example"]["name"])
# ... other configuration ...
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.lambda.FunctionEventInvokeConfig("example", {
    functionName: aws_lambda_alias.example.function_name,
    qualifier: aws_lambda_alias.example.name,
});
// ... other configuration ...

Configuration for Function Latest Unpublished Version

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var example = new Aws.Lambda.FunctionEventInvokeConfig("example", new Aws.Lambda.FunctionEventInvokeConfigArgs
        {
            FunctionName = aws_lambda_function.Example.Function_name,
            Qualifier = "$LATEST",
        });
        // ... other configuration ...
    }

}
package main

import (
    "fmt"

    "github.com/pulumi/pulumi-aws/sdk/v2/go/aws/lambda"
    "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        _, err := lambda.NewFunctionEventInvokeConfig(ctx, "example", &lambda.FunctionEventInvokeConfigArgs{
            FunctionName: pulumi.String(aws_lambda_function.Example.Function_name),
            Qualifier:    pulumi.String(fmt.Sprintf("%v%v", "$", "LATEST")),
        })
        if err != nil {
            return err
        }
        return nil
    })
}
import pulumi
import pulumi_aws as aws

example = aws.lambda_.FunctionEventInvokeConfig("example",
    function_name=aws_lambda_function["example"]["function_name"],
    qualifier="$LATEST")
# ... other configuration ...
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.lambda.FunctionEventInvokeConfig("example", {
    functionName: aws_lambda_function.example.function_name,
    qualifier: `$LATEST`,
});
// ... other configuration ...

Configuration for Function Published Version

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var example = new Aws.Lambda.FunctionEventInvokeConfig("example", new Aws.Lambda.FunctionEventInvokeConfigArgs
        {
            FunctionName = aws_lambda_function.Example.Function_name,
            Qualifier = aws_lambda_function.Example.Version,
        });
        // ... other configuration ...
    }

}
package main

import (
    "github.com/pulumi/pulumi-aws/sdk/v2/go/aws/lambda"
    "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        _, err := lambda.NewFunctionEventInvokeConfig(ctx, "example", &lambda.FunctionEventInvokeConfigArgs{
            FunctionName: pulumi.String(aws_lambda_function.Example.Function_name),
            Qualifier:    pulumi.String(aws_lambda_function.Example.Version),
        })
        if err != nil {
            return err
        }
        return nil
    })
}
import pulumi
import pulumi_aws as aws

example = aws.lambda_.FunctionEventInvokeConfig("example",
    function_name=aws_lambda_function["example"]["function_name"],
    qualifier=aws_lambda_function["example"]["version"])
# ... other configuration ...
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.lambda.FunctionEventInvokeConfig("example", {
    functionName: aws_lambda_function.example.function_name,
    qualifier: aws_lambda_function.example.version,
});
// ... other configuration ...

Create a FunctionEventInvokeConfig Resource

def FunctionEventInvokeConfig(resource_name, opts=None, destination_config=None, function_name=None, maximum_event_age_in_seconds=None, maximum_retry_attempts=None, qualifier=None, __props__=None);
name string
The unique name of the resource.
args FunctionEventInvokeConfigArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
opts ResourceOptions
A bag of options that control this resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args FunctionEventInvokeConfigArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args FunctionEventInvokeConfigArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

FunctionEventInvokeConfig Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Programming Model docs.

Inputs

The FunctionEventInvokeConfig resource accepts the following input properties:

FunctionName string

Name or Amazon Resource Name (ARN) of the Lambda Function, omitting any version or alias qualifier.

DestinationConfig FunctionEventInvokeConfigDestinationConfigArgs

Configuration block with destination configuration. See below for details.

MaximumEventAgeInSeconds int

Maximum age of a request that Lambda sends to a function for processing in seconds. Valid values between 60 and 21600.

MaximumRetryAttempts int

Maximum number of times to retry when the function returns an error. Valid values between 0 and 2. Defaults to 2.

Qualifier string

Lambda Function published version, $LATEST, or Lambda Alias name.

FunctionName string

Name or Amazon Resource Name (ARN) of the Lambda Function, omitting any version or alias qualifier.

DestinationConfig FunctionEventInvokeConfigDestinationConfig

Configuration block with destination configuration. See below for details.

MaximumEventAgeInSeconds int

Maximum age of a request that Lambda sends to a function for processing in seconds. Valid values between 60 and 21600.

MaximumRetryAttempts int

Maximum number of times to retry when the function returns an error. Valid values between 0 and 2. Defaults to 2.

Qualifier string

Lambda Function published version, $LATEST, or Lambda Alias name.

functionName string

Name or Amazon Resource Name (ARN) of the Lambda Function, omitting any version or alias qualifier.

destinationConfig FunctionEventInvokeConfigDestinationConfig

Configuration block with destination configuration. See below for details.

maximumEventAgeInSeconds number

Maximum age of a request that Lambda sends to a function for processing in seconds. Valid values between 60 and 21600.

maximumRetryAttempts number

Maximum number of times to retry when the function returns an error. Valid values between 0 and 2. Defaults to 2.

qualifier string

Lambda Function published version, $LATEST, or Lambda Alias name.

function_name str

Name or Amazon Resource Name (ARN) of the Lambda Function, omitting any version or alias qualifier.

destination_config Dict[FunctionEventInvokeConfigDestinationConfig]

Configuration block with destination configuration. See below for details.

maximum_event_age_in_seconds float

Maximum age of a request that Lambda sends to a function for processing in seconds. Valid values between 60 and 21600.

maximum_retry_attempts float

Maximum number of times to retry when the function returns an error. Valid values between 0 and 2. Defaults to 2.

qualifier str

Lambda Function published version, $LATEST, or Lambda Alias name.

Outputs

All input properties are implicitly available as output properties. Additionally, the FunctionEventInvokeConfig resource produces the following output properties:

Id string
The provider-assigned unique ID for this managed resource.
Id string
The provider-assigned unique ID for this managed resource.
id string
The provider-assigned unique ID for this managed resource.
id str
The provider-assigned unique ID for this managed resource.

Look up an Existing FunctionEventInvokeConfig Resource

Get an existing FunctionEventInvokeConfig resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

static get(resource_name, id, opts=None, destination_config=None, function_name=None, maximum_event_age_in_seconds=None, maximum_retry_attempts=None, qualifier=None, __props__=None);
func GetFunctionEventInvokeConfig(ctx *Context, name string, id IDInput, state *FunctionEventInvokeConfigState, opts ...ResourceOption) (*FunctionEventInvokeConfig, error)
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.

The following state arguments are supported:

DestinationConfig FunctionEventInvokeConfigDestinationConfigArgs

Configuration block with destination configuration. See below for details.

FunctionName string

Name or Amazon Resource Name (ARN) of the Lambda Function, omitting any version or alias qualifier.

MaximumEventAgeInSeconds int

Maximum age of a request that Lambda sends to a function for processing in seconds. Valid values between 60 and 21600.

MaximumRetryAttempts int

Maximum number of times to retry when the function returns an error. Valid values between 0 and 2. Defaults to 2.

Qualifier string

Lambda Function published version, $LATEST, or Lambda Alias name.

DestinationConfig FunctionEventInvokeConfigDestinationConfig

Configuration block with destination configuration. See below for details.

FunctionName string

Name or Amazon Resource Name (ARN) of the Lambda Function, omitting any version or alias qualifier.

MaximumEventAgeInSeconds int

Maximum age of a request that Lambda sends to a function for processing in seconds. Valid values between 60 and 21600.

MaximumRetryAttempts int

Maximum number of times to retry when the function returns an error. Valid values between 0 and 2. Defaults to 2.

Qualifier string

Lambda Function published version, $LATEST, or Lambda Alias name.

destinationConfig FunctionEventInvokeConfigDestinationConfig

Configuration block with destination configuration. See below for details.

functionName string

Name or Amazon Resource Name (ARN) of the Lambda Function, omitting any version or alias qualifier.

maximumEventAgeInSeconds number

Maximum age of a request that Lambda sends to a function for processing in seconds. Valid values between 60 and 21600.

maximumRetryAttempts number

Maximum number of times to retry when the function returns an error. Valid values between 0 and 2. Defaults to 2.

qualifier string

Lambda Function published version, $LATEST, or Lambda Alias name.

destination_config Dict[FunctionEventInvokeConfigDestinationConfig]

Configuration block with destination configuration. See below for details.

function_name str

Name or Amazon Resource Name (ARN) of the Lambda Function, omitting any version or alias qualifier.

maximum_event_age_in_seconds float

Maximum age of a request that Lambda sends to a function for processing in seconds. Valid values between 60 and 21600.

maximum_retry_attempts float

Maximum number of times to retry when the function returns an error. Valid values between 0 and 2. Defaults to 2.

qualifier str

Lambda Function published version, $LATEST, or Lambda Alias name.

Supporting Types

FunctionEventInvokeConfigDestinationConfig

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

OnFailure FunctionEventInvokeConfigDestinationConfigOnFailureArgs

Configuration block with destination configuration for failed asynchronous invocations. See below for details.

OnSuccess FunctionEventInvokeConfigDestinationConfigOnSuccessArgs

Configuration block with destination configuration for successful asynchronous invocations. See below for details.

OnFailure FunctionEventInvokeConfigDestinationConfigOnFailure

Configuration block with destination configuration for failed asynchronous invocations. See below for details.

OnSuccess FunctionEventInvokeConfigDestinationConfigOnSuccess

Configuration block with destination configuration for successful asynchronous invocations. See below for details.

onFailure FunctionEventInvokeConfigDestinationConfigOnFailure

Configuration block with destination configuration for failed asynchronous invocations. See below for details.

onSuccess FunctionEventInvokeConfigDestinationConfigOnSuccess

Configuration block with destination configuration for successful asynchronous invocations. See below for details.

onSuccess Dict[FunctionEventInvokeConfigDestinationConfigOnSuccess]

Configuration block with destination configuration for successful asynchronous invocations. See below for details.

on_failure Dict[FunctionEventInvokeConfigDestinationConfigOnFailure]

Configuration block with destination configuration for failed asynchronous invocations. See below for details.

FunctionEventInvokeConfigDestinationConfigOnFailure

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Destination string

Amazon Resource Name (ARN) of the destination resource. See the Lambda Developer Guide for acceptable resource types and associated IAM permissions.

Destination string

Amazon Resource Name (ARN) of the destination resource. See the Lambda Developer Guide for acceptable resource types and associated IAM permissions.

destination string

Amazon Resource Name (ARN) of the destination resource. See the Lambda Developer Guide for acceptable resource types and associated IAM permissions.

destination str

Amazon Resource Name (ARN) of the destination resource. See the Lambda Developer Guide for acceptable resource types and associated IAM permissions.

FunctionEventInvokeConfigDestinationConfigOnSuccess

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Destination string

Amazon Resource Name (ARN) of the destination resource. See the Lambda Developer Guide for acceptable resource types and associated IAM permissions.

Destination string

Amazon Resource Name (ARN) of the destination resource. See the Lambda Developer Guide for acceptable resource types and associated IAM permissions.

destination string

Amazon Resource Name (ARN) of the destination resource. See the Lambda Developer Guide for acceptable resource types and associated IAM permissions.

destination str

Amazon Resource Name (ARN) of the destination resource. See the Lambda Developer Guide for acceptable resource types and associated IAM permissions.

Package Details

Repository
https://github.com/pulumi/pulumi-aws
License
Apache-2.0
Notes
This Pulumi package is based on the aws Terraform Provider.