cdk-factory 0.16.3__py3-none-any.whl → 0.16.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -155,6 +155,12 @@ class RdsConfig(EnhancedBaseConfig):
155
155
  """Allocated storage in GB"""
156
156
  # Ensure we return an integer
157
157
  return int(self.__config.get("allocated_storage", 20))
158
+
159
+ @property
160
+ def max_allocated_storage(self) -> Optional[int]:
161
+ """Maximum storage for auto-scaling in GB (enables storage auto-scaling if set)"""
162
+ max_storage = self.__config.get("max_allocated_storage")
163
+ return int(max_storage) if max_storage is not None else None
158
164
 
159
165
  @property
160
166
  def storage_encrypted(self) -> bool:
@@ -180,6 +186,11 @@ class RdsConfig(EnhancedBaseConfig):
180
186
  def enable_performance_insights(self) -> bool:
181
187
  """Whether to enable Performance Insights"""
182
188
  return self.__config.get("enable_performance_insights", True)
189
+
190
+ @property
191
+ def allow_major_version_upgrade(self) -> bool:
192
+ """Whether to allow major version upgrades"""
193
+ return self.__config.get("allow_major_version_upgrade", False)
183
194
 
184
195
  @property
185
196
  def subnet_group_name(self) -> str:
@@ -244,9 +244,18 @@ class RdsStack(IStack, EnhancedSsmParameterMixin):
244
244
  "backup_retention": Duration.days(self.rds_config.backup_retention),
245
245
  "cloudwatch_logs_exports": self.rds_config.cloudwatch_logs_exports,
246
246
  "enable_performance_insights": self.rds_config.enable_performance_insights,
247
+ "allow_major_version_upgrade": self.rds_config.allow_major_version_upgrade,
247
248
  "removal_policy": removal_policy,
248
249
  }
249
250
 
251
+ # Add storage auto-scaling if max_allocated_storage is configured
252
+ if self.rds_config.max_allocated_storage:
253
+ db_props["max_allocated_storage"] = self.rds_config.max_allocated_storage
254
+ logger.info(
255
+ f"Storage auto-scaling enabled: {self.rds_config.allocated_storage}GB "
256
+ f"-> {self.rds_config.max_allocated_storage}GB"
257
+ )
258
+
250
259
  # Use either subnet group or vpc_subnets depending on what's available
251
260
  if db_subnet_group:
252
261
  db_props["subnet_group"] = rds.SubnetGroup.from_subnet_group_name(
cdk_factory/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = "0.16.3"
1
+ __version__ = "0.16.4"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cdk_factory
3
- Version: 0.16.3
3
+ Version: 0.16.4
4
4
  Summary: CDK Factory. A QuickStarter and best practices setup for CDK projects
5
5
  Author-email: Eric Wilson <eric.wilson@geekcafe.com>
6
6
  License: MIT License
@@ -2,7 +2,7 @@ cdk_factory/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  cdk_factory/app.py,sha256=RnX0-pwdTAPAdKJK_j13Zl8anf9zYKBwboR0KA8K8xM,10346
3
3
  cdk_factory/cdk.json,sha256=SKZKhJ2PBpFH78j-F8S3VDYW-lf76--Q2I3ON-ZIQfw,3106
4
4
  cdk_factory/cli.py,sha256=FGbCTS5dYCNsfp-etshzvFlGDCjC28r6rtzYbe7KoHI,6407
5
- cdk_factory/version.py,sha256=VI_bTBU6ZbRZpVhA2ix956hkRwHW57V59GEZJkhU-vc,23
5
+ cdk_factory/version.py,sha256=v0NTmSx9E_r4wWkO-UdvuH1fI3XtgjoFi5IbuPS9pjY,23
6
6
  cdk_factory/builds/README.md,sha256=9BBWd7bXpyKdMU_g2UljhQwrC9i5O_Tvkb6oPvndoZk,90
7
7
  cdk_factory/commands/command_loader.py,sha256=QbLquuP_AdxtlxlDy-2IWCQ6D-7qa58aphnDPtp_uTs,3744
8
8
  cdk_factory/configurations/base_config.py,sha256=JKjhNsy0RCUZy1s8n5D_aXXI-upR9izaLtCTfKYiV9k,9624
@@ -39,7 +39,7 @@ cdk_factory/configurations/resources/lambda_layers.py,sha256=gVeP_-LC3Eq0lkPaG_J
39
39
  cdk_factory/configurations/resources/lambda_triggers.py,sha256=MD7cdMNKEulNBhtMLIFnWJuJ5R-yyIqa0LHUgbSQerA,834
40
40
  cdk_factory/configurations/resources/load_balancer.py,sha256=CNmE4uqOgyI0amZy2EDvDF5_Feiw5kcCmbkY1HI5u_s,5911
41
41
  cdk_factory/configurations/resources/monitoring.py,sha256=zsfDMa7yph33Ql8iP7lIqqLAyixh-Mesi0imtZJFdcE,2310
42
- cdk_factory/configurations/resources/rds.py,sha256=ZPNQhsOOxE_cg9CeFIhjKLyQYzMURg_3wb8Ckc2tAtw,15724
42
+ cdk_factory/configurations/resources/rds.py,sha256=_nMPOC1Rinc-nbVJzl__3vodBQc4sCeVPY_NfjWZFoA,16217
43
43
  cdk_factory/configurations/resources/resource_mapping.py,sha256=cwv3n63RJ6E59ErsmSTdkW4i-g8huhHtKI0ExbRhJxA,2182
44
44
  cdk_factory/configurations/resources/resource_naming.py,sha256=VE9S2cpzp11qqPL2z1sX79wXH0o1SntO2OG74nEmWC8,5508
45
45
  cdk_factory/configurations/resources/resource_types.py,sha256=1WQHyDoErb-M-tETZZzyLDtbq_jdC85-I403dM48pgE,2317
@@ -104,7 +104,7 @@ cdk_factory/stack_library/load_balancer/load_balancer_stack.py,sha256=Mw8r3919-g
104
104
  cdk_factory/stack_library/monitoring/__init__.py,sha256=k1G_KDx47Aw0UugaL99PN_TKlyLK4nkJVApCaAK7GJg,153
105
105
  cdk_factory/stack_library/monitoring/monitoring_stack.py,sha256=N_1YvEXE7fboH_S3kv_dSKZsufxMuPdFMjGzlNFpuSo,19283
106
106
  cdk_factory/stack_library/rds/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
107
- cdk_factory/stack_library/rds/rds_stack.py,sha256=otT4qCl_GExUgl4xHWrcGksnJeg2Ps6luZxbpCXQYcI,15048
107
+ cdk_factory/stack_library/rds/rds_stack.py,sha256=ohBNpXJKkrj1rmfFPaBuZKcYQh2j_DB_tJ2A3jm6M0s,15546
108
108
  cdk_factory/stack_library/route53/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
109
109
  cdk_factory/stack_library/route53/route53_stack.py,sha256=hW-iKXdw862cYg4o-OL7X4CnKxzXdrzPgfQ8KdxTMnE,8403
110
110
  cdk_factory/stack_library/rum/__init__.py,sha256=gUrWQdzd4rZ2J0YzAQC8PsEGAS7QgyYjB2ZCUKWasy4,90
@@ -132,8 +132,8 @@ cdk_factory/utilities/lambda_function_utilities.py,sha256=S1GvBsY_q2cyUiaud3HORJ
132
132
  cdk_factory/utilities/os_execute.py,sha256=5Op0LY_8Y-pUm04y1k8MTpNrmQvcLmQHPQITEP7EuSU,1019
133
133
  cdk_factory/utils/api_gateway_utilities.py,sha256=If7Xu5s_UxmuV-kL3JkXxPLBdSVUKoLtohm0IUFoiV8,4378
134
134
  cdk_factory/workload/workload_factory.py,sha256=yDI3cRhVI5ELNDcJPLpk9UY54Uind1xQoV3spzT4z7E,6068
135
- cdk_factory-0.16.3.dist-info/METADATA,sha256=ZcxvwT_8nNbqBmdht6NiCo7XSgmh6cFLZPt51K3UU7w,2451
136
- cdk_factory-0.16.3.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
137
- cdk_factory-0.16.3.dist-info/entry_points.txt,sha256=S1DPe0ORcdiwEALMN_WIo3UQrW_g4YdQCLEsc_b0Swg,53
138
- cdk_factory-0.16.3.dist-info/licenses/LICENSE,sha256=NOtdOeLwg2il_XBJdXUPFPX8JlV4dqTdDGAd2-khxT8,1066
139
- cdk_factory-0.16.3.dist-info/RECORD,,
135
+ cdk_factory-0.16.4.dist-info/METADATA,sha256=XcD0gE5ROxuXm3YB12qeIZZD7DytTLgnXIG2USGSr4Q,2451
136
+ cdk_factory-0.16.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
137
+ cdk_factory-0.16.4.dist-info/entry_points.txt,sha256=S1DPe0ORcdiwEALMN_WIo3UQrW_g4YdQCLEsc_b0Swg,53
138
+ cdk_factory-0.16.4.dist-info/licenses/LICENSE,sha256=NOtdOeLwg2il_XBJdXUPFPX8JlV4dqTdDGAd2-khxT8,1066
139
+ cdk_factory-0.16.4.dist-info/RECORD,,