Skip to content

Commit 7ddccc2

Browse files
weklunddgraeber
andauthored
fix: update deprecated database engine versions (#340)
Co-authored-by: Derek Graeber <dgraeber@amazon.com>
1 parent 2f3371b commit 7ddccc2

7 files changed

Lines changed: 36 additions & 18 deletions

File tree

manifests/local/database-modules.yaml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ parameters:
1515
key: PrivateSubnetIds
1616
- name: number-instances
1717
value: 1
18+
- name: parameter-group-family
19+
value: "1.4"
1820
---
1921
name: mysql
2022
path: modules/database/rds
@@ -37,7 +39,7 @@ parameters:
3739
- name: engine
3840
value: mysql
3941
- name: engine-version
40-
value: 8.0.35
42+
value: 8.0.44
4143
- name: instance-type
4244
value: t3.small
4345
- name: admin-username
@@ -68,7 +70,7 @@ parameters:
6870
- name: engine
6971
value: postgresql
7072
- name: engine-version
71-
value: 16.1
73+
value: 16.11
7274
- name: instance-type
7375
value: m6gd.large
7476
- name: admin-username

modules/database/neptune/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ This module creates a Neptune cluster for use in IDF
1616

1717
#### Optional
1818
- `number-instances`: The number of compute nodes, defaults to `2`
19+
- `parameter-group-family`: The Neptune parameter group family version (e.g., `1.2`, `1.3`, `1.4`), defaults to `1.4`
1920

2021

2122
### Module Metadata Outputs

modules/database/neptune/app.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ def _param(name: str) -> str:
3333
raise ValueError("missing input parameter private-subnet-ids")
3434

3535
num_instances = int(os.getenv(_param("NUMBER_INSTANCES"), "1"))
36+
parameter_group_family = os.getenv(_param("PARAMETER_GROUP_FAMILY"), "1.4")
3637

3738
app = App()
3839

@@ -49,6 +50,7 @@ def _param(name: str) -> str:
4950
vpc_id=vpc_id,
5051
private_subnet_ids=private_subnet_ids,
5152
number_instances=num_instances,
53+
parameter_group_family=parameter_group_family,
5254
)
5355

5456
CfnOutput(

modules/database/neptune/deployspec.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ deploy:
33
phases:
44
install:
55
commands:
6-
- npm install -g aws-cdk@2.147.3
6+
- npm install -g aws-cdk@latest
77
- pip install -r requirements.txt
88
build:
99
commands:
@@ -14,7 +14,7 @@ destroy:
1414
phases:
1515
install:
1616
commands:
17-
- npm install -g aws-cdk@2.147.3
17+
- npm install -g aws-cdk@latest
1818
- pip install -r requirements.txt
1919
build:
2020
commands:
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
aws-cdk-lib==2.147.3
2-
aws-cdk.aws-neptune-alpha==2.147.3-alpha.0
3-
constructs==10.0.91
4-
cdk-nag==2.12.29
1+
aws-cdk-lib>=2.180.0,<3.0.0
2+
aws-cdk.aws-neptune-alpha>=2.180.0a0
3+
constructs>=10.0.91,<11.0.0
4+
cdk-nag>=2.12.29
55
boto3>=1.42.0,<2.0.0

modules/database/neptune/requirements.txt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@ attrs==25.4.0
44
# via
55
# cattrs
66
# jsii
7-
aws-cdk-asset-awscli-v1==2.2.264
8-
# via aws-cdk-lib
9-
aws-cdk-asset-kubectl-v20==2.1.4
7+
aws-cdk-asset-awscli-v1==2.2.263
108
# via aws-cdk-lib
119
aws-cdk-asset-node-proxy-agent-v6==2.1.0
1210
# via aws-cdk-lib
13-
aws-cdk-aws-neptune-alpha==2.147.3a0
11+
aws-cdk-aws-neptune-alpha==2.236.0a0
1412
# via -r requirements.in
15-
aws-cdk-lib==2.147.3
13+
aws-cdk-cloud-assembly-schema==48.20.0
14+
# via aws-cdk-lib
15+
aws-cdk-lib==2.236.0
1616
# via
1717
# -r requirements.in
1818
# aws-cdk-aws-neptune-alpha
@@ -42,18 +42,18 @@ jmespath==1.1.0
4242
jsii==1.126.0
4343
# via
4444
# aws-cdk-asset-awscli-v1
45-
# aws-cdk-asset-kubectl-v20
4645
# aws-cdk-asset-node-proxy-agent-v6
4746
# aws-cdk-aws-neptune-alpha
47+
# aws-cdk-cloud-assembly-schema
4848
# aws-cdk-lib
4949
# cdk-nag
5050
# constructs
5151
publication==0.0.3
5252
# via
5353
# aws-cdk-asset-awscli-v1
54-
# aws-cdk-asset-kubectl-v20
5554
# aws-cdk-asset-node-proxy-agent-v6
5655
# aws-cdk-aws-neptune-alpha
56+
# aws-cdk-cloud-assembly-schema
5757
# aws-cdk-lib
5858
# cdk-nag
5959
# constructs
@@ -69,9 +69,9 @@ six==1.17.0
6969
typeguard==2.13.3
7070
# via
7171
# aws-cdk-asset-awscli-v1
72-
# aws-cdk-asset-kubectl-v20
7372
# aws-cdk-asset-node-proxy-agent-v6
7473
# aws-cdk-aws-neptune-alpha
74+
# aws-cdk-cloud-assembly-schema
7575
# aws-cdk-lib
7676
# jsii
7777
typing-extensions==4.15.0

modules/database/neptune/stack.py

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ def __init__(
2626
vpc_id: str,
2727
private_subnet_ids: List[str],
2828
number_instances: int,
29+
parameter_group_family: str = "1.4",
2930
**kwargs: Any,
3031
) -> None:
3132
super().__init__(scope, id, description="This stack deploys Amazon Neptune Cluster resources", **kwargs)
@@ -42,6 +43,18 @@ def __init__(
4243
# Tagging all resources
4344
Tags.of(scope=cast(IConstruct, self)).add(key="Deployment", value=full_dep_mod)
4445

46+
# Map parameter group family string to enum
47+
family_map = {
48+
"1.2": neptune.ParameterGroupFamily.NEPTUNE_1_2,
49+
"1.3": neptune.ParameterGroupFamily.NEPTUNE_1_3,
50+
"1.4": neptune.ParameterGroupFamily.NEPTUNE_1_4,
51+
}
52+
pg_family = family_map.get(parameter_group_family)
53+
if pg_family is None:
54+
raise ValueError(
55+
f"Unsupported parameter-group-family: {parameter_group_family}. Supported values: 1.2, 1.3, 1.4"
56+
)
57+
4558
# Importing the VPC
4659
self.vpc = ec2.Vpc.from_lookup(
4760
self,
@@ -74,15 +87,15 @@ def __init__(
7487
self,
7588
f"{dep_mod}ClusterParams",
7689
description="Cluster parameter group",
77-
family=neptune.ParameterGroupFamily.NEPTUNE_1_3,
90+
family=pg_family,
7891
parameters={"neptune_enable_audit_log": "1"},
7992
)
8093

8194
db_params = neptune.ParameterGroup(
8295
self,
8396
"DbParams",
8497
description="Db parameter group",
85-
family=neptune.ParameterGroupFamily.NEPTUNE_1_3,
98+
family=pg_family,
8699
parameters={"neptune_query_timeout": "120000"},
87100
)
88101

0 commit comments

Comments
 (0)