Skip to content

Commit fe45088

Browse files
committed
feat: apprunner cloud connector based on binary scanner
1 parent 6d37ea0 commit fe45088

File tree

6 files changed

+48
-26
lines changed

6 files changed

+48
-26
lines changed

examples/single-account-apprunner/main.tf

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
locals {
2+
deploy_image_scanning = var.deploy_image_scanning_ecr || var.deploy_image_scanning_ecs
3+
deploy_scanning_infra = local.deploy_image_scanning && !var.use_standalone_scanner
4+
}
5+
16
#-------------------------------------
27
# general resources
38
#-------------------------------------
@@ -19,13 +24,13 @@ module "ssm" {
1924
# cloud-connector
2025
#-------------------------------------
2126
module "codebuild" {
22-
count = var.deploy_image_scanning_ecr || var.deploy_image_scanning_ecs ? 1 : 0
27+
count = local.deploy_scanning_infra ? 1 : 0
2328

2429
source = "../../modules/infrastructure/codebuild"
2530
name = "${var.name}-codebuild"
2631
secure_api_token_secret_name = module.ssm.secure_api_token_secret_name
2732

28-
tags = var.tags
33+
tags = var.tags
2934
# note. this is required to avoid race conditions
3035
depends_on = [module.ssm]
3136
}
@@ -45,6 +50,7 @@ module "cloud_connector" {
4550
cloudconnector_ecr_image_uri = var.cloudconnector_ecr_image_uri
4651
deploy_image_scanning_ecr = var.deploy_image_scanning_ecr
4752
deploy_image_scanning_ecs = var.deploy_image_scanning_ecs
53+
use_standalone_scanner = var.use_standalone_scanner
4854

4955
cloudtrail_sns_arn = local.cloudtrail_sns_arn
5056
tags = var.tags

examples/single-account-ecs/main.tf

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
locals {
22
deploy_image_scanning = var.deploy_image_scanning_ecr || var.deploy_image_scanning_ecs
33
deploy_scanning_infra = local.deploy_image_scanning && !var.use_standalone_scanner
4-
54
}
65
#-------------------------------------
76
# general resources

modules/services/cloud-connector-apprunner/apprunner.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ data "aws_iam_policy_document" "cloud_connector" {
9898

9999

100100
dynamic "statement" {
101-
for_each = var.deploy_image_scanning_ecr || var.deploy_image_scanning_ecs ? [1] : []
101+
for_each = local.deploy_scanning_infra ? [1] : []
102102
content {
103103
sid = "AllowCodebuild"
104104
effect = "Allow"
Lines changed: 29 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,39 @@
11
locals {
22
default_config = yamlencode(merge({
3-
logging = "info"
4-
rules = []
3+
logging = "info"
4+
rules = []
55
ingestors = [
66
{
77
cloudtrail-sns-sqs = merge(
8-
{
9-
queueURL = module.cloud_connector_sqs.cloudtrail_sns_subscribed_sqs_url
10-
}
8+
{
9+
queueURL = module.cloud_connector_sqs.cloudtrail_sns_subscribed_sqs_url
10+
}
1111
)
1212
}
1313
]
14-
},
15-
{
16-
scanners = local.deploy_image_scanning ? [
17-
merge(var.deploy_image_scanning_ecr ? {
18-
aws-ecr = {
19-
codeBuildProject = var.build_project_name
20-
secureAPITokenSecretName = var.secure_api_token_secret_name
21-
}
22-
} : {},
23-
var.deploy_image_scanning_ecs ? {
24-
aws-ecs = {
25-
codeBuildProject = var.build_project_name
26-
secureAPITokenSecretName = var.secure_api_token_secret_name
27-
}
28-
} : {})
29-
] : []
30-
}
14+
},
15+
{
16+
scanners = local.deploy_image_scanning ? [
17+
merge(
18+
local.ecr_scanning_with_infra ? {
19+
aws-ecr = {
20+
codeBuildProject = var.build_project_name
21+
secureAPITokenSecretName = var.secure_api_token_secret_name
22+
}
23+
} : {},
24+
local.ecs_scanning_with_infra ? {
25+
aws-ecs = {
26+
codeBuildProject = var.build_project_name
27+
secureAPITokenSecretName = var.secure_api_token_secret_name
28+
}
29+
} : {}),
30+
local.ecs_standalone_scanning ? {
31+
aws-ecs-inline = {}
32+
} : {},
33+
local.ecr_standalone_scanning ? {
34+
aws-ecr-inline = {},
35+
} : {}
36+
] : []
37+
}
3138
))
3239
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
11
locals {
22
verify_ssl = var.verify_ssl == "auto" ? length(regexall("https://.*?\\.sysdig(cloud)?.com/?", data.sysdig_secure_connection.current.secure_url)) == 1 : var.verify_ssl == "true"
33
deploy_image_scanning = var.deploy_image_scanning_ecs || var.deploy_image_scanning_ecr
4+
deploy_scanning_infra = local.deploy_image_scanning && !var.use_standalone_scanner
5+
ecr_standalone_scanning = var.deploy_image_scanning_ecr && var.use_standalone_scanner
6+
ecs_standalone_scanning = var.deploy_image_scanning_ecs && var.use_standalone_scanner
7+
ecr_scanning_with_infra = var.deploy_image_scanning_ecr && !var.use_standalone_scanner
8+
ecs_scanning_with_infra = var.deploy_image_scanning_ecs && !var.use_standalone_scanner
49
}

modules/services/cloud-connector-apprunner/variables.tf

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,11 @@ variable "deploy_image_scanning_ecs" {
3030
default = false
3131
}
3232

33+
variable "use_standalone_scanner" {
34+
type = bool
35+
description = "true/false whether use inline scanner or not"
36+
default = false
37+
}
3338
#
3439
# general
3540
#

0 commit comments

Comments
 (0)