ses-lambda-forwarder

cloudposse/ses-lambda-forwarder/aws

Terraform Module HCL AWS

This is a terraform module that creates an email forwarder using a combination of AWS SES and Lambda running the aws-lambda-ses-forwarder NPM module.

Install
module "ses-lambda-forwarder" {
source = "cloudposse/ses-lambda-forwarder/aws"
version = "0.13.0"
}
plain text: /constructs/tfmod-cloudposse-ses-lambda-forwarder-aws/install.txt
⭐ Source on GitHub 📦 Registry page
README

This is a terraform module that creates an email forwarder using a combination of AWS SES and Lambda running the aws-lambda-ses-forwarder NPM module. > [!TIP] > #### 👽 Use Atmos with Terraform > Cloud Posse uses atmos to easily orchestrate multiple environments using Terraform. > Works with Github Actions, Atlantis, or Spacelift. > > > Watch demo of using Atmos with Terraform > > Example of running atmos to manage infrastructure from our Quick Start tutorial. > Introduction This module provisions a NodeJS script as a AWS Lambda function that uses the inbound/outbound capabilities of AWS Simple Email Service (SES) to run a "serverless" email forwarding service. Use this module instead of setting up an email server on a dedicated EC2 instance to handle email redirects. It uses AWS SES to rec

Inputs (30)
NameTypeDescriptionDefault
relay_emailstringEmail that used to relay from required
domainstringRoot domain name required
regionstringAWS Region the SES should reside in required
stagestringID element. Usually used to indicate role, e.g. 'prod', 'staging', 'source', 'bunull
additional_tag_mapmap(string)Additional key-value pairs to add to each map in `tags_as_list_of_maps`. Not add{}
artifact_urlstringURL template for the remote artifact"https://artifacts.cloudposse.com/$${mod
tracing_config_modestringCan be either PassThrough or Active. If PassThrough, Lambda will only trace the "PassThrough"
s3_bucket_encryption_enabledboolWhen set to 'true' the 'aws_s3_bucket' resource will have AES256 encryption enabtrue
enabledboolSet to false to prevent the module from creating any resourcesnull
tenantstringID element _(Rarely used, not included by default)_. A customer identifier, indinull
regex_replace_charsstringTerraform regular expression (regex) string. Characters matching the regex will null
id_length_limitnumberLimit `id` to this many characters (minimum 6). Set to `0` for unlimited length.null
forward_emailsmap(list(string))Map of forward emails{ "ops@example.com": [ "destinatio
spfstringDNS SPF record value"v=spf1 include:amazonses.com -all"
artifact_filenamestringArtifact filename"lambda.zip"
label_value_casestringControls the letter case of ID elements (labels) as included in `id`, set as tagnull
descriptor_formatsanyDescribe additional descriptors to be output in the `descriptors` output map. Ma{}
lambda_runtimestringLambda runtime"nodejs12.x"
labels_as_tagsset(string)Set of labels (ID elements) to include as tags in the `tags` output. Default is [ "default" ]
environmentstringID element. Usually used for region e.g. 'uw2', 'us-west-2', OR role 'prod', 'stnull
namestringID element. Usually the component or solution name, e.g. 'app' or 'jenkins'. Thinull
delimiterstringDelimiter to be used between ID elements. Defaults to `-` (hyphen). Set to `""` null
attributeslist(string)ID element. Additional attributes (e.g. `workers` or `cluster`) to add to `id`, []
Outputs (17)
lambda_iam_policy_arn — Lamnda IAM Policy ARN
lambda_function_arn — Lamnda Function ARN
lambda_function_version — Latest published version of the Lambda Function
lambda_function_source_code_size — The size in bytes of the Lambda Function .zip file
s3_bucket_arn — Lamnda IAM Policy ARN
ses_domain_identity_verification_arn — The ARN of the domain identity
artifact_file — Full path to the locally downloaded artifact
artifact_base64sha256 — Base64 encoded SHA256 hash of the artifact file
lambda_iam_policy_name — Lamnda IAM Policy name
s3_bucket_id — Lamnda IAM Policy name
ses_domain_identity_arn — The ARN of the domain identity
artifact_url — URL corresponding to the artifact
lambda_iam_policy_id — Lamnda IAM Policy ID
s3_bucket_domain_name — Lamnda IAM Policy ARN
artifact_git_ref — Git commit hash corresponding to the artifact
ses_receipt_rule_name — The name of the SES receipt rule
ses_receipt_rule_set_name — The name of the SES receipt rule set
Resources (14)
aws_iam_policyaws_iam_roleaws_iam_role_policy_attachmentaws_lambda_aliasaws_lambda_functionaws_lambda_permissionaws_route53_recordaws_s3_bucketaws_s3_bucket_policyaws_ses_active_receipt_rule_setaws_ses_domain_identityaws_ses_domain_identity_verificationaws_ses_receipt_ruleaws_ses_receipt_rule_set
Details
FrameworkTerraform Module
LanguageHCL
Version0.13.0
Cloud AWS
★ Stars27
Forks32
Total downloads8.1k
Inputs30
Outputs17
Resources14
Examples1
LicenseApache-2.0
Namespacecloudposse
Updated