cdk-factory 0.17.6__py3-none-any.whl → 0.18.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.

@@ -264,9 +264,9 @@ class AutoScalingStack(IStack, VPCProviderMixin, StandardizedSsmMixin):
264
264
  for command in self.asg_config.user_data_commands:
265
265
  processed_command = command
266
266
  # Substitute SSM-imported values
267
- if "ecs_cluster_name" in ssm_imports and "{{ecs_cluster_name}}" in command:
268
- cluster_name = ssm_imports["ecs_cluster_name"]
269
- processed_command = command.replace("{{ecs_cluster_name}}", cluster_name)
267
+ if "cluster_name" in ssm_imports and "{{cluster_name}}" in command:
268
+ cluster_name = ssm_imports["cluster_name"]
269
+ processed_command = command.replace("{{cluster_name}}", cluster_name)
270
270
  processed_commands.append(processed_command)
271
271
 
272
272
  user_data.add_commands(*processed_commands)
@@ -276,8 +276,8 @@ class AutoScalingStack(IStack, VPCProviderMixin, StandardizedSsmMixin):
276
276
  if self.ecs_cluster:
277
277
  # Use the SSM-imported cluster name if available, otherwise fallback to default format
278
278
  ssm_imports = self._get_ssm_imports()
279
- if "ecs_cluster_name" in ssm_imports:
280
- cluster_name = ssm_imports["ecs_cluster_name"]
279
+ if "cluster_name" in ssm_imports:
280
+ cluster_name = ssm_imports["cluster_name"]
281
281
  ecs_commands = [
282
282
  f"echo 'ECS_CLUSTER={cluster_name}' >> /etc/ecs/ecs.config",
283
283
  "systemctl restart ecs"
@@ -335,8 +335,8 @@ class AutoScalingStack(IStack, VPCProviderMixin, StandardizedSsmMixin):
335
335
 
336
336
  if ecs_detected:
337
337
  ssm_imports = self._get_ssm_imports()
338
- if "ecs_cluster_name" in ssm_imports:
339
- cluster_name = ssm_imports["ecs_cluster_name"]
338
+ if "cluster_name" in ssm_imports:
339
+ cluster_name = ssm_imports["cluster_name"]
340
340
 
341
341
  # Use the shared VPC
342
342
  vpc = self._get_or_create_vpc()
@@ -186,7 +186,7 @@ class EcsClusterStack(IStack, VPCProviderMixin, StandardizedSsmMixin):
186
186
  "ECSInstanceRole",
187
187
  assumed_by=iam.ServicePrincipal("ec2.amazonaws.com"),
188
188
  managed_policies=[
189
- iam.ManagedPolicy.from_aws_managed_policy_name("AmazonEC2ContainerServiceforEC2Role"),
189
+ iam.ManagedPolicy.from_aws_managed_policy_name("service-role/AmazonEC2ContainerServiceforEC2Role"),
190
190
  iam.ManagedPolicy.from_aws_managed_policy_name("AmazonEC2ContainerRegistryReadOnly"),
191
191
  iam.ManagedPolicy.from_aws_managed_policy_name("AmazonSSMManagedInstanceCore"),
192
192
  ],
@@ -260,19 +260,20 @@ class EcsClusterStack(IStack, VPCProviderMixin, StandardizedSsmMixin):
260
260
 
261
261
  # Prepare resource values for export
262
262
  resource_values = {
263
- "ecs_cluster_name": self.ecs_cluster.cluster_name,
264
- "ecs_cluster_arn": self.ecs_cluster.cluster_arn,
263
+ "cluster_name": self.ecs_cluster.cluster_name,
264
+ "cluster_arn": self.ecs_cluster.cluster_arn,
265
+ "instance_role_arn": self.instance_role.role_arn,
265
266
  }
266
267
 
267
268
  # Add security group ID if available
268
269
  if hasattr(self.ecs_cluster, 'connections') and self.ecs_cluster.connections:
269
270
  security_groups = self.ecs_cluster.connections.security_groups
270
271
  if security_groups:
271
- resource_values["ecs_cluster_security_group_id"] = security_groups[0].security_group_id
272
+ resource_values["security_group_id"] = security_groups[0].security_group_id
272
273
 
273
274
  # Add instance profile ARN if created
274
275
  if self.instance_profile:
275
- resource_values["ecs_instance_profile_arn"] = self.instance_profile.attr_arn
276
+ resource_values["instance_profile_arn"] = self.instance_profile.attr_arn
276
277
 
277
278
  # Export using standardized SSM mixin
278
279
  exported_params = self.export_standardized_ssm_parameters(resource_values)
@@ -54,6 +54,11 @@ class StackStandards:
54
54
  git_hash = GitUtilities.get_git_commit_hash()
55
55
  if git_hash:
56
56
  aws_cdk.Tags.of(scope).add("ApplicationGitHash", git_hash)
57
+
58
+ # Add CDK Factory version for tracking and debugging
59
+ from cdk_factory.version import __version__
60
+ aws_cdk.Tags.of(scope).add("CdkFactoryVersion", __version__)
61
+
57
62
  aws_cdk.Tags.of(scope).add(
58
63
  "DeploymentDateUTC", str(datetime.datetime.now(datetime.UTC))
59
64
  )
cdk_factory/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = "0.17.6"
1
+ __version__ = "0.18.0"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cdk_factory
3
- Version: 0.17.6
3
+ Version: 0.18.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=mmrB6n6zH1c3iHQ4iJcecY24GV6KoBQ8Vbb5t5vYe3E,23
5
+ cdk_factory/version.py,sha256=0EHw4xygmgkGSyfwNfEoMlQyN0uHxjHtlSFF79s6120,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=eJ3Pl3GWk1jVr_bYQaaWlw4_-ZiFGaiXllI_fOOX1i0,9323
@@ -81,12 +81,12 @@ cdk_factory/stack/stack_module_loader.py,sha256=EA7ceb8qyktzkYgPYaixQdPJsi8FwTsM
81
81
  cdk_factory/stack/stack_module_registry.py,sha256=J14-A75VZESzRQa8p-Fepdap7Z8T7mradTu3sVzuBx8,378
82
82
  cdk_factory/stack/stack_modules.py,sha256=kgEK-j0smZPozVwTCfM1g1V17EyTBT0TXAQZq4vZz0o,784
83
83
  cdk_factory/stack_library/__init__.py,sha256=_v4kz9EYAjox6strrTK_4fb9GloJ2Kyhf63VRPivl2U,638
84
- cdk_factory/stack_library/stack_base.py,sha256=tTleSFmlf26DuKVF_ytftf8P7IVWb5iex8cYfYupfvQ,4940
84
+ cdk_factory/stack_library/stack_base.py,sha256=Cu3qeqPQf33QaaXoxk_EaziNCIXcyspOo5AU3eX_wyM,5140
85
85
  cdk_factory/stack_library/acm/__init__.py,sha256=4FNRLykblcKZvq_wieYwvv9N_jgrZnJ7ECH9xKh-0Ls,81
86
86
  cdk_factory/stack_library/acm/acm_stack.py,sha256=QJ3GkT17PmWoGkfO5Um02hvrfyJ9HbiPMnclwDP7IbA,5846
87
87
  cdk_factory/stack_library/api_gateway/api_gateway_stack.py,sha256=_wbPBsgh7FHq9cnL44CiuffBj3XCO5ErQx_yclxFsVY,39669
88
88
  cdk_factory/stack_library/auto_scaling/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
89
- cdk_factory/stack_library/auto_scaling/auto_scaling_stack_standardized.py,sha256=wpR8m4JuM5BaKNOAQ4SPUbmsnpd1QQWSqffpNVMgZ8w,21991
89
+ cdk_factory/stack_library/auto_scaling/auto_scaling_stack_standardized.py,sha256=Den7t4AAEn1slQPRHVq_DdzJSp1NRJgvObJEB8diQ8g,21959
90
90
  cdk_factory/stack_library/aws_lambdas/lambda_stack.py,sha256=SFbBPvvCopbyiuYtq-O5sQkFCf94Wzua6aDUXiFDSB4,26161
91
91
  cdk_factory/stack_library/buckets/README.md,sha256=XkK3UNVtRLE7NtUvbhCOBBYUYi8hlrrSaI1s3GJVrqI,78
92
92
  cdk_factory/stack_library/buckets/bucket_stack.py,sha256=SLoZqSffAqmeBBEVUQg54D_8Ad5UKdkjEAmKAVgAqQo,1778
@@ -98,7 +98,7 @@ cdk_factory/stack_library/dynamodb/dynamodb_stack.py,sha256=3_8lQP91GnBY77-61mtn
98
98
  cdk_factory/stack_library/ecr/README.md,sha256=xw2wPx9WN03Y4BBwqvbi9lAFGNyaD1FUNpqxVJX14Oo,179
99
99
  cdk_factory/stack_library/ecr/ecr_stack.py,sha256=KLbd5WN5-ZiojsS5wJ4PX-tIL0cCylCSvXjO6sVrgWY,2102
100
100
  cdk_factory/stack_library/ecs/__init__.py,sha256=ebM8vVboNBplK0ua6bMSpNjewcFFkdvJ5wvVYEL1ONQ,302
101
- cdk_factory/stack_library/ecs/ecs_cluster_stack_standardized.py,sha256=4zB89HNp5n6GrL8nHUppXckdQqNrOJ13keKgr6P9uSk,11328
101
+ cdk_factory/stack_library/ecs/ecs_cluster_stack_standardized.py,sha256=QT_pNQYS28nQ3vQ-kvICOCRvkGeLRrOXuUMDKqJ-C64,11379
102
102
  cdk_factory/stack_library/ecs/ecs_service_stack.py,sha256=3en447kWBOqd0d_i2C8mRRBscO2GqN9-B2l_PW7kZuM,27409
103
103
  cdk_factory/stack_library/lambda_edge/__init__.py,sha256=ByBJ_CWdc4UtTmFBZH-6pzBMNkjkdtE65AmnB0Fs6lM,156
104
104
  cdk_factory/stack_library/lambda_edge/lambda_edge_stack.py,sha256=ft5AxHy8__F90ZYDaoJwTjACGIfrn2Sd9Zr2CdHO7GE,16398
@@ -136,8 +136,8 @@ cdk_factory/utilities/os_execute.py,sha256=5Op0LY_8Y-pUm04y1k8MTpNrmQvcLmQHPQITE
136
136
  cdk_factory/utils/api_gateway_utilities.py,sha256=If7Xu5s_UxmuV-kL3JkXxPLBdSVUKoLtohm0IUFoiV8,4378
137
137
  cdk_factory/validation/config_validator.py,sha256=Pb0TkLiPFzUplBOgMorhRCVm08vEzZhRU5xXCDTa5CA,17602
138
138
  cdk_factory/workload/workload_factory.py,sha256=yDI3cRhVI5ELNDcJPLpk9UY54Uind1xQoV3spzT4z7E,6068
139
- cdk_factory-0.17.6.dist-info/METADATA,sha256=e_HqvqS9J3KYXTtblXdbbJq3rLgNr9Oq_lsG-jK38P8,2451
140
- cdk_factory-0.17.6.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
141
- cdk_factory-0.17.6.dist-info/entry_points.txt,sha256=S1DPe0ORcdiwEALMN_WIo3UQrW_g4YdQCLEsc_b0Swg,53
142
- cdk_factory-0.17.6.dist-info/licenses/LICENSE,sha256=NOtdOeLwg2il_XBJdXUPFPX8JlV4dqTdDGAd2-khxT8,1066
143
- cdk_factory-0.17.6.dist-info/RECORD,,
139
+ cdk_factory-0.18.0.dist-info/METADATA,sha256=Ck5iFO4mcy-raXGcEbs-RTfDx-RWqbLBtrNDRcogK_E,2451
140
+ cdk_factory-0.18.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
141
+ cdk_factory-0.18.0.dist-info/entry_points.txt,sha256=S1DPe0ORcdiwEALMN_WIo3UQrW_g4YdQCLEsc_b0Swg,53
142
+ cdk_factory-0.18.0.dist-info/licenses/LICENSE,sha256=NOtdOeLwg2il_XBJdXUPFPX8JlV4dqTdDGAd2-khxT8,1066
143
+ cdk_factory-0.18.0.dist-info/RECORD,,