cdk-factory 0.11.0__py3-none-any.whl → 0.12.0__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.

Potentially problematic release.


This version of cdk-factory might be problematic. Click here for more details.

@@ -169,6 +169,13 @@ class StaticWebSiteStack(IStack):
169
169
  aliases=aliases,
170
170
  distribution=cloudfront_distribution.distribution,
171
171
  )
172
+
173
+ # Export SSM parameters if configured
174
+ self.__export_ssm_parameters(
175
+ stack_config=stack_config,
176
+ bucket=bucket,
177
+ cloudfront_distribution=cloudfront_distribution,
178
+ )
172
179
 
173
180
  def __setup_route53_records(
174
181
  self,
@@ -200,6 +207,58 @@ class StaticWebSiteStack(IStack):
200
207
  zone_name=hosted_zone_name,
201
208
  )
202
209
 
210
+ def __export_ssm_parameters(
211
+ self,
212
+ stack_config: StackConfig,
213
+ bucket: s3.IBucket,
214
+ cloudfront_distribution: CloudFrontDistributionConstruct,
215
+ ) -> None:
216
+ """
217
+ Export stack outputs to SSM Parameter Store if ssm_exports is configured.
218
+
219
+ Args:
220
+ stack_config: Stack configuration containing ssm_exports
221
+ bucket: The S3 bucket
222
+ cloudfront_distribution: The CloudFront distribution construct
223
+ """
224
+ ssm_exports = stack_config.dictionary.get("ssm_exports", {})
225
+
226
+ if not ssm_exports:
227
+ logger.debug("No SSM exports configured for this stack")
228
+ return
229
+
230
+ # Export bucket name if configured
231
+ if "bucket_name" in ssm_exports:
232
+ self.export_ssm_parameter(
233
+ scope=self,
234
+ id="SsmExportBucketName",
235
+ value=bucket.bucket_name,
236
+ parameter_name=ssm_exports["bucket_name"],
237
+ description=f"S3 bucket name for {stack_config.name}",
238
+ )
239
+
240
+ # Export CloudFront domain if configured
241
+ if "cloudfront_domain" in ssm_exports and cloudfront_distribution.distribution:
242
+ self.export_ssm_parameter(
243
+ scope=self,
244
+ id="SsmExportCloudFrontDomain",
245
+ value=cloudfront_distribution.dns_name,
246
+ parameter_name=ssm_exports["cloudfront_domain"],
247
+ description=f"CloudFront domain name for {stack_config.name}",
248
+ )
249
+
250
+ # Export CloudFront distribution ID if configured
251
+ if "cloudfront_distribution_id" in ssm_exports and cloudfront_distribution.distribution:
252
+ self.export_ssm_parameter(
253
+ scope=self,
254
+ id="SsmExportCloudFrontDistributionId",
255
+ value=cloudfront_distribution.distribution_id,
256
+ parameter_name=ssm_exports["cloudfront_distribution_id"],
257
+ description=f"CloudFront distribution ID for {stack_config.name}",
258
+ )
259
+
260
+ logger.info(f"Exported {len(ssm_exports)} SSM parameters for stack {stack_config.name}")
261
+
203
262
  def __get_version_number(self, assets_path: str) -> str:
204
263
  version = "0.0.1.ckd.factory"
205
264
 
cdk_factory/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = "0.11.0"
1
+ __version__ = "0.12.0"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cdk_factory
3
- Version: 0.11.0
3
+ Version: 0.12.0
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=raMu9XA9JEjvdoTmFqcOw7qhJX24rYDP7XmS59TAO-Q,23
5
+ cdk_factory/version.py,sha256=eHjt9DPsMbptabS2yGx9Yhbyzq5hFSUHXb7zc8Q_8-o,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
@@ -112,7 +112,7 @@ cdk_factory/stack_library/security_group/security_group_stack.py,sha256=2zxd5ozg
112
112
  cdk_factory/stack_library/simple_queue_service/sqs_stack.py,sha256=jJksWrvrvgZUMM01RZ317DOIxqIJbkYYSYu38w0jHpc,6039
113
113
  cdk_factory/stack_library/vpc/__init__.py,sha256=7pIqP97Gf2AJbv9Ebp1WbQGHYhgEbWJ52L1MzeXBybA,42
114
114
  cdk_factory/stack_library/vpc/vpc_stack.py,sha256=zdDiGilf03esxuya5Z8zVYSVMAIuZBeD-ZKgfnEd6aw,10077
115
- cdk_factory/stack_library/websites/static_website_stack.py,sha256=KBQiV6PI09mpHGtH-So5Hk3uhfFLDepoXInGbfin0cY,7938
115
+ cdk_factory/stack_library/websites/static_website_stack.py,sha256=VoQOUZ_HFdRErBo0mpw73uXSNbjftxqdF5vbnZQHq4A,10351
116
116
  cdk_factory/stages/websites/static_website_stage.py,sha256=X4fpKXkhb0zIbSHx3QyddBhVSLBryb1vf1Cg2fMTqog,755
117
117
  cdk_factory/templates/README.md,sha256=ATBEjG6beYvbEAdLtZ_8xnxgFD5X0cgZoI_6pToqH90,2679
118
118
  cdk_factory/templates/app.py.template,sha256=aM60x0nNV80idtCL8jm1EddY63F5tDITYOlavg-BPMU,1069
@@ -129,8 +129,8 @@ cdk_factory/utilities/lambda_function_utilities.py,sha256=S1GvBsY_q2cyUiaud3HORJ
129
129
  cdk_factory/utilities/os_execute.py,sha256=5Op0LY_8Y-pUm04y1k8MTpNrmQvcLmQHPQITEP7EuSU,1019
130
130
  cdk_factory/utils/api_gateway_utilities.py,sha256=If7Xu5s_UxmuV-kL3JkXxPLBdSVUKoLtohm0IUFoiV8,4378
131
131
  cdk_factory/workload/workload_factory.py,sha256=mM8GU_5mKq_0OyK060T3JrUSUiGAcKf0eqNlT9mfaws,6028
132
- cdk_factory-0.11.0.dist-info/METADATA,sha256=rAWDht64P0RmvfM8FqV47xUsRr3scdyA6f70NXYzr1w,2451
133
- cdk_factory-0.11.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
134
- cdk_factory-0.11.0.dist-info/entry_points.txt,sha256=S1DPe0ORcdiwEALMN_WIo3UQrW_g4YdQCLEsc_b0Swg,53
135
- cdk_factory-0.11.0.dist-info/licenses/LICENSE,sha256=NOtdOeLwg2il_XBJdXUPFPX8JlV4dqTdDGAd2-khxT8,1066
136
- cdk_factory-0.11.0.dist-info/RECORD,,
132
+ cdk_factory-0.12.0.dist-info/METADATA,sha256=lR6Hw7lTDtaiBoW2ZjwAe-QbH0QUrEmoWcnOHfp3Q1c,2451
133
+ cdk_factory-0.12.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
134
+ cdk_factory-0.12.0.dist-info/entry_points.txt,sha256=S1DPe0ORcdiwEALMN_WIo3UQrW_g4YdQCLEsc_b0Swg,53
135
+ cdk_factory-0.12.0.dist-info/licenses/LICENSE,sha256=NOtdOeLwg2il_XBJdXUPFPX8JlV4dqTdDGAd2-khxT8,1066
136
+ cdk_factory-0.12.0.dist-info/RECORD,,