Skip to content

app/aws/lambda:container

lambda_name - string

The name of the Lambda function.

lambda_arn - string

The ARN of the Lambda function.

Format: arn:aws:lambda:[region]:[account-id]:function:[lambda-name]

image_repo_url - string

The image repository URL where the service pulls its images.

Format: [account-id]:dkr.ecr.[region].amazonaws.com/[image-repo-name]

image_pusher - object

An AWS IAM user and access keys that have explicit access to push images to the image repository.

Format

value = {
    name       = aws_iam_user.image_pusher.name
    access_key = aws_iam_access_key.image_pusher.id
    secret_key = aws_iam_access_key.image_pusher.secret
}
value = {
    name       = aws_iam_user.image_pusher.name
    access_key = aws_iam_access_key.image_pusher.id
    secret_key = aws_iam_access_key.image_pusher.secret
}

Required IAM permissions

[ecr-repository-arn]
    ecr:GetDownloadUrlForLayer
    ecr:BatchGetImage
    ecr:BatchCheckLayerAvailability
    ecr:PutImage
    ecr:InitiateLayerUpload
    ecr:UploadLayerPart
    ecr:CompleteLayerUpload**
*
    ecr:GetAuthorizationToken
[ecr-repository-arn]
    ecr:GetDownloadUrlForLayer
    ecr:BatchGetImage
    ecr:BatchCheckLayerAvailability
    ecr:PutImage
    ecr:InitiateLayerUpload
    ecr:UploadLayerPart
    ecr:CompleteLayerUpload**
*
    ecr:GetAuthorizationToken

deployer - object

An AWS IAM user and access keys with explicit access to deploy new versions.

Format

value = {
    name       = aws_iam_user.deployer.name
    access_key = aws_iam_access_key.deployer.id
    secret_key = aws_iam_access_key.deployer.secret
}
value = {
    name       = aws_iam_user.deployer.name
    access_key = aws_iam_access_key.deployer.id
    secret_key = aws_iam_access_key.deployer.secret
}

Required IAM permissions

[artifacts-bucket-arn]
    s3:ListBucket
    s3:GetBucketLocation
[artifacts-bucket-arn]/*
    s3:PutObject
    s3:GetObject
    s3:DeleteObject
[lambda-arn]
    lambda:UpdateFunctionCode
    lambda:PublishVersion
[artifacts-bucket-arn]
    s3:ListBucket
    s3:GetBucketLocation
[artifacts-bucket-arn]/*
    s3:PutObject
    s3:GetObject
    s3:DeleteObject
[lambda-arn]
    lambda:UpdateFunctionCode
    lambda:PublishVersion

log_provider - string

The name of the log provider.

For AWS, this is typically cloudwatch.

log_group_name - string

The name of the Cloudwatch Log Group where logs are stored.

log_reader - object

An AWS IAM user and access keys with explicit access to read logs.

Prebuilt Module

Format

value = {
    name       = aws_iam_user.deployer.name
    access_key = aws_iam_access_key.deployer.id
    secret_key = aws_iam_access_key.deployer.secret
}
value = {
    name       = aws_iam_user.deployer.name
    access_key = aws_iam_access_key.deployer.id
    secret_key = aws_iam_access_key.deployer.secret
}

Required IAM permissions

[log-group-arn]
    logs:Get*
    logs:List*
    logs:StartQuery
    logs:StopQuery
    logs:TestMetricFilter
    logs:Filter*
[log-group-arn]
    logs:Get*
    logs:List*
    logs:StartQuery
    logs:StopQuery
    logs:TestMetricFilter
    logs:Filter*