File tree Expand file tree Collapse file tree 2 files changed +31
-5
lines changed
Expand file tree Collapse file tree 2 files changed +31
-5
lines changed Original file line number Diff line number Diff line change 1+ locals {
2+ security_group_ids = var. use_default_security_group == false ? var. security_group_ids : [data . aws_security_group . default [0 ]. id ]
3+ }
4+
5+ data "aws_security_group" "default" {
6+ count = var. use_default_security_group == true ? 1 : 0
7+ name = " ${ terraform . workspace } -default-lambda-sg"
8+ vpc_id = var. vpc_id
9+ }
10+
11+
112resource "aws_lambda_function" "lambda_function" {
213 image_uri = var. image_uri
314 s3_bucket = var. s3_bucket
@@ -23,9 +34,12 @@ resource "aws_lambda_function" "lambda_function" {
2334 }
2435 }
2536
26- vpc_config {
27- subnet_ids = var. subnet_ids
28- security_group_ids = var. security_group_ids
37+ dynamic vpc_config {
38+ for_each = local. security_group_ids != null ? [1 ] : []
39+ content {
40+ subnet_ids = var. subnet_ids
41+ security_group_ids = local. security_group_ids
42+ }
2943 }
3044
3145 environment {
Original file line number Diff line number Diff line change @@ -60,7 +60,7 @@ variable "subnet_ids" {
6060variable "security_group_ids" {
6161 type = list (string )
6262 description = " The VPC security groups assigned to the Lambda."
63- default = []
63+ default = null
6464}
6565
6666variable "datadog_log_subscription_arn" {
@@ -136,4 +136,16 @@ variable "architectures" {
136136 type = list (string )
137137 description = " Lambda architectures to support."
138138 default = [" x86_64" ]
139- }
139+ }
140+
141+ variable "use_default_security_group" {
142+ type = bool
143+ description = " Use default security group"
144+ default = false
145+ }
146+
147+ variable "vpc_id" {
148+ type = string
149+ description = " The VPC ID in which the Lambda runs."
150+ default = null
151+ }
You can’t perform that action at this time.
0 commit comments