Skip to content

rchildress87/terraform-aws-lambda-pipeline

 
 

Repository files navigation

#Repository for Module for AWS Lambda CICD

Commands to run for each environment

DEV

terraform init -backend-config=./init-tfvars/dev.tfvars 
terraform apply -var-file ./apply-tfvars/dev.tfvars

Requirements

Name Version
terraform >= 0.12

Providers

Name Version
aws 3.55.0

Modules

No modules.

Resources

Name Type
aws_cloudwatch_log_group.lambda resource
aws_codebuild_project.lambda_codebuild resource
aws_codebuild_project.lambda_codedeploy resource
aws_codedeploy_app.lambda_deployment resource
aws_codedeploy_deployment_group.lambda_deployment resource
aws_codepipeline.lambda_codepipeline resource
aws_iam_role.lambda resource
aws_iam_role.lambda_codebuild resource
aws_iam_role.lambda_codedeploy resource
aws_iam_role.lambda_codepipeline resource
aws_iam_role_policy.lambda_codebuild resource
aws_iam_role_policy.lambda_codepipeline resource
aws_iam_role_policy_attachment.AWSCodeDeployRoleForLambda resource
aws_iam_role_policy_attachment.lambda resource
aws_lambda_function.this resource
aws_caller_identity.current data source
aws_iam_policy_document.lambda_codepipeline data source
aws_region.current data source

Inputs

Name Description Type Default Required
approval_deploy_enabled Enable approval for deployment step bool true no
artifact_store_bucket_name Name of the bucket that stores artifacts string n/a yes
codestar_connection_arn n/a string n/a yes
description Description of what your Lambda Function does. string n/a yes
environment_variables List of key values for lambda environment variables map(string) null no
github_branch_name Name of the source github branch string n/a yes
github_repo_name The name of the GitHub repository string n/a yes
input_tags Map of tags to apply to resources map(string)
{
"Developer": "Stratusgrid",
"Provisioner": "Terraform"
}
no
lambda_filename Unique name for your Lambda Function string n/a yes
lambda_handler Function entrypoint in your code. string n/a yes
lambda_memory_size The manifest lambdas configured memory size number n/a yes
lambda_runtime Identifier of the function's runtime. string "python3.8" no
name Name of all of the module's resources string n/a yes
policy_configs_map Map of objects to add policies to the iam role map(object({ name = string, arn = string, enabled = bool }))
{
"policy_S3_full": {
"arn": "arn:aws:iam::aws:policy/AmazonS3FullAccess",
"enabled": true,
"name": "s3Fullaccess"
},
"policy_lambda_execute": {
"arn": "arn:aws:iam::aws:policy/AWSLambdaExecute",
"enabled": true,
"name": "lambdaExecute"
},
"policy_secrets_read": {
"arn": "arn:aws:iam::aws:policy/SecretsManagerReadWrite",
"enabled": true,
"name": "secretmanageReadWrite"
},
"policy_sqs_full": {
"arn": "arn:aws:iam::aws:policy/AmazonSQSFullAccess",
"enabled": true,
"name": "sqsFullAccess"
},
"policy_ssm_readonly": {
"arn": "arn:aws:iam::aws:policy/AmazonSSMReadOnlyAccess",
"enabled": true,
"name": "ssmReaOnly"
},
"policy_xray_full": {
"arn": "arn:aws:iam::aws:policy/AWSXrayFullAccess",
"enabled": true,
"name": "xrayFullAccess"
}
}
no

Outputs

Name Description
lambda_function_arn n/a
lambda_function_name n/a

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HCL 100.0%