Skip to content

Commit cbba4fd

Browse files
feat!: Allow multiple scan filters per scan type in registry; Raise MSV of Terraform and AWS provider to 1.0 and 5.0 respectively (#29)
* feat: Add support for multiple scan filters per scan type in registry scan rules * refactor repository_filter var name and raise MSV of Terraform and AWS provider to 1.0 and 5.0 respectively * chore: Fix example version --------- Co-authored-by: Bryant Biggs <bryantbiggs@gmail.com>
1 parent c15cb78 commit cbba4fd

File tree

7 files changed

+49
-23
lines changed

7 files changed

+49
-23
lines changed

.pre-commit-config.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
repos:
22
- repo: https://github.com/antonbabenko/pre-commit-terraform
3-
rev: v1.88.0
3+
rev: v1.88.2
44
hooks:
55
- id: terraform_fmt
66
- id: terraform_wrapper_module_for_each

README.md

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -129,12 +129,23 @@ module "ecr_registry" {
129129
registry_scan_rules = [
130130
{
131131
scan_frequency = "SCAN_ON_PUSH"
132-
filter = "*"
133-
filter_type = "WILDCARD"
134-
}, {
132+
filter = [
133+
{
134+
filter = "example1"
135+
filter_type = "WILDCARD"
136+
},
137+
{ filter = "example2"
138+
filter_type = "WILDCARD"
139+
}
140+
]
141+
}, {
135142
scan_frequency = "CONTINUOUS_SCAN"
136-
filter = "example"
137-
filter_type = "WILDCARD"
143+
filter = [
144+
{
145+
filter = "example"
146+
filter_type = "WILDCARD"
147+
}
148+
]
138149
}
139150
]
140151
@@ -181,14 +192,14 @@ Examples codified under the [`examples`](https://github.com/terraform-aws-module
181192

182193
| Name | Version |
183194
|------|---------|
184-
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.13.1 |
185-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 4.22 |
195+
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
196+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.0 |
186197

187198
## Providers
188199

189200
| Name | Version |
190201
|------|---------|
191-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 4.22 |
202+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.0 |
192203

193204
## Modules
194205

examples/complete/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,14 @@ Note that this example may create resources which will incur monetary charges on
2727

2828
| Name | Version |
2929
|------|---------|
30-
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.13.1 |
31-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 4.22 |
30+
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
31+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.0 |
3232

3333
## Providers
3434

3535
| Name | Version |
3636
|------|---------|
37-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 4.22 |
37+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.0 |
3838

3939
## Modules
4040

examples/complete/main.tf

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -137,12 +137,23 @@ module "ecr_registry" {
137137
registry_scan_rules = [
138138
{
139139
scan_frequency = "SCAN_ON_PUSH"
140-
filter = "*"
141-
filter_type = "WILDCARD"
140+
filter = [
141+
{
142+
filter = "example1"
143+
filter_type = "WILDCARD"
144+
},
145+
{ filter = "example2"
146+
filter_type = "WILDCARD"
147+
}
148+
]
142149
}, {
143150
scan_frequency = "CONTINUOUS_SCAN"
144-
filter = "example"
145-
filter_type = "WILDCARD"
151+
filter = [
152+
{
153+
filter = "example"
154+
filter_type = "WILDCARD"
155+
}
156+
]
146157
}
147158
]
148159

examples/complete/versions.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
terraform {
2-
required_version = ">= 0.13.1"
2+
required_version = ">= 1.0"
33

44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 4.22"
7+
version = ">= 5.0"
88
}
99
}
1010
}

main.tf

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -287,9 +287,13 @@ resource "aws_ecr_registry_scanning_configuration" "this" {
287287
content {
288288
scan_frequency = rule.value.scan_frequency
289289

290-
repository_filter {
291-
filter = rule.value.filter
292-
filter_type = try(rule.value.filter_type, "WILDCARD")
290+
dynamic "repository_filter" {
291+
for_each = rule.value.filter
292+
293+
content {
294+
filter = repository_filter.value.filter
295+
filter_type = try(repository_filter.value.filter_type, "WILDCARD")
296+
}
293297
}
294298
}
295299
}

versions.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
terraform {
2-
required_version = ">= 0.13.1"
2+
required_version = ">= 1.0"
33

44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 4.22"
7+
version = ">= 5.0"
88
}
99
}
1010
}

0 commit comments

Comments
 (0)