Skip to content

Commit db7576d

Browse files
Nnaga1jennyhliu
andauthored
CUMULUS-4364/4357: Backport to 20.2.x 4354/4272/4279 and Forward Release 4354 (#4130)
* CUMULUS-4354: Provider mismatches from CUMULUS-4191 preventing ingest (#4121) * first commit - still need int/unit tests * unit tests + small operator fix * fixing tf var value * fixing var name * adding units for lambdas * changing lambda var name casing + changelog update * removing erroneous tf json state file * small fixes to parsing of env var * backport 20.2.3 release PR * CUMULUS-4272: Support user-provided security group in RDS cluster (#4115) * CUMULUS-4272:Support user-provided or snapshot-derived security group in tf-modules/cumulus-rds-tf * changelog comment * fix terraform syntex * snapshot uses default sg if not provided * update changelog * add variable to example * update security group reference * CUMULUS-4279:Grant privileges on the public schema of the user database (#4110) * CUMULUS-4279:Grant privileges on the public schema of the user database * adding a release-20-2 stack for CI * CUMULUS-4275: Fix unit tests broken by updated HTTP error messages in got (#4102) * fix send-pan unit test http error * fix test-HttpsProviderClient ci unit test --------- Co-authored-by: jennyhliu <34660846+jennyhliu@users.noreply.github.com>
1 parent 18a882b commit db7576d

File tree

105 files changed

+763
-423
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

105 files changed

+763
-423
lines changed

CHANGELOG.md

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,39 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/).
66

77
## [Unreleased]
88

9+
## [v20.2.3] 2025-12-01
10+
11+
### Notable Changes
12+
13+
- **CUMULUS-4272**
14+
- The `tf-modules/cumulus-rds-tf` module now allows specifying an existing security group.
15+
This enhancement enables DAACs to migrate their existing RDS deployments to Aurora while
16+
reusing their existing security group, ensuring compatibility with existing
17+
`data-persistence-tf` and `cumulus-tf` modules.
18+
19+
### Fixed
20+
21+
- **CUMULUS-4279**
22+
- Updated the `ProvisionPostgresDatabase` Lambda to grant `create` and `usage` privileges
23+
on the public schema of the user database to the database user.
24+
This change is required because, starting with PostgreSQL 15, new databases assign ownership
25+
of the public schema to the pg_database_owner role. Existing clusters upgraded from versions
26+
prior to v15 preserve the previous ownership of the public schema.
27+
- **CUMULUS-4275**
28+
- Fixed unit tests broken by updated HTTP error messages in got
29+
30+
### Added
31+
32+
- **CUMULUS-4272**
33+
- Added `input_security_group_id` variable to `tf-modules/cumulus-rds-tf` module to allow
34+
specifying an existing security group when creating or restoring an Aurora PostgreSQL RDS cluster.
35+
36+
- **CUMULUS-4354**
37+
- Added an optional terraform-configurable lambda level env variable `allow_provider_mismatch_on_rule_filter` to `message-consumer` and `sqs-message-consumer` to check
38+
whether to consider rule/message provider mismatches
39+
- Added a `rule.meta.allowProviderMismatchOnRuleFilter` check to `filterRulesByRuleParams` as a rule-level fallback to check
40+
whether to consider rule/message provider mismatches for the specific rule
41+
942
## [v20.2.2] 2025-10-08
1043

1144
### Changed
@@ -8666,7 +8699,8 @@ Note: There was an issue publishing 1.12.0. Upgrade to 1.12.1.
86668699
## [v1.0.0] - 2018-02-23
86678700

86688701

8669-
[Unreleased]: https://github.com/nasa/cumulus/compare/v20.2.2...HEAD
8702+
[Unreleased]: https://github.com/nasa/cumulus/compare/v20.2.3...HEAD
8703+
[v20.2.3]: https://github.com/nasa/cumulus/compare/v20.2.2...v20.2.3
86708704
[v20.2.2]: https://github.com/nasa/cumulus/compare/v20.2.1...v20.2.2
86718705
[v20.2.1]: https://github.com/nasa/cumulus/compare/v20.2.0...v20.2.1
86728706
[v20.2.0]: https://github.com/nasa/cumulus/compare/v20.1.2...v20.2.0

example/cumulus-tf/main.tf

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,9 @@ module "cumulus" {
213213
additional_log_groups_to_elk = var.additional_log_groups_to_elk
214214

215215
tags = local.tags
216+
217+
# For message consumer lambdas in order to disable rule/message mismatches
218+
allow_provider_mismatch_on_rule_filter = var.allow_provider_mismatch_on_rule_filter
216219
}
217220

218221
resource "aws_security_group" "no_ingress_all_egress" {

example/cumulus-tf/variables.tf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,12 @@ variable "default_s3_multipart_chunksize_mb" {
200200
default = 256
201201
}
202202

203+
variable "allow_provider_mismatch_on_rule_filter" {
204+
description = "optional variable to be used in message_consumer lambdas for disabling rule/message provider mismatches"
205+
type = bool
206+
default = false
207+
}
208+
203209
variable "tea_distribution_url" {
204210
type = string
205211
default = null

example/data-persistence-tf/main.tf

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ module "provision_database" {
3636
permissions_boundary_arn = var.permissions_boundary_arn
3737
rds_user_password = var.rds_user_password == "" ? random_string.db_pass.result : var.rds_user_password
3838
rds_connection_timing_configuration = var.rds_connection_timing_configuration
39-
dbRecreation = true
39+
# dbRecreation should not be enabled in production
40+
dbRecreation = var.dbRecreation
4041
lambda_timeouts = var.lambda_timeouts
4142
lambda_memory_sizes = var.lambda_memory_sizes
4243
}

example/data-persistence-tf/variables.tf

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,3 +90,10 @@ variable "lambda_timeouts" {
9090
ProvisionPostgresDatabase = 600 # data-persistence
9191
}
9292
}
93+
94+
variable "dbRecreation" {
95+
type = bool
96+
description = "**Warning** Data loss will occur if set to 'true'. Boolean flag to set user database to be wiped and recreated on provision for each deploy"
97+
default = true
98+
}
99+

example/deployments/cumulus/cumulus-std.tfvars

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,3 +63,5 @@ lambda_timeouts = {
6363
queue_granules_task_timeout: 900,
6464
discover_granules_task_timeout: 900
6565
}
66+
67+
dbRecreation = false
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
prefix = "release-20-2-ci-tf"
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
prefix = "release-20-2-ci-tf"
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
prefix = "release-20-2-ci-tf"

example/lambdas/asyncOperations/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@cumulus/test-async-operations",
3-
"version": "20.2.2",
3+
"version": "20.2.3",
44
"description": "AsyncOperations Test Lambda",
55
"main": "index.js",
66
"private": true,

0 commit comments

Comments
 (0)