pangea 0.0.45 → 0.0.46

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.
Files changed (2051) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -83
  3. data/Dockerfile +4 -20
  4. data/Gemfile +0 -7
  5. data/Gemfile.lock +71 -211
  6. data/LICENSE +1 -1
  7. data/README.md +40 -208
  8. data/Rakefile +23 -146
  9. data/bin/pangea +2 -2
  10. data/example/config/README.md +3 -0
  11. data/example/config/sample.rb +20 -0
  12. data/flake.lock +6 -6
  13. data/flake.nix +0 -25
  14. data/gemset.nix +114 -575
  15. data/lib/pangea/cli/config.rb +99 -0
  16. data/lib/pangea/cli/constants.rb +33 -0
  17. data/lib/pangea/cli/subcommands/config.rb +212 -0
  18. data/lib/pangea/cli/subcommands/infra.rb +311 -0
  19. data/lib/pangea/cli/subcommands/main.rb +58 -0
  20. data/lib/pangea/cli/subcommands/pangea.rb +18 -0
  21. data/lib/pangea/cli/subcommands/state.rb +30 -0
  22. data/lib/pangea/cli.rb +63 -0
  23. data/lib/pangea/config.rb +35 -0
  24. data/lib/pangea/docker.rb +104 -0
  25. data/lib/pangea/errors/incorrect_subcommand_error.rb +2 -0
  26. data/lib/pangea/errors/namespace_not_found_error.rb +2 -0
  27. data/lib/pangea/errors/no_infra_target_error.rb +2 -0
  28. data/lib/pangea/errors/project_not_found_error.rb +2 -0
  29. data/lib/pangea/errors/site_not_found_error.rb +2 -0
  30. data/lib/pangea/executor.rb +10 -0
  31. data/lib/pangea/log/init.rb +2 -0
  32. data/lib/pangea/modcache.rb +79 -0
  33. data/lib/pangea/module.rb +17 -0
  34. data/lib/pangea/modules.rb +134 -0
  35. data/lib/pangea/processor.rb +101 -0
  36. data/lib/pangea/renderer.rb +241 -0
  37. data/lib/pangea/sandbox.rb +90 -0
  38. data/lib/pangea/say/init.rb +27 -0
  39. data/lib/pangea/shell/README.md +1 -0
  40. data/lib/pangea/shell/terraform.rb +21 -0
  41. data/lib/pangea/shell.rb +27 -0
  42. data/lib/pangea/stack.rb +11 -0
  43. data/lib/pangea/state.rb +96 -0
  44. data/lib/pangea/structures/README.md +3 -0
  45. data/lib/pangea/structures/abstract.rb +2 -0
  46. data/lib/pangea/structures/namespace.rb +4 -0
  47. data/lib/pangea/structures/project.rb +4 -0
  48. data/lib/pangea/structures/site.rb +4 -0
  49. data/lib/pangea/synthesizer/config.rb +38 -0
  50. data/lib/pangea/utils.rb +32 -0
  51. data/lib/pangea/version.rb +1 -15
  52. data/lib/pangea.rb +17 -37
  53. data/pangea.gemspec +33 -37
  54. data/pangea.rb +0 -14
  55. metadata +136 -2263
  56. data/.github/ISSUE_TEMPLATE/bug_report.yml +0 -114
  57. data/.github/ISSUE_TEMPLATE/feature_request.yml +0 -67
  58. data/.github/ISSUE_TEMPLATE/question.yml +0 -44
  59. data/.github/PULL_REQUEST_TEMPLATE.md +0 -69
  60. data/.github/workflows/ci.yml +0 -79
  61. data/.github/workflows/release.yml +0 -43
  62. data/AGENT_GUIDE.md +0 -333
  63. data/CHANGELOG.md +0 -67
  64. data/CLAUDE.md +0 -626
  65. data/CONTRIBUTING.md +0 -143
  66. data/EXAMPLES.md +0 -376
  67. data/OPEN_SOURCE_READINESS.md +0 -170
  68. data/README_backend_configuration.md +0 -174
  69. data/SECURITY.md +0 -90
  70. data/Steepfile +0 -33
  71. data/audit_results/vpc_resources_audit.json +0 -219
  72. data/docker-compose.test.yml +0 -31
  73. data/docs/RESOURCES.md +0 -456
  74. data/examples/advanced_global_infrastructure.rb +0 -544
  75. data/examples/advanced_ml_healthcare_infrastructure.rb +0 -546
  76. data/examples/api_gateway_complete.rb +0 -275
  77. data/examples/basic-web-app/README.md +0 -176
  78. data/examples/basic-web-app/infrastructure.rb +0 -686
  79. data/examples/basic-web-app/pangea.yaml +0 -36
  80. data/examples/cicd-pipeline/README.md +0 -348
  81. data/examples/cicd-pipeline/infrastructure.rb +0 -1186
  82. data/examples/cicd-pipeline/pangea.yaml +0 -35
  83. data/examples/cloudwatch_monitoring_example.rb +0 -192
  84. data/examples/comprehensive_database_platform.rb +0 -575
  85. data/examples/data-processing/README.md +0 -320
  86. data/examples/data-processing/infrastructure.rb +0 -1616
  87. data/examples/data-processing/pangea.yaml +0 -57
  88. data/examples/disaster-recovery/README.md +0 -446
  89. data/examples/disaster-recovery/infrastructure.rb +0 -1518
  90. data/examples/disaster-recovery/pangea.yaml +0 -62
  91. data/examples/gaming_infrastructure.rb +0 -505
  92. data/examples/global-multi-region/README.md +0 -427
  93. data/examples/global-multi-region/infrastructure.rb +0 -1454
  94. data/examples/global-multi-region/pangea.yaml +0 -61
  95. data/examples/messaging_example.rb +0 -189
  96. data/examples/microservices-platform/README.md +0 -275
  97. data/examples/microservices-platform/infrastructure.rb +0 -1024
  98. data/examples/microservices-platform/pangea.yaml +0 -35
  99. data/examples/ml-platform/README.md +0 -456
  100. data/examples/ml-platform/infrastructure.rb +0 -1882
  101. data/examples/ml-platform/pangea.yaml +0 -58
  102. data/examples/multi-environment/README.md +0 -280
  103. data/examples/multi-environment/infrastructure.rb +0 -1266
  104. data/examples/multi-environment/pangea.yaml +0 -71
  105. data/examples/multi-tier-architecture/README.md +0 -271
  106. data/examples/multi-tier-architecture/infrastructure.rb +0 -1077
  107. data/examples/multi-tier-architecture/pangea.yaml +0 -49
  108. data/examples/resource_composition_patterns.rb +0 -303
  109. data/examples/robotics_and_specialized_services.rb +0 -310
  110. data/examples/scalable_infrastructure.rb +0 -422
  111. data/examples/security-focused/README.md +0 -368
  112. data/examples/security-focused/infrastructure.rb +0 -1684
  113. data/examples/security-focused/pangea.yaml +0 -60
  114. data/examples/simple.rb +0 -39
  115. data/examples/type_safe_infrastructure.rb +0 -214
  116. data/exe/pangea +0 -37
  117. data/guides/README.md +0 -157
  118. data/guides/advanced-patterns.md +0 -1196
  119. data/guides/cicd-integration.md +0 -1047
  120. data/guides/getting-started.md +0 -399
  121. data/guides/migration-from-terraform.md +0 -924
  122. data/guides/multi-environment-management.md +0 -769
  123. data/guides/template-isolation.md +0 -673
  124. data/guides/type-safe-infrastructure.md +0 -695
  125. data/lib/pangea/agent.rb +0 -366
  126. data/lib/pangea/architecture_registry.rb +0 -94
  127. data/lib/pangea/architectures/ARCHITECTURE_CATALOG.md +0 -736
  128. data/lib/pangea/architectures/CLAUDE.md +0 -425
  129. data/lib/pangea/architectures/COMPLETE_ARCHITECTURE_SUMMARY.md +0 -385
  130. data/lib/pangea/architectures/base.rb +0 -545
  131. data/lib/pangea/architectures/examples/web_application_examples.rb +0 -589
  132. data/lib/pangea/architectures/examples.rb +0 -508
  133. data/lib/pangea/architectures/patterns/data_processing.rb +0 -669
  134. data/lib/pangea/architectures/patterns/microservices.rb +0 -626
  135. data/lib/pangea/architectures/patterns/simple_web_application.rb +0 -120
  136. data/lib/pangea/architectures/patterns/web_application.rb +0 -556
  137. data/lib/pangea/architectures/simple_web_app/architecture.rb +0 -70
  138. data/lib/pangea/architectures/simple_web_app/types.rb +0 -36
  139. data/lib/pangea/architectures/types.rb +0 -281
  140. data/lib/pangea/architectures/web_application_architecture/README.md +0 -375
  141. data/lib/pangea/architectures/web_application_architecture/architecture.rb +0 -511
  142. data/lib/pangea/architectures/web_application_architecture/types.rb +0 -295
  143. data/lib/pangea/architectures.rb +0 -24
  144. data/lib/pangea/backends/base.rb +0 -77
  145. data/lib/pangea/backends/local.rb +0 -159
  146. data/lib/pangea/backends/s3.rb +0 -213
  147. data/lib/pangea/backends.rb +0 -51
  148. data/lib/pangea/cli/application.rb +0 -211
  149. data/lib/pangea/cli/commands/agent.rb +0 -609
  150. data/lib/pangea/cli/commands/apply.rb +0 -240
  151. data/lib/pangea/cli/commands/base_command.rb +0 -131
  152. data/lib/pangea/cli/commands/destroy.rb +0 -131
  153. data/lib/pangea/cli/commands/inspect.rb +0 -437
  154. data/lib/pangea/cli/commands/plan.rb +0 -194
  155. data/lib/pangea/cli/formatters/json_formatter.rb +0 -195
  156. data/lib/pangea/cli/ui/diff.rb +0 -250
  157. data/lib/pangea/cli/ui/logger.rb +0 -174
  158. data/lib/pangea/cli/ui/progress.rb +0 -232
  159. data/lib/pangea/cli/ui/spinner.rb +0 -68
  160. data/lib/pangea/cli/ui/table.rb +0 -51
  161. data/lib/pangea/cli/ui/visualizer.rb +0 -409
  162. data/lib/pangea/compilation/template_compiler.rb +0 -384
  163. data/lib/pangea/compilation/validator.rb +0 -133
  164. data/lib/pangea/component_registry.rb +0 -79
  165. data/lib/pangea/components/ADVANCED_COMPONENT_CATALOG.md +0 -556
  166. data/lib/pangea/components/CLAUDE.md +0 -350
  167. data/lib/pangea/components/COMPLETE_COMPONENT_SUMMARY.md +0 -266
  168. data/lib/pangea/components/COMPONENT_CATALOG.md +0 -470
  169. data/lib/pangea/components/EXTENDED_COMPONENT_CATALOG.md +0 -558
  170. data/lib/pangea/components/IMPLEMENTATION_PROGRESS.md +0 -246
  171. data/lib/pangea/components/api_gateway_microservices/README.md +0 -384
  172. data/lib/pangea/components/api_gateway_microservices/component.rb +0 -630
  173. data/lib/pangea/components/api_gateway_microservices/types.rb +0 -248
  174. data/lib/pangea/components/application_load_balancer/CLAUDE.md +0 -224
  175. data/lib/pangea/components/application_load_balancer/README.md +0 -225
  176. data/lib/pangea/components/application_load_balancer/component.rb +0 -316
  177. data/lib/pangea/components/application_load_balancer/types.rb +0 -117
  178. data/lib/pangea/components/auto_scaling_web_servers/README.md +0 -326
  179. data/lib/pangea/components/auto_scaling_web_servers/component.rb +0 -396
  180. data/lib/pangea/components/auto_scaling_web_servers/types.rb +0 -176
  181. data/lib/pangea/components/base.rb +0 -104
  182. data/lib/pangea/components/capabilities.rb +0 -93
  183. data/lib/pangea/components/carbon_aware_compute/CLAUDE.md +0 -295
  184. data/lib/pangea/components/carbon_aware_compute/README.md +0 -194
  185. data/lib/pangea/components/carbon_aware_compute/component.rb +0 -1136
  186. data/lib/pangea/components/carbon_aware_compute/types.rb +0 -167
  187. data/lib/pangea/components/disaster_recovery_pilot_light/README.md +0 -366
  188. data/lib/pangea/components/disaster_recovery_pilot_light/component.rb +0 -1549
  189. data/lib/pangea/components/disaster_recovery_pilot_light/types.rb +0 -255
  190. data/lib/pangea/components/event_driven_microservice/README.md +0 -341
  191. data/lib/pangea/components/event_driven_microservice/component.rb +0 -665
  192. data/lib/pangea/components/event_driven_microservice/types.rb +0 -217
  193. data/lib/pangea/components/examples.rb +0 -515
  194. data/lib/pangea/components/global_service_mesh/README.md +0 -438
  195. data/lib/pangea/components/global_service_mesh/component.rb +0 -1307
  196. data/lib/pangea/components/global_service_mesh/types.rb +0 -289
  197. data/lib/pangea/components/global_traffic_manager/README.md +0 -351
  198. data/lib/pangea/components/global_traffic_manager/component.rb +0 -1144
  199. data/lib/pangea/components/global_traffic_manager/types.rb +0 -282
  200. data/lib/pangea/components/green_data_lifecycle/CLAUDE.md +0 -353
  201. data/lib/pangea/components/green_data_lifecycle/README.md +0 -270
  202. data/lib/pangea/components/green_data_lifecycle/component.rb +0 -1403
  203. data/lib/pangea/components/green_data_lifecycle/types.rb +0 -184
  204. data/lib/pangea/components/microservice_deployment/README.md +0 -321
  205. data/lib/pangea/components/microservice_deployment/component.rb +0 -440
  206. data/lib/pangea/components/microservice_deployment/types.rb +0 -236
  207. data/lib/pangea/components/microservices_examples.rb +0 -444
  208. data/lib/pangea/components/multi_region_active_active/README.md +0 -267
  209. data/lib/pangea/components/multi_region_active_active/component.rb +0 -1200
  210. data/lib/pangea/components/multi_region_active_active/types.rb +0 -248
  211. data/lib/pangea/components/mysql_database/README.md +0 -342
  212. data/lib/pangea/components/mysql_database/component.rb +0 -343
  213. data/lib/pangea/components/mysql_database/types.rb +0 -201
  214. data/lib/pangea/components/public_private_subnets/CLAUDE.md +0 -547
  215. data/lib/pangea/components/public_private_subnets/README.md +0 -293
  216. data/lib/pangea/components/public_private_subnets/component.rb +0 -386
  217. data/lib/pangea/components/public_private_subnets/types.rb +0 -152
  218. data/lib/pangea/components/reference.rb +0 -155
  219. data/lib/pangea/components/secure_s3_bucket/README.md +0 -459
  220. data/lib/pangea/components/secure_s3_bucket/component.rb +0 -442
  221. data/lib/pangea/components/secure_s3_bucket/types.rb +0 -292
  222. data/lib/pangea/components/secure_vpc/CLAUDE.md +0 -366
  223. data/lib/pangea/components/secure_vpc/README.md +0 -187
  224. data/lib/pangea/components/secure_vpc/component.rb +0 -88
  225. data/lib/pangea/components/secure_vpc/types.rb +0 -141
  226. data/lib/pangea/components/service_mesh_observability/README.md +0 -423
  227. data/lib/pangea/components/service_mesh_observability/component.rb +0 -610
  228. data/lib/pangea/components/service_mesh_observability/types.rb +0 -231
  229. data/lib/pangea/components/siem_security_platform/component.rb +0 -2877
  230. data/lib/pangea/components/siem_security_platform/types.rb +0 -220
  231. data/lib/pangea/components/spot_instance_carbon_optimizer/CLAUDE.md +0 -469
  232. data/lib/pangea/components/spot_instance_carbon_optimizer/README.md +0 -338
  233. data/lib/pangea/components/spot_instance_carbon_optimizer/component.rb +0 -1638
  234. data/lib/pangea/components/spot_instance_carbon_optimizer/types.rb +0 -213
  235. data/lib/pangea/components/sustainable_ml_training/CLAUDE.md +0 -653
  236. data/lib/pangea/components/sustainable_ml_training/README.md +0 -363
  237. data/lib/pangea/components/sustainable_ml_training/component.rb +0 -1754
  238. data/lib/pangea/components/sustainable_ml_training/types.rb +0 -234
  239. data/lib/pangea/components/threat_intelligence_platform/types.rb +0 -203
  240. data/lib/pangea/components/types.rb +0 -198
  241. data/lib/pangea/components/vpc_with_subnets/component.rb +0 -177
  242. data/lib/pangea/components/vpc_with_subnets/types.rb +0 -61
  243. data/lib/pangea/components/web_security_group/CLAUDE.md +0 -690
  244. data/lib/pangea/components/web_security_group/README.md +0 -450
  245. data/lib/pangea/components/web_security_group/component.rb +0 -217
  246. data/lib/pangea/components/web_security_group/types.rb +0 -257
  247. data/lib/pangea/components/web_tier_subnets/CLAUDE.md +0 -572
  248. data/lib/pangea/components/web_tier_subnets/README.md +0 -368
  249. data/lib/pangea/components/web_tier_subnets/component.rb +0 -205
  250. data/lib/pangea/components/web_tier_subnets/types.rb +0 -185
  251. data/lib/pangea/components/zero_trust_network/component.rb +0 -674
  252. data/lib/pangea/components/zero_trust_network/types.rb +0 -150
  253. data/lib/pangea/components.rb +0 -80
  254. data/lib/pangea/configuration/types.rb +0 -294
  255. data/lib/pangea/configuration.rb +0 -249
  256. data/lib/pangea/documentation/generator.rb +0 -139
  257. data/lib/pangea/documentation/writer.rb +0 -86
  258. data/lib/pangea/entities/module_definition.rb +0 -140
  259. data/lib/pangea/entities/namespace.rb +0 -154
  260. data/lib/pangea/entities/project.rb +0 -99
  261. data/lib/pangea/entities/template.rb +0 -121
  262. data/lib/pangea/entities.rb +0 -29
  263. data/lib/pangea/errors.rb +0 -67
  264. data/lib/pangea/execution/terraform_executor.rb +0 -271
  265. data/lib/pangea/execution/workspace_manager.rb +0 -164
  266. data/lib/pangea/generators/resource_generator.rb +0 -82
  267. data/lib/pangea/generators/test_generator.rb +0 -68
  268. data/lib/pangea/quality/resource_auditor.rb +0 -74
  269. data/lib/pangea/resource_registry.rb +0 -68
  270. data/lib/pangea/resources/AWS_RESOURCE_COMPLETION_SUMMARY.md +0 -200
  271. data/lib/pangea/resources/CLAUDE.md +0 -607
  272. data/lib/pangea/resources/DATABASE_SERVICES_CLAUDE.md +0 -577
  273. data/lib/pangea/resources/EXTENDED_SERVICES_IMPLEMENTATION.md +0 -197
  274. data/lib/pangea/resources/FINAL_BATCH_IMPLEMENTATION.md +0 -328
  275. data/lib/pangea/resources/IMPLEMENTATION_SUMMARY.md +0 -185
  276. data/lib/pangea/resources/NEW_RESOURCES_SUMMARY.md +0 -259
  277. data/lib/pangea/resources/aws/MEDIA_SERVICES_IMPLEMENTATION_SUMMARY.md +0 -219
  278. data/lib/pangea/resources/aws/appconfig/configuration_version.rb +0 -55
  279. data/lib/pangea/resources/aws/appconfig/deployment_strategy.rb +0 -104
  280. data/lib/pangea/resources/aws/appconfig/extension.rb +0 -55
  281. data/lib/pangea/resources/aws/appconfig/extension_association.rb +0 -55
  282. data/lib/pangea/resources/aws/appconfig/hosted_configuration_version.rb +0 -55
  283. data/lib/pangea/resources/aws/appconfig/monitor.rb +0 -55
  284. data/lib/pangea/resources/aws/appconfig/validator.rb +0 -55
  285. data/lib/pangea/resources/aws/appconfig.rb +0 -42
  286. data/lib/pangea/resources/aws/applicationdiscoveryservice/application.rb +0 -82
  287. data/lib/pangea/resources/aws/applicationdiscoveryservice/application_resource.rb +0 -55
  288. data/lib/pangea/resources/aws/applicationdiscoveryservice/application_resource.rbs +0 -15
  289. data/lib/pangea/resources/aws/applicationdiscoveryservice.rb +0 -30
  290. data/lib/pangea/resources/aws/audit_manager/CLAUDE.md +0 -778
  291. data/lib/pangea/resources/aws/audit_manager/account_registration.rb +0 -55
  292. data/lib/pangea/resources/aws/audit_manager/assessment.rb +0 -55
  293. data/lib/pangea/resources/aws/audit_manager/assessment_control_set.rb +0 -55
  294. data/lib/pangea/resources/aws/audit_manager/assessment_delegation.rb +0 -55
  295. data/lib/pangea/resources/aws/audit_manager/assessment_report.rb +0 -55
  296. data/lib/pangea/resources/aws/audit_manager/control.rb +0 -55
  297. data/lib/pangea/resources/aws/audit_manager/evidence_folder.rb +0 -55
  298. data/lib/pangea/resources/aws/audit_manager/framework.rb +0 -55
  299. data/lib/pangea/resources/aws/audit_manager/framework_share.rb +0 -55
  300. data/lib/pangea/resources/aws/audit_manager/organization_admin_account.rb +0 -55
  301. data/lib/pangea/resources/aws/audit_manager.rb +0 -186
  302. data/lib/pangea/resources/aws/autoscaling/autoscaling_group_tag.rb +0 -55
  303. data/lib/pangea/resources/aws/autoscaling/autoscaling_lifecycle_hook.rb +0 -55
  304. data/lib/pangea/resources/aws/autoscaling/autoscaling_notification.rb +0 -55
  305. data/lib/pangea/resources/aws/autoscaling/autoscaling_policy_step_adjustment.rb +0 -55
  306. data/lib/pangea/resources/aws/autoscaling/autoscaling_policy_target_tracking_scaling_policy.rb +0 -55
  307. data/lib/pangea/resources/aws/autoscaling/autoscaling_schedule.rb +0 -55
  308. data/lib/pangea/resources/aws/autoscaling/autoscaling_traffic_source_attachment.rb +0 -55
  309. data/lib/pangea/resources/aws/autoscaling/autoscaling_warm_pool.rb +0 -55
  310. data/lib/pangea/resources/aws/autoscaling/launch_configuration.rb +0 -55
  311. data/lib/pangea/resources/aws/autoscaling/placement_group.rb +0 -55
  312. data/lib/pangea/resources/aws/autoscaling.rb +0 -186
  313. data/lib/pangea/resources/aws/base_resource.rb +0 -92
  314. data/lib/pangea/resources/aws/batch/CLAUDE.md +0 -965
  315. data/lib/pangea/resources/aws/batch/compute_environment.rb +0 -55
  316. data/lib/pangea/resources/aws/batch/job.rb +0 -55
  317. data/lib/pangea/resources/aws/batch/job_definition.rb +0 -55
  318. data/lib/pangea/resources/aws/batch/job_queue.rb +0 -55
  319. data/lib/pangea/resources/aws/batch/scheduling_policy.rb +0 -55
  320. data/lib/pangea/resources/aws/batch.rb +0 -106
  321. data/lib/pangea/resources/aws/cdk/bootstrap_version.rb +0 -47
  322. data/lib/pangea/resources/aws/cdk/bundling_docker_image.rb +0 -46
  323. data/lib/pangea/resources/aws/cdk/custom_resource_provider.rb +0 -46
  324. data/lib/pangea/resources/aws/cdk/docker_image_asset.rb +0 -46
  325. data/lib/pangea/resources/aws/cdk/file_asset.rb +0 -46
  326. data/lib/pangea/resources/aws/cdk/metadata.rb +0 -46
  327. data/lib/pangea/resources/aws/cdk/toolkit_stack_tags.rb +0 -48
  328. data/lib/pangea/resources/aws/cdk/tree_metadata.rb +0 -46
  329. data/lib/pangea/resources/aws/cdk.rb +0 -44
  330. data/lib/pangea/resources/aws/cleanrooms.rb +0 -145
  331. data/lib/pangea/resources/aws/cloudformation/CLAUDE.md +0 -98
  332. data/lib/pangea/resources/aws/cloudformation/hook_default_version.rb +0 -48
  333. data/lib/pangea/resources/aws/cloudformation/public_type_version.rb +0 -51
  334. data/lib/pangea/resources/aws/cloudformation/publisher.rb +0 -63
  335. data/lib/pangea/resources/aws/cloudformation/resource_default_version.rb +0 -48
  336. data/lib/pangea/resources/aws/cloudformation/resource_version.rb +0 -56
  337. data/lib/pangea/resources/aws/cloudformation/stack_instances.rb +0 -161
  338. data/lib/pangea/resources/aws/cloudformation/stack_set.rb +0 -195
  339. data/lib/pangea/resources/aws/cloudformation/stack_set_instance.rb +0 -151
  340. data/lib/pangea/resources/aws/cloudformation/type.rb +0 -167
  341. data/lib/pangea/resources/aws/cloudformation/type_activation.rb +0 -91
  342. data/lib/pangea/resources/aws/cloudformation/types.rb +0 -301
  343. data/lib/pangea/resources/aws/cloudformation/types.rbs +0 -125
  344. data/lib/pangea/resources/aws/cloudformation.rb +0 -48
  345. data/lib/pangea/resources/aws/code/codebuild_project_cache.rb +0 -55
  346. data/lib/pangea/resources/aws/code/codebuild_project_file_system_location.rb +0 -55
  347. data/lib/pangea/resources/aws/code/codebuild_source_credential.rb +0 -55
  348. data/lib/pangea/resources/aws/code/codebuild_webhook_filter.rb +0 -55
  349. data/lib/pangea/resources/aws/code/codecommit_approval_rule_template.rb +0 -55
  350. data/lib/pangea/resources/aws/code/codecommit_approval_rule_template_association.rb +0 -55
  351. data/lib/pangea/resources/aws/code/codedeploy_deployment_config.rb +0 -55
  352. data/lib/pangea/resources/aws/code/codedeploy_deployment_group_auto_rollback.rb +0 -55
  353. data/lib/pangea/resources/aws/code/codepipeline_custom_action_type.rb +0 -55
  354. data/lib/pangea/resources/aws/code/codepipeline_webhook.rb +0 -55
  355. data/lib/pangea/resources/aws/code/codestar_connection.rb +0 -85
  356. data/lib/pangea/resources/aws/code/codestar_notification_rule.rb +0 -55
  357. data/lib/pangea/resources/aws/code.rb +0 -52
  358. data/lib/pangea/resources/aws/comprehendmedical/jobs.rb +0 -320
  359. data/lib/pangea/resources/aws/comprehendmedical.rb +0 -28
  360. data/lib/pangea/resources/aws/config/aggregate_authorization.rb +0 -55
  361. data/lib/pangea/resources/aws/config/configuration_aggregator_organization.rb +0 -55
  362. data/lib/pangea/resources/aws/config/organization_conformance_pack.rb +0 -103
  363. data/lib/pangea/resources/aws/config/organization_custom_rule.rb +0 -55
  364. data/lib/pangea/resources/aws/config/organization_managed_rule.rb +0 -55
  365. data/lib/pangea/resources/aws/config/remediation_configuration.rb +0 -55
  366. data/lib/pangea/resources/aws/config/retention_configuration.rb +0 -55
  367. data/lib/pangea/resources/aws/config/stored_query.rb +0 -55
  368. data/lib/pangea/resources/aws/config.rb +0 -44
  369. data/lib/pangea/resources/aws/controltower/control.rb +0 -82
  370. data/lib/pangea/resources/aws/controltower/control_resource.rb +0 -55
  371. data/lib/pangea/resources/aws/controltower/control_resource.rbs +0 -15
  372. data/lib/pangea/resources/aws/controltower/enabled_control.rb +0 -74
  373. data/lib/pangea/resources/aws/controltower/enabled_control_resource.rb +0 -55
  374. data/lib/pangea/resources/aws/controltower/enabled_control_resource.rbs +0 -15
  375. data/lib/pangea/resources/aws/controltower/landing_zone.rb +0 -126
  376. data/lib/pangea/resources/aws/controltower/landing_zone_resource.rb +0 -55
  377. data/lib/pangea/resources/aws/controltower/landing_zone_resource.rbs +0 -18
  378. data/lib/pangea/resources/aws/controltower.rb +0 -34
  379. data/lib/pangea/resources/aws/data_pipeline/pipeline.rb +0 -55
  380. data/lib/pangea/resources/aws/data_pipeline/pipeline_definition.rb +0 -55
  381. data/lib/pangea/resources/aws/detective/CLAUDE.md +0 -668
  382. data/lib/pangea/resources/aws/detective/datasource_package.rb +0 -55
  383. data/lib/pangea/resources/aws/detective/finding.rb +0 -56
  384. data/lib/pangea/resources/aws/detective/graph.rb +0 -58
  385. data/lib/pangea/resources/aws/detective/indicator.rb +0 -56
  386. data/lib/pangea/resources/aws/detective/invitation_accepter.rb +0 -54
  387. data/lib/pangea/resources/aws/detective/member.rb +0 -59
  388. data/lib/pangea/resources/aws/detective/organization_admin_account.rb +0 -54
  389. data/lib/pangea/resources/aws/detective/organization_configuration.rb +0 -54
  390. data/lib/pangea/resources/aws/detective.rb +0 -154
  391. data/lib/pangea/resources/aws/ec2/ec2_ami_launch_permission.rb +0 -55
  392. data/lib/pangea/resources/aws/ec2/ec2_availability_zone_group.rb +0 -55
  393. data/lib/pangea/resources/aws/ec2/ec2_capacity_block_reservation.rb +0 -55
  394. data/lib/pangea/resources/aws/ec2/ec2_capacity_reservation.rb +0 -55
  395. data/lib/pangea/resources/aws/ec2/ec2_dedicated_host.rb +0 -55
  396. data/lib/pangea/resources/aws/ec2/ec2_fleet.rb +0 -55
  397. data/lib/pangea/resources/aws/ec2/ec2_host_resource_group_association.rb +0 -55
  398. data/lib/pangea/resources/aws/ec2/ec2_image_block_public_access.rb +0 -55
  399. data/lib/pangea/resources/aws/ec2/ec2_instance_metadata_defaults.rb +0 -55
  400. data/lib/pangea/resources/aws/ec2/ec2_serial_console_access.rb +0 -55
  401. data/lib/pangea/resources/aws/ec2/ec2_snapshot_block_public_access.rb +0 -55
  402. data/lib/pangea/resources/aws/ec2/ec2_spot_datafeed_subscription.rb +0 -55
  403. data/lib/pangea/resources/aws/ec2/ec2_spot_fleet_request.rb +0 -55
  404. data/lib/pangea/resources/aws/ec2/ec2_spot_instance_request.rb +0 -55
  405. data/lib/pangea/resources/aws/ec2/ec2_tag.rb +0 -55
  406. data/lib/pangea/resources/aws/ec2/ec2_transit_gateway_multicast_domain.rb +0 -55
  407. data/lib/pangea/resources/aws/ec2/ec2_transit_gateway_multicast_domain_association.rb +0 -55
  408. data/lib/pangea/resources/aws/ec2/ec2_transit_gateway_multicast_group_member.rb +0 -55
  409. data/lib/pangea/resources/aws/ec2.rb +0 -314
  410. data/lib/pangea/resources/aws/elasticache_extended.disabled/auth_token.rb +0 -50
  411. data/lib/pangea/resources/aws/elasticache_extended.disabled/cache_policy.rb +0 -57
  412. data/lib/pangea/resources/aws/elasticache_extended.disabled/global_replication_group.rb +0 -121
  413. data/lib/pangea/resources/aws/elasticache_extended.disabled/notification_topic.rb +0 -50
  414. data/lib/pangea/resources/aws/elasticache_extended.disabled/parameter_group_parameter.rb +0 -52
  415. data/lib/pangea/resources/aws/elasticache_extended.disabled/reserved_cache_node.rb +0 -55
  416. data/lib/pangea/resources/aws/elasticache_extended.disabled/serverless_cache.rb +0 -178
  417. data/lib/pangea/resources/aws/elasticache_extended.disabled/user_group.rb +0 -90
  418. data/lib/pangea/resources/aws/elasticache_extended.disabled/user_group_association.rb +0 -50
  419. data/lib/pangea/resources/aws/elasticache_extended.rb +0 -46
  420. data/lib/pangea/resources/aws/emrcontainers/job_run.rb +0 -134
  421. data/lib/pangea/resources/aws/emrcontainers/job_template.rb +0 -165
  422. data/lib/pangea/resources/aws/emrcontainers/managed_endpoint.rb +0 -126
  423. data/lib/pangea/resources/aws/emrcontainers/virtual_cluster.rb +0 -99
  424. data/lib/pangea/resources/aws/emrcontainers.rb +0 -34
  425. data/lib/pangea/resources/aws/extended_resources_CLAUDE.md +0 -470
  426. data/lib/pangea/resources/aws/frauddetector/detector.rb +0 -262
  427. data/lib/pangea/resources/aws/frauddetector.rb +0 -28
  428. data/lib/pangea/resources/aws/gamedev.rb +0 -178
  429. data/lib/pangea/resources/aws/gamelift.rb +0 -244
  430. data/lib/pangea/resources/aws/gamesparks.rb +0 -246
  431. data/lib/pangea/resources/aws/healthlake/fhir_datastore.rb +0 -220
  432. data/lib/pangea/resources/aws/healthlake.rb +0 -28
  433. data/lib/pangea/resources/aws/kinesisvideo/signaling_channel.rb +0 -55
  434. data/lib/pangea/resources/aws/kinesisvideo/stream.rb +0 -55
  435. data/lib/pangea/resources/aws/kinesisvideo.rb +0 -58
  436. data/lib/pangea/resources/aws/load_balancing/alb_target_group_attachment.rb +0 -55
  437. data/lib/pangea/resources/aws/load_balancing/elb_attachment.rb +0 -55
  438. data/lib/pangea/resources/aws/load_balancing/elb_service_account.rb +0 -55
  439. data/lib/pangea/resources/aws/load_balancing/lb_cookie_stickiness_policy.rb +0 -55
  440. data/lib/pangea/resources/aws/load_balancing/lb_ssl_negotiation_policy.rb +0 -55
  441. data/lib/pangea/resources/aws/load_balancing/lb_target_group_attachment.rb +0 -55
  442. data/lib/pangea/resources/aws/load_balancing/lb_trust_store.rb +0 -55
  443. data/lib/pangea/resources/aws/load_balancing/lb_trust_store_revocation.rb +0 -55
  444. data/lib/pangea/resources/aws/load_balancing/load_balancer_backend_server_policy.rb +0 -55
  445. data/lib/pangea/resources/aws/load_balancing/load_balancer_listener_policy.rb +0 -55
  446. data/lib/pangea/resources/aws/load_balancing/load_balancer_policy.rb +0 -55
  447. data/lib/pangea/resources/aws/load_balancing/proxy_protocol_policy.rb +0 -55
  448. data/lib/pangea/resources/aws/load_balancing.rb +0 -218
  449. data/lib/pangea/resources/aws/lookout/equipment.rb +0 -227
  450. data/lib/pangea/resources/aws/lookout/metrics.rb +0 -129
  451. data/lib/pangea/resources/aws/lookout.rb +0 -30
  452. data/lib/pangea/resources/aws/media_services_CLAUDE.md +0 -494
  453. data/lib/pangea/resources/aws/mediaconvert/job.rb +0 -55
  454. data/lib/pangea/resources/aws/mediaconvert/job_template.rb +0 -55
  455. data/lib/pangea/resources/aws/mediaconvert/preset.rb +0 -55
  456. data/lib/pangea/resources/aws/mediaconvert/queue.rb +0 -55
  457. data/lib/pangea/resources/aws/mediaconvert.rb +0 -90
  458. data/lib/pangea/resources/aws/medialive/channel.rb +0 -55
  459. data/lib/pangea/resources/aws/medialive/input.rb +0 -55
  460. data/lib/pangea/resources/aws/medialive/input_security_group.rb +0 -55
  461. data/lib/pangea/resources/aws/medialive/multiplex.rb +0 -55
  462. data/lib/pangea/resources/aws/medialive/multiplex_program.rb +0 -55
  463. data/lib/pangea/resources/aws/medialive.rb +0 -106
  464. data/lib/pangea/resources/aws/mediapackage/channel.rb +0 -55
  465. data/lib/pangea/resources/aws/mediapackage/origin_endpoint.rb +0 -55
  466. data/lib/pangea/resources/aws/mediapackage/packaging_configuration.rb +0 -55
  467. data/lib/pangea/resources/aws/mediapackage/packaging_group.rb +0 -55
  468. data/lib/pangea/resources/aws/mediapackage.rb +0 -90
  469. data/lib/pangea/resources/aws/migrationhub/progress_update_stream.rb +0 -69
  470. data/lib/pangea/resources/aws/migrationhub/progress_update_stream_resource.rb +0 -55
  471. data/lib/pangea/resources/aws/migrationhub/progress_update_stream_resource.rbs +0 -14
  472. data/lib/pangea/resources/aws/migrationhub.rb +0 -30
  473. data/lib/pangea/resources/aws/opensearch.disabled/CLAUDE.md +0 -480
  474. data/lib/pangea/resources/aws/opensearch.disabled/domain.rb +0 -59
  475. data/lib/pangea/resources/aws/opensearch.disabled/domain_endpoint.rb +0 -88
  476. data/lib/pangea/resources/aws/opensearch.disabled/domain_policy.rb +0 -89
  477. data/lib/pangea/resources/aws/opensearch.disabled/domain_saml_options.rb +0 -105
  478. data/lib/pangea/resources/aws/opensearch.disabled/inbound_connection.rb +0 -75
  479. data/lib/pangea/resources/aws/opensearch.disabled/outbound_connection.rb +0 -137
  480. data/lib/pangea/resources/aws/opensearch.disabled/package.rb +0 -102
  481. data/lib/pangea/resources/aws/opensearch.disabled/package_association.rb +0 -80
  482. data/lib/pangea/resources/aws/opensearch.disabled/serverless_access_policy.rb +0 -143
  483. data/lib/pangea/resources/aws/opensearch.disabled/serverless_collection.rb +0 -109
  484. data/lib/pangea/resources/aws/opensearch.disabled/serverless_security_policy.rb +0 -118
  485. data/lib/pangea/resources/aws/opensearch.disabled/vpc_endpoint.rb +0 -86
  486. data/lib/pangea/resources/aws/opensearch.rb.disabled +0 -36
  487. data/lib/pangea/resources/aws/private5g.rb +0 -132
  488. data/lib/pangea/resources/aws/robomaker.rb +0 -175
  489. data/lib/pangea/resources/aws/sagemaker/feature_group.rb +0 -146
  490. data/lib/pangea/resources/aws/sagemaker/model_package_group.rb +0 -79
  491. data/lib/pangea/resources/aws/sagemaker/pipeline.rb +0 -152
  492. data/lib/pangea/resources/aws/sagemaker.rb +0 -32
  493. data/lib/pangea/resources/aws/security_lake/CLAUDE.md +0 -932
  494. data/lib/pangea/resources/aws/security_lake/aws_log_source.rb +0 -55
  495. data/lib/pangea/resources/aws/security_lake/custom_log_source.rb +0 -55
  496. data/lib/pangea/resources/aws/security_lake/data_lake.rb +0 -55
  497. data/lib/pangea/resources/aws/security_lake/data_lake_exception_subscription.rb +0 -55
  498. data/lib/pangea/resources/aws/security_lake/organization_configuration.rb +0 -55
  499. data/lib/pangea/resources/aws/security_lake/subscriber.rb +0 -55
  500. data/lib/pangea/resources/aws/security_lake/subscriber_notification.rb +0 -55
  501. data/lib/pangea/resources/aws/security_lake.rb +0 -138
  502. data/lib/pangea/resources/aws/servicecatalog/constraint.rb +0 -93
  503. data/lib/pangea/resources/aws/servicecatalog/constraint_resource.rb +0 -55
  504. data/lib/pangea/resources/aws/servicecatalog/constraint_resource.rbs +0 -15
  505. data/lib/pangea/resources/aws/servicecatalog/portfolio.rb +0 -69
  506. data/lib/pangea/resources/aws/servicecatalog/portfolio_resource.rb +0 -55
  507. data/lib/pangea/resources/aws/servicecatalog/portfolio_resource.rbs +0 -15
  508. data/lib/pangea/resources/aws/servicecatalog/principal_portfolio_association.rb +0 -70
  509. data/lib/pangea/resources/aws/servicecatalog/principal_portfolio_association_resource.rb +0 -55
  510. data/lib/pangea/resources/aws/servicecatalog/principal_portfolio_association_resource.rbs +0 -14
  511. data/lib/pangea/resources/aws/servicecatalog/product.rb +0 -108
  512. data/lib/pangea/resources/aws/servicecatalog/product_portfolio_association.rb +0 -70
  513. data/lib/pangea/resources/aws/servicecatalog/product_portfolio_association_resource.rb +0 -55
  514. data/lib/pangea/resources/aws/servicecatalog/product_portfolio_association_resource.rbs +0 -14
  515. data/lib/pangea/resources/aws/servicecatalog/product_resource.rb +0 -55
  516. data/lib/pangea/resources/aws/servicecatalog/product_resource.rbs +0 -16
  517. data/lib/pangea/resources/aws/servicecatalog/provisioned_product.rb +0 -96
  518. data/lib/pangea/resources/aws/servicecatalog/provisioned_product_resource.rb +0 -55
  519. data/lib/pangea/resources/aws/servicecatalog/provisioned_product_resource.rbs +0 -18
  520. data/lib/pangea/resources/aws/servicecatalog/tag_option.rb +0 -75
  521. data/lib/pangea/resources/aws/servicecatalog/tag_option_resource.rb +0 -55
  522. data/lib/pangea/resources/aws/servicecatalog/tag_option_resource.rbs +0 -15
  523. data/lib/pangea/resources/aws/servicecatalog/tag_option_resource_association.rb +0 -65
  524. data/lib/pangea/resources/aws/servicecatalog/tag_option_resource_association_resource.rb +0 -55
  525. data/lib/pangea/resources/aws/servicecatalog/tag_option_resource_association_resource.rbs +0 -14
  526. data/lib/pangea/resources/aws/servicecatalog.rb +0 -44
  527. data/lib/pangea/resources/aws/sfn_extended.disabled/activity.rb +0 -79
  528. data/lib/pangea/resources/aws/sfn_extended.disabled/activity_task.rb +0 -51
  529. data/lib/pangea/resources/aws/sfn_extended.disabled/execution.rb +0 -53
  530. data/lib/pangea/resources/aws/sfn_extended.disabled/express_logging_configuration.rb +0 -54
  531. data/lib/pangea/resources/aws/sfn_extended.disabled/map_run.rb +0 -51
  532. data/lib/pangea/resources/aws/sfn_extended.disabled/state_machine_alias.rb +0 -99
  533. data/lib/pangea/resources/aws/sfn_extended.disabled/state_machine_version.rb +0 -52
  534. data/lib/pangea/resources/aws/sfn_extended.rb +0 -40
  535. data/lib/pangea/resources/aws/ssm/automation_execution.rb +0 -55
  536. data/lib/pangea/resources/aws/ssm/command_invocation.rb +0 -55
  537. data/lib/pangea/resources/aws/ssm/compliance_item.rb +0 -55
  538. data/lib/pangea/resources/aws/ssm/inventory_result_entity.rb +0 -55
  539. data/lib/pangea/resources/aws/ssm/maintenance_window_target.rb +0 -93
  540. data/lib/pangea/resources/aws/ssm/maintenance_window_target_resource.rb +0 -55
  541. data/lib/pangea/resources/aws/ssm/maintenance_window_target_resource.rbs +0 -15
  542. data/lib/pangea/resources/aws/ssm/maintenance_window_task.rb +0 -149
  543. data/lib/pangea/resources/aws/ssm/maintenance_window_task_resource.rb +0 -55
  544. data/lib/pangea/resources/aws/ssm/maintenance_window_task_resource.rbs +0 -15
  545. data/lib/pangea/resources/aws/ssm/ops_item.rb +0 -177
  546. data/lib/pangea/resources/aws/ssm/ops_metadata.rb +0 -55
  547. data/lib/pangea/resources/aws/ssm/patch_manager_patch_baseline_approval_rule.rb +0 -55
  548. data/lib/pangea/resources/aws/ssm/resource_compliance_item.rb +0 -55
  549. data/lib/pangea/resources/aws/ssm/session_manager_preferences.rb +0 -55
  550. data/lib/pangea/resources/aws/ssm/session_preferences.rb +0 -55
  551. data/lib/pangea/resources/aws/ssm.rb +0 -52
  552. data/lib/pangea/resources/aws/sumerian.rb +0 -223
  553. data/lib/pangea/resources/aws/supplychain.rb +0 -120
  554. data/lib/pangea/resources/aws/types/vpc.rb +0 -94
  555. data/lib/pangea/resources/aws/verifiedpermissions.rb +0 -101
  556. data/lib/pangea/resources/aws/vpc/default_network_acl.rb +0 -55
  557. data/lib/pangea/resources/aws/vpc/default_route_table.rb +0 -55
  558. data/lib/pangea/resources/aws/vpc/default_security_group.rb +0 -55
  559. data/lib/pangea/resources/aws/vpc/default_vpc_dhcp_options.rb +0 -55
  560. data/lib/pangea/resources/aws/vpc/vpc_dhcp_options_association.rb +0 -55
  561. data/lib/pangea/resources/aws/vpc/vpc_endpoint_connection_accepter.rb +0 -55
  562. data/lib/pangea/resources/aws/vpc/vpc_endpoint_connection_notification.rb +0 -55
  563. data/lib/pangea/resources/aws/vpc/vpc_endpoint_route_table_association.rb +0 -55
  564. data/lib/pangea/resources/aws/vpc/vpc_endpoint_service_allowed_principal.rb +0 -55
  565. data/lib/pangea/resources/aws/vpc/vpc_endpoint_subnet_association.rb +0 -55
  566. data/lib/pangea/resources/aws/vpc/vpc_network_performance_metric_subscription.rb +0 -55
  567. data/lib/pangea/resources/aws/vpc/vpc_peering_connection_accepter.rb +0 -55
  568. data/lib/pangea/resources/aws/vpc/vpc_peering_connection_options.rb +0 -55
  569. data/lib/pangea/resources/aws/vpc/vpc_security_group_egress_rule.rb +0 -55
  570. data/lib/pangea/resources/aws/vpc/vpc_security_group_ingress_rule.rb +0 -55
  571. data/lib/pangea/resources/aws/vpc.rb +0 -266
  572. data/lib/pangea/resources/aws/wellarchitected/workload.rb +0 -103
  573. data/lib/pangea/resources/aws/wellarchitected/workload_resource.rb +0 -55
  574. data/lib/pangea/resources/aws/wellarchitected/workload_resource.rbs +0 -15
  575. data/lib/pangea/resources/aws/wellarchitected.rb +0 -30
  576. data/lib/pangea/resources/aws.rb +0 -49
  577. data/lib/pangea/resources/aws_acm_certificate/CLAUDE.md +0 -290
  578. data/lib/pangea/resources/aws_acm_certificate/resource.rb +0 -120
  579. data/lib/pangea/resources/aws_acm_certificate/types.rb +0 -153
  580. data/lib/pangea/resources/aws_acm_certificate_validation/CLAUDE.md +0 -437
  581. data/lib/pangea/resources/aws_acm_certificate_validation/resource.rb +0 -75
  582. data/lib/pangea/resources/aws_acm_certificate_validation/types.rb +0 -145
  583. data/lib/pangea/resources/aws_acmpca_certificate_authority/resource.rb +0 -129
  584. data/lib/pangea/resources/aws_acmpca_certificate_authority/types.rb +0 -343
  585. data/lib/pangea/resources/aws_alb_target_group_attachment/resource.rb +0 -67
  586. data/lib/pangea/resources/aws_alb_target_group_attachment/types.rb +0 -46
  587. data/lib/pangea/resources/aws_ami/CLAUDE.md +0 -253
  588. data/lib/pangea/resources/aws_ami/resource.rb +0 -142
  589. data/lib/pangea/resources/aws_ami/types.rb +0 -196
  590. data/lib/pangea/resources/aws_api_gateway_api_key/resource.rb +0 -86
  591. data/lib/pangea/resources/aws_api_gateway_api_key/types.rb +0 -247
  592. data/lib/pangea/resources/aws_api_gateway_deployment/CLAUDE.md +0 -270
  593. data/lib/pangea/resources/aws_api_gateway_deployment/resource.rb +0 -197
  594. data/lib/pangea/resources/aws_api_gateway_deployment/types.rb +0 -199
  595. data/lib/pangea/resources/aws_api_gateway_integration/CLAUDE.md +0 -304
  596. data/lib/pangea/resources/aws_api_gateway_integration/resource.rb +0 -172
  597. data/lib/pangea/resources/aws_api_gateway_integration/types.rb +0 -257
  598. data/lib/pangea/resources/aws_api_gateway_method/CLAUDE.md +0 -235
  599. data/lib/pangea/resources/aws_api_gateway_method/resource.rb +0 -82
  600. data/lib/pangea/resources/aws_api_gateway_method/types.rb +0 -172
  601. data/lib/pangea/resources/aws_api_gateway_resource/CLAUDE.md +0 -215
  602. data/lib/pangea/resources/aws_api_gateway_resource/resource.rb +0 -62
  603. data/lib/pangea/resources/aws_api_gateway_resource/types.rb +0 -129
  604. data/lib/pangea/resources/aws_api_gateway_rest_api/CLAUDE.md +0 -152
  605. data/lib/pangea/resources/aws_api_gateway_rest_api/resource.rb +0 -95
  606. data/lib/pangea/resources/aws_api_gateway_rest_api/types.rb +0 -161
  607. data/lib/pangea/resources/aws_api_gateway_stage/CLAUDE.md +0 -308
  608. data/lib/pangea/resources/aws_api_gateway_stage/resource.rb +0 -335
  609. data/lib/pangea/resources/aws_api_gateway_stage/types.rb +0 -226
  610. data/lib/pangea/resources/aws_api_gateway_usage_plan/resource.rb +0 -122
  611. data/lib/pangea/resources/aws_api_gateway_usage_plan/types.rb +0 -312
  612. data/lib/pangea/resources/aws_api_gateway_usage_plan.rbs +0 -60
  613. data/lib/pangea/resources/aws_application_integration_README.md +0 -453
  614. data/lib/pangea/resources/aws_appstream_fleet/CLAUDE.md +0 -468
  615. data/lib/pangea/resources/aws_appstream_fleet/resource.rb +0 -121
  616. data/lib/pangea/resources/aws_appstream_fleet/types.rb +0 -223
  617. data/lib/pangea/resources/aws_appstream_image_builder/resource.rb +0 -34
  618. data/lib/pangea/resources/aws_appstream_stack/resource.rb +0 -34
  619. data/lib/pangea/resources/aws_appsync_datasource/CLAUDE.md +0 -479
  620. data/lib/pangea/resources/aws_appsync_datasource/resource.rb +0 -152
  621. data/lib/pangea/resources/aws_appsync_datasource/types.rb +0 -176
  622. data/lib/pangea/resources/aws_appsync_datasource.rbs +0 -129
  623. data/lib/pangea/resources/aws_appsync_graphql_api/CLAUDE.md +0 -325
  624. data/lib/pangea/resources/aws_appsync_graphql_api/resource.rb +0 -166
  625. data/lib/pangea/resources/aws_appsync_graphql_api/types.rb +0 -164
  626. data/lib/pangea/resources/aws_appsync_graphql_api.rbs +0 -134
  627. data/lib/pangea/resources/aws_appsync_resolver/CLAUDE.md +0 -459
  628. data/lib/pangea/resources/aws_appsync_resolver/resource.rb +0 -118
  629. data/lib/pangea/resources/aws_appsync_resolver/types.rb +0 -134
  630. data/lib/pangea/resources/aws_appsync_resolver.rbs +0 -86
  631. data/lib/pangea/resources/aws_athena_database/CLAUDE.md +0 -276
  632. data/lib/pangea/resources/aws_athena_database/resource.rb +0 -106
  633. data/lib/pangea/resources/aws_athena_database/types.rb +0 -192
  634. data/lib/pangea/resources/aws_athena_database/types.rbs +0 -38
  635. data/lib/pangea/resources/aws_athena_database.rbs +0 -10
  636. data/lib/pangea/resources/aws_athena_named_query/CLAUDE.md +0 -385
  637. data/lib/pangea/resources/aws_athena_named_query/resource.rb +0 -77
  638. data/lib/pangea/resources/aws_athena_named_query/types.rb +0 -248
  639. data/lib/pangea/resources/aws_athena_named_query/types.rbs +0 -42
  640. data/lib/pangea/resources/aws_athena_named_query.rbs +0 -10
  641. data/lib/pangea/resources/aws_athena_workgroup/CLAUDE.md +0 -315
  642. data/lib/pangea/resources/aws_athena_workgroup/resource.rb +0 -141
  643. data/lib/pangea/resources/aws_athena_workgroup/types.rb +0 -251
  644. data/lib/pangea/resources/aws_athena_workgroup/types.rbs +0 -38
  645. data/lib/pangea/resources/aws_athena_workgroup.rbs +0 -10
  646. data/lib/pangea/resources/aws_auditmanager_assessment.rbs +0 -35
  647. data/lib/pangea/resources/aws_autoscaling_attachment/CLAUDE.md +0 -226
  648. data/lib/pangea/resources/aws_autoscaling_attachment/resource.rb +0 -81
  649. data/lib/pangea/resources/aws_autoscaling_attachment/types.rb +0 -86
  650. data/lib/pangea/resources/aws_autoscaling_group/CLAUDE.md +0 -263
  651. data/lib/pangea/resources/aws_autoscaling_group/resource.rb +0 -175
  652. data/lib/pangea/resources/aws_autoscaling_group/types.rb +0 -236
  653. data/lib/pangea/resources/aws_autoscaling_group_tag/resource.rb +0 -67
  654. data/lib/pangea/resources/aws_autoscaling_group_tag/types.rb +0 -46
  655. data/lib/pangea/resources/aws_autoscaling_lifecycle_hook/CLAUDE.md +0 -357
  656. data/lib/pangea/resources/aws_autoscaling_lifecycle_hook/resource.rb +0 -67
  657. data/lib/pangea/resources/aws_autoscaling_lifecycle_hook/types.rb +0 -46
  658. data/lib/pangea/resources/aws_autoscaling_lifecycle_hook/types.rbs +0 -42
  659. data/lib/pangea/resources/aws_autoscaling_notification/CLAUDE.md +0 -405
  660. data/lib/pangea/resources/aws_autoscaling_notification/resource.rb +0 -67
  661. data/lib/pangea/resources/aws_autoscaling_notification/types.rb +0 -46
  662. data/lib/pangea/resources/aws_autoscaling_notification/types.rbs +0 -41
  663. data/lib/pangea/resources/aws_autoscaling_policy/CLAUDE.md +0 -278
  664. data/lib/pangea/resources/aws_autoscaling_policy/resource.rb +0 -168
  665. data/lib/pangea/resources/aws_autoscaling_policy/types.rb +0 -239
  666. data/lib/pangea/resources/aws_autoscaling_policy_step_adjustment/resource.rb +0 -67
  667. data/lib/pangea/resources/aws_autoscaling_policy_step_adjustment/types.rb +0 -46
  668. data/lib/pangea/resources/aws_autoscaling_policy_target_tracking_scaling_policy/resource.rb +0 -67
  669. data/lib/pangea/resources/aws_autoscaling_policy_target_tracking_scaling_policy/types.rb +0 -46
  670. data/lib/pangea/resources/aws_autoscaling_schedule/CLAUDE.md +0 -219
  671. data/lib/pangea/resources/aws_autoscaling_schedule/resource.rb +0 -67
  672. data/lib/pangea/resources/aws_autoscaling_schedule/types.rb +0 -46
  673. data/lib/pangea/resources/aws_autoscaling_schedule/types.rbs +0 -45
  674. data/lib/pangea/resources/aws_autoscaling_tag/CLAUDE.md +0 -443
  675. data/lib/pangea/resources/aws_autoscaling_tag/resource.rb +0 -119
  676. data/lib/pangea/resources/aws_autoscaling_tag/types.rb +0 -233
  677. data/lib/pangea/resources/aws_autoscaling_tag/types.rbs +0 -60
  678. data/lib/pangea/resources/aws_autoscaling_traffic_source_attachment/resource.rb +0 -67
  679. data/lib/pangea/resources/aws_autoscaling_traffic_source_attachment/types.rb +0 -46
  680. data/lib/pangea/resources/aws_autoscaling_warm_pool/resource.rb +0 -67
  681. data/lib/pangea/resources/aws_autoscaling_warm_pool/types.rb +0 -46
  682. data/lib/pangea/resources/aws_batch_compute_environment/CLAUDE.md +0 -571
  683. data/lib/pangea/resources/aws_batch_compute_environment/resource.rb +0 -158
  684. data/lib/pangea/resources/aws_batch_compute_environment/types.rb +0 -332
  685. data/lib/pangea/resources/aws_batch_compute_environment.rbs +0 -33
  686. data/lib/pangea/resources/aws_batch_job_definition/CLAUDE.md +0 -714
  687. data/lib/pangea/resources/aws_batch_job_definition/resource.rb +0 -253
  688. data/lib/pangea/resources/aws_batch_job_definition/types.rb +0 -548
  689. data/lib/pangea/resources/aws_batch_job_queue/CLAUDE.md +0 -585
  690. data/lib/pangea/resources/aws_batch_job_queue/resource.rb +0 -72
  691. data/lib/pangea/resources/aws_batch_job_queue/types.rb +0 -371
  692. data/lib/pangea/resources/aws_billing_service_account/resource.rb +0 -56
  693. data/lib/pangea/resources/aws_billing_service_account/types.rb +0 -43
  694. data/lib/pangea/resources/aws_blockchain_query/resource.rb +0 -122
  695. data/lib/pangea/resources/aws_blockchain_query/types.rb +0 -339
  696. data/lib/pangea/resources/aws_blockchain_token_balance/resource.rb +0 -94
  697. data/lib/pangea/resources/aws_blockchain_token_balance/types.rb +0 -319
  698. data/lib/pangea/resources/aws_braket_device/CLAUDE.md +0 -331
  699. data/lib/pangea/resources/aws_braket_device/resource.rb +0 -118
  700. data/lib/pangea/resources/aws_braket_device/types.rb +0 -242
  701. data/lib/pangea/resources/aws_braket_device_capabilities/resource.rb +0 -86
  702. data/lib/pangea/resources/aws_braket_device_capabilities/types.rb +0 -251
  703. data/lib/pangea/resources/aws_braket_job/resource.rb +0 -162
  704. data/lib/pangea/resources/aws_braket_job/types.rb +0 -265
  705. data/lib/pangea/resources/aws_braket_job_queue/resource.rb +0 -111
  706. data/lib/pangea/resources/aws_braket_job_queue/types.rb +0 -246
  707. data/lib/pangea/resources/aws_braket_local_simulator/resource.rb +0 -149
  708. data/lib/pangea/resources/aws_braket_local_simulator/types.rb +0 -301
  709. data/lib/pangea/resources/aws_braket_quantum_task/CLAUDE.md +0 -188
  710. data/lib/pangea/resources/aws_braket_quantum_task/resource.rb +0 -90
  711. data/lib/pangea/resources/aws_braket_quantum_task/types.rb +0 -171
  712. data/lib/pangea/resources/aws_budgets_budget/CLAUDE.md +0 -304
  713. data/lib/pangea/resources/aws_budgets_budget/resource.rb +0 -199
  714. data/lib/pangea/resources/aws_budgets_budget/types.rb +0 -337
  715. data/lib/pangea/resources/aws_budgets_budget_action/CLAUDE.md +0 -357
  716. data/lib/pangea/resources/aws_budgets_budget_action/resource.rb +0 -201
  717. data/lib/pangea/resources/aws_budgets_budget_action/types.rb +0 -417
  718. data/lib/pangea/resources/aws_ce_anomaly_detector/resource.rb +0 -65
  719. data/lib/pangea/resources/aws_ce_anomaly_detector/types.rb +0 -72
  720. data/lib/pangea/resources/aws_ce_anomaly_subscription/resource.rb +0 -62
  721. data/lib/pangea/resources/aws_ce_anomaly_subscription/types.rb +0 -59
  722. data/lib/pangea/resources/aws_ce_cost_category/resource.rb +0 -204
  723. data/lib/pangea/resources/aws_ce_cost_category/types.rb +0 -399
  724. data/lib/pangea/resources/aws_cloudformation_stack/CLAUDE.md +0 -244
  725. data/lib/pangea/resources/aws_cloudformation_stack/resource.rb +0 -139
  726. data/lib/pangea/resources/aws_cloudformation_stack/types.rb +0 -244
  727. data/lib/pangea/resources/aws_cloudformation_stack/types.rbs +0 -46
  728. data/lib/pangea/resources/aws_cloudformation_stack_set/CLAUDE.md +0 -309
  729. data/lib/pangea/resources/aws_cloudformation_stack_set/resource.rb +0 -152
  730. data/lib/pangea/resources/aws_cloudformation_stack_set/types.rb +0 -311
  731. data/lib/pangea/resources/aws_cloudformation_stack_set/types.rbs +0 -48
  732. data/lib/pangea/resources/aws_cloudfront_cache_policy/resource.rb +0 -84
  733. data/lib/pangea/resources/aws_cloudfront_cache_policy/types.rb +0 -56
  734. data/lib/pangea/resources/aws_cloudfront_distribution/CLAUDE.md +0 -62
  735. data/lib/pangea/resources/aws_cloudfront_distribution/resource.rb +0 -251
  736. data/lib/pangea/resources/aws_cloudfront_distribution/types.rb +0 -415
  737. data/lib/pangea/resources/aws_cloudfront_key_group/resource.rb +0 -71
  738. data/lib/pangea/resources/aws_cloudfront_key_group/types.rb +0 -191
  739. data/lib/pangea/resources/aws_cloudfront_origin_access_control/resource.rb +0 -68
  740. data/lib/pangea/resources/aws_cloudfront_origin_access_control/types.rb +0 -100
  741. data/lib/pangea/resources/aws_cloudfront_origin_request_policy/resource.rb +0 -76
  742. data/lib/pangea/resources/aws_cloudfront_origin_request_policy/types.rb +0 -49
  743. data/lib/pangea/resources/aws_cloudfront_public_key/resource.rb +0 -69
  744. data/lib/pangea/resources/aws_cloudfront_public_key/types.rb +0 -177
  745. data/lib/pangea/resources/aws_cloudfront_public_key.rbs +0 -30
  746. data/lib/pangea/resources/aws_cloudfront_response_headers_policy/resource.rb +0 -175
  747. data/lib/pangea/resources/aws_cloudfront_response_headers_policy/types.rb +0 -385
  748. data/lib/pangea/resources/aws_cloudtrail/resource.rb +0 -133
  749. data/lib/pangea/resources/aws_cloudtrail/types.rb +0 -364
  750. data/lib/pangea/resources/aws_cloudtrail.rbs +0 -10
  751. data/lib/pangea/resources/aws_cloudtrail_event_data_store/resource.rb +0 -64
  752. data/lib/pangea/resources/aws_cloudtrail_event_data_store/types.rb +0 -73
  753. data/lib/pangea/resources/aws_cloudtrail_event_data_store.rbs +0 -10
  754. data/lib/pangea/resources/aws_cloudwatch_anomaly_detector/resource.rb +0 -103
  755. data/lib/pangea/resources/aws_cloudwatch_composite_alarm/CLAUDE.md +0 -288
  756. data/lib/pangea/resources/aws_cloudwatch_composite_alarm/resource.rb +0 -133
  757. data/lib/pangea/resources/aws_cloudwatch_composite_alarm/types.rb +0 -134
  758. data/lib/pangea/resources/aws_cloudwatch_dashboard/CLAUDE.md +0 -342
  759. data/lib/pangea/resources/aws_cloudwatch_dashboard/resource.rb +0 -156
  760. data/lib/pangea/resources/aws_cloudwatch_dashboard/types.rb +0 -302
  761. data/lib/pangea/resources/aws_cloudwatch_event_rule/CLAUDE.md +0 -568
  762. data/lib/pangea/resources/aws_cloudwatch_event_rule/resource.rb +0 -143
  763. data/lib/pangea/resources/aws_cloudwatch_event_rule/types.rb +0 -181
  764. data/lib/pangea/resources/aws_cloudwatch_event_target/CLAUDE.md +0 -625
  765. data/lib/pangea/resources/aws_cloudwatch_event_target/resource.rb +0 -226
  766. data/lib/pangea/resources/aws_cloudwatch_event_target/types.rb +0 -231
  767. data/lib/pangea/resources/aws_cloudwatch_insight_rule/resource.rb +0 -101
  768. data/lib/pangea/resources/aws_cloudwatch_log_data_protection_policy/resource.rb +0 -99
  769. data/lib/pangea/resources/aws_cloudwatch_log_destination/CLAUDE.md +0 -388
  770. data/lib/pangea/resources/aws_cloudwatch_log_destination/resource.rb +0 -103
  771. data/lib/pangea/resources/aws_cloudwatch_log_destination/types.rb +0 -103
  772. data/lib/pangea/resources/aws_cloudwatch_log_destination_policy/CLAUDE.md +0 -479
  773. data/lib/pangea/resources/aws_cloudwatch_log_destination_policy/resource.rb +0 -132
  774. data/lib/pangea/resources/aws_cloudwatch_log_destination_policy/types.rb +0 -130
  775. data/lib/pangea/resources/aws_cloudwatch_log_group/CLAUDE.md +0 -175
  776. data/lib/pangea/resources/aws_cloudwatch_log_group/resource.rb +0 -120
  777. data/lib/pangea/resources/aws_cloudwatch_log_group/types.rb +0 -138
  778. data/lib/pangea/resources/aws_cloudwatch_log_metric_filter/CLAUDE.md +0 -502
  779. data/lib/pangea/resources/aws_cloudwatch_log_metric_filter/resource.rb +0 -130
  780. data/lib/pangea/resources/aws_cloudwatch_log_metric_filter/types.rb +0 -139
  781. data/lib/pangea/resources/aws_cloudwatch_log_resource_policy/resource.rb +0 -82
  782. data/lib/pangea/resources/aws_cloudwatch_log_stream/CLAUDE.md +0 -260
  783. data/lib/pangea/resources/aws_cloudwatch_log_stream/resource.rb +0 -90
  784. data/lib/pangea/resources/aws_cloudwatch_log_stream/types.rb +0 -130
  785. data/lib/pangea/resources/aws_cloudwatch_log_subscription_filter/CLAUDE.md +0 -473
  786. data/lib/pangea/resources/aws_cloudwatch_log_subscription_filter/resource.rb +0 -105
  787. data/lib/pangea/resources/aws_cloudwatch_log_subscription_filter/types.rb +0 -142
  788. data/lib/pangea/resources/aws_cloudwatch_metric_alarm/CLAUDE.md +0 -317
  789. data/lib/pangea/resources/aws_cloudwatch_metric_alarm/resource.rb +0 -198
  790. data/lib/pangea/resources/aws_cloudwatch_metric_alarm/types.rb +0 -242
  791. data/lib/pangea/resources/aws_cloudwatch_query_definition/resource.rb +0 -93
  792. data/lib/pangea/resources/aws_codeartifact_domain/CLAUDE.md +0 -54
  793. data/lib/pangea/resources/aws_codeartifact_domain/resource.rb +0 -126
  794. data/lib/pangea/resources/aws_codeartifact_domain/types.rb +0 -131
  795. data/lib/pangea/resources/aws_codeartifact_repository/CLAUDE.md +0 -55
  796. data/lib/pangea/resources/aws_codeartifact_repository/resource.rb +0 -176
  797. data/lib/pangea/resources/aws_codeartifact_repository/types.rb +0 -196
  798. data/lib/pangea/resources/aws_codebuild_project/CLAUDE.md +0 -304
  799. data/lib/pangea/resources/aws_codebuild_project/resource.rb +0 -254
  800. data/lib/pangea/resources/aws_codebuild_project/types.rb +0 -288
  801. data/lib/pangea/resources/aws_codebuild_project/types.rbs +0 -140
  802. data/lib/pangea/resources/aws_codebuild_project.rbs +0 -10
  803. data/lib/pangea/resources/aws_codecommit_repository/CLAUDE.md +0 -150
  804. data/lib/pangea/resources/aws_codecommit_repository/resource.rb +0 -100
  805. data/lib/pangea/resources/aws_codecommit_repository/types.rb +0 -122
  806. data/lib/pangea/resources/aws_codecommit_repository/types.rbs +0 -55
  807. data/lib/pangea/resources/aws_codecommit_repository.rbs +0 -10
  808. data/lib/pangea/resources/aws_codedeploy_application/CLAUDE.md +0 -312
  809. data/lib/pangea/resources/aws_codedeploy_application/resource.rb +0 -81
  810. data/lib/pangea/resources/aws_codedeploy_application/types.rb +0 -98
  811. data/lib/pangea/resources/aws_codedeploy_application.rbs +0 -10
  812. data/lib/pangea/resources/aws_codedeploy_deployment_config/CLAUDE.md +0 -354
  813. data/lib/pangea/resources/aws_codedeploy_deployment_config/resource.rb +0 -97
  814. data/lib/pangea/resources/aws_codedeploy_deployment_config/types.rb +0 -143
  815. data/lib/pangea/resources/aws_codedeploy_deployment_config.rbs +0 -10
  816. data/lib/pangea/resources/aws_codedeploy_deployment_group/CLAUDE.md +0 -342
  817. data/lib/pangea/resources/aws_codedeploy_deployment_group/resource.rb +0 -224
  818. data/lib/pangea/resources/aws_codedeploy_deployment_group/types.rb +0 -249
  819. data/lib/pangea/resources/aws_codedeploy_deployment_group.rbs +0 -10
  820. data/lib/pangea/resources/aws_codepipeline/CLAUDE.md +0 -592
  821. data/lib/pangea/resources/aws_codepipeline/resource.rb +0 -126
  822. data/lib/pangea/resources/aws_codepipeline/types.rb +0 -212
  823. data/lib/pangea/resources/aws_codepipeline.rbs +0 -10
  824. data/lib/pangea/resources/aws_codepipeline_webhook/CLAUDE.md +0 -449
  825. data/lib/pangea/resources/aws_codepipeline_webhook/resource.rb +0 -94
  826. data/lib/pangea/resources/aws_codepipeline_webhook/types.rb +0 -134
  827. data/lib/pangea/resources/aws_codepipeline_webhook.rbs +0 -10
  828. data/lib/pangea/resources/aws_codestar_connection/CLAUDE.md +0 -55
  829. data/lib/pangea/resources/aws_codestar_connection/resource.rb +0 -136
  830. data/lib/pangea/resources/aws_codestar_connection/types.rb +0 -191
  831. data/lib/pangea/resources/aws_cognito_identity_pool/CLAUDE.md +0 -712
  832. data/lib/pangea/resources/aws_cognito_identity_pool/resource.rb +0 -110
  833. data/lib/pangea/resources/aws_cognito_identity_pool/types.rb +0 -343
  834. data/lib/pangea/resources/aws_cognito_identity_provider/resource.rb +0 -91
  835. data/lib/pangea/resources/aws_cognito_identity_provider/types.rb +0 -480
  836. data/lib/pangea/resources/aws_cognito_user/resource.rb +0 -81
  837. data/lib/pangea/resources/aws_cognito_user/types.rb +0 -145
  838. data/lib/pangea/resources/aws_cognito_user_group/resource.rb +0 -64
  839. data/lib/pangea/resources/aws_cognito_user_group/types.rb +0 -130
  840. data/lib/pangea/resources/aws_cognito_user_pool/CLAUDE.md +0 -431
  841. data/lib/pangea/resources/aws_cognito_user_pool/resource.rb +0 -251
  842. data/lib/pangea/resources/aws_cognito_user_pool/types.rb +0 -359
  843. data/lib/pangea/resources/aws_cognito_user_pool_client/CLAUDE.md +0 -542
  844. data/lib/pangea/resources/aws_cognito_user_pool_client/resource.rb +0 -139
  845. data/lib/pangea/resources/aws_cognito_user_pool_client/types.rb +0 -394
  846. data/lib/pangea/resources/aws_cognito_user_pool_domain/CLAUDE.md +0 -524
  847. data/lib/pangea/resources/aws_cognito_user_pool_domain/resource.rb +0 -71
  848. data/lib/pangea/resources/aws_cognito_user_pool_domain/types.rb +0 -252
  849. data/lib/pangea/resources/aws_config_config_rule/CLAUDE.md +0 -381
  850. data/lib/pangea/resources/aws_config_config_rule/resource.rb +0 -190
  851. data/lib/pangea/resources/aws_config_config_rule/types.rb +0 -231
  852. data/lib/pangea/resources/aws_config_config_rule.rbs +0 -10
  853. data/lib/pangea/resources/aws_config_configuration_recorder/CLAUDE.md +0 -247
  854. data/lib/pangea/resources/aws_config_configuration_recorder/resource.rb +0 -139
  855. data/lib/pangea/resources/aws_config_configuration_recorder/types.rb +0 -156
  856. data/lib/pangea/resources/aws_config_configuration_recorder.rbs +0 -10
  857. data/lib/pangea/resources/aws_config_delivery_channel/CLAUDE.md +0 -290
  858. data/lib/pangea/resources/aws_config_delivery_channel/resource.rb +0 -141
  859. data/lib/pangea/resources/aws_config_delivery_channel/types.rb +0 -195
  860. data/lib/pangea/resources/aws_config_delivery_channel.rbs +0 -10
  861. data/lib/pangea/resources/aws_config_remediation_configuration/resource.rb +0 -77
  862. data/lib/pangea/resources/aws_config_remediation_configuration/types.rb +0 -119
  863. data/lib/pangea/resources/aws_config_remediation_configuration.rbs +0 -10
  864. data/lib/pangea/resources/aws_cur_report_definition/resource.rb +0 -63
  865. data/lib/pangea/resources/aws_cur_report_definition/types.rb +0 -80
  866. data/lib/pangea/resources/aws_customer_gateway/CLAUDE.md +0 -458
  867. data/lib/pangea/resources/aws_customer_gateway/resource.rb +0 -93
  868. data/lib/pangea/resources/aws_customer_gateway/types.rb +0 -117
  869. data/lib/pangea/resources/aws_db_cluster_snapshot/resource.rb +0 -95
  870. data/lib/pangea/resources/aws_db_cluster_snapshot/types.rb +0 -245
  871. data/lib/pangea/resources/aws_db_instance/CLAUDE.md +0 -407
  872. data/lib/pangea/resources/aws_db_instance/resource.rb +0 -126
  873. data/lib/pangea/resources/aws_db_instance/types.rb +0 -260
  874. data/lib/pangea/resources/aws_db_parameter_group/CLAUDE.md +0 -285
  875. data/lib/pangea/resources/aws_db_parameter_group/resource.rb +0 -94
  876. data/lib/pangea/resources/aws_db_parameter_group/types.rb +0 -300
  877. data/lib/pangea/resources/aws_db_snapshot/resource.rb +0 -92
  878. data/lib/pangea/resources/aws_db_snapshot/types.rb +0 -175
  879. data/lib/pangea/resources/aws_db_subnet_group/CLAUDE.md +0 -189
  880. data/lib/pangea/resources/aws_db_subnet_group/resource.rb +0 -77
  881. data/lib/pangea/resources/aws_db_subnet_group/types.rb +0 -102
  882. data/lib/pangea/resources/aws_default_network_acl/resource.rb +0 -67
  883. data/lib/pangea/resources/aws_default_network_acl/types.rb +0 -46
  884. data/lib/pangea/resources/aws_default_route_table/resource.rb +0 -67
  885. data/lib/pangea/resources/aws_default_route_table/types.rb +0 -46
  886. data/lib/pangea/resources/aws_default_security_group/resource.rb +0 -67
  887. data/lib/pangea/resources/aws_default_security_group/types.rb +0 -46
  888. data/lib/pangea/resources/aws_default_vpc_dhcp_options/resource.rb +0 -67
  889. data/lib/pangea/resources/aws_default_vpc_dhcp_options/types.rb +0 -46
  890. data/lib/pangea/resources/aws_detective_graph.rbs +0 -29
  891. data/lib/pangea/resources/aws_device_farm_project/CLAUDE.md +0 -299
  892. data/lib/pangea/resources/aws_device_farm_project/resource.rb +0 -78
  893. data/lib/pangea/resources/aws_device_farm_project/types.rb +0 -51
  894. data/lib/pangea/resources/aws_device_farm_project.rbs +0 -33
  895. data/lib/pangea/resources/aws_directory_service_directory/resource.rb +0 -34
  896. data/lib/pangea/resources/aws_docdb_certificate/CLAUDE.md +0 -96
  897. data/lib/pangea/resources/aws_docdb_certificate/resource.rb +0 -74
  898. data/lib/pangea/resources/aws_docdb_certificate/types.rb +0 -48
  899. data/lib/pangea/resources/aws_docdb_cluster/CLAUDE.md +0 -96
  900. data/lib/pangea/resources/aws_docdb_cluster/resource.rb +0 -96
  901. data/lib/pangea/resources/aws_docdb_cluster/types.rb +0 -70
  902. data/lib/pangea/resources/aws_docdb_cluster_endpoint/CLAUDE.md +0 -96
  903. data/lib/pangea/resources/aws_docdb_cluster_endpoint/resource.rb +0 -74
  904. data/lib/pangea/resources/aws_docdb_cluster_endpoint/types.rb +0 -52
  905. data/lib/pangea/resources/aws_docdb_cluster_instance/CLAUDE.md +0 -96
  906. data/lib/pangea/resources/aws_docdb_cluster_instance/resource.rb +0 -89
  907. data/lib/pangea/resources/aws_docdb_cluster_instance/types.rb +0 -61
  908. data/lib/pangea/resources/aws_docdb_cluster_parameter_group/CLAUDE.md +0 -96
  909. data/lib/pangea/resources/aws_docdb_cluster_parameter_group/resource.rb +0 -71
  910. data/lib/pangea/resources/aws_docdb_cluster_parameter_group/types.rb +0 -51
  911. data/lib/pangea/resources/aws_docdb_cluster_snapshot/CLAUDE.md +0 -96
  912. data/lib/pangea/resources/aws_docdb_cluster_snapshot/resource.rb +0 -80
  913. data/lib/pangea/resources/aws_docdb_cluster_snapshot/types.rb +0 -49
  914. data/lib/pangea/resources/aws_docdb_event_subscription/CLAUDE.md +0 -96
  915. data/lib/pangea/resources/aws_docdb_event_subscription/resource.rb +0 -74
  916. data/lib/pangea/resources/aws_docdb_event_subscription/types.rb +0 -53
  917. data/lib/pangea/resources/aws_docdb_global_cluster/CLAUDE.md +0 -96
  918. data/lib/pangea/resources/aws_docdb_global_cluster/resource.rb +0 -76
  919. data/lib/pangea/resources/aws_docdb_global_cluster/types.rb +0 -54
  920. data/lib/pangea/resources/aws_docdb_subnet_group/CLAUDE.md +0 -96
  921. data/lib/pangea/resources/aws_docdb_subnet_group/resource.rb +0 -70
  922. data/lib/pangea/resources/aws_docdb_subnet_group/types.rb +0 -50
  923. data/lib/pangea/resources/aws_drs_launch_configuration_template/resource.rb +0 -183
  924. data/lib/pangea/resources/aws_drs_replication_configuration_template/resource.rb +0 -156
  925. data/lib/pangea/resources/aws_dynamodb_global_table/CLAUDE.md +0 -184
  926. data/lib/pangea/resources/aws_dynamodb_global_table/resource.rb +0 -134
  927. data/lib/pangea/resources/aws_dynamodb_global_table/types.rb +0 -272
  928. data/lib/pangea/resources/aws_dynamodb_global_table/types.rbs +0 -39
  929. data/lib/pangea/resources/aws_dynamodb_kinesis_streaming_destination/resource.rb +0 -70
  930. data/lib/pangea/resources/aws_dynamodb_kinesis_streaming_destination/types.rb +0 -76
  931. data/lib/pangea/resources/aws_dynamodb_table/CLAUDE.md +0 -130
  932. data/lib/pangea/resources/aws_dynamodb_table/resource.rb +0 -224
  933. data/lib/pangea/resources/aws_dynamodb_table/types.rb +0 -408
  934. data/lib/pangea/resources/aws_dynamodb_table/types.rbs +0 -55
  935. data/lib/pangea/resources/aws_dynamodb_table_export/resource.rb +0 -85
  936. data/lib/pangea/resources/aws_dynamodb_table_export/types.rb +0 -98
  937. data/lib/pangea/resources/aws_ebs_volume/CLAUDE.md +0 -275
  938. data/lib/pangea/resources/aws_ebs_volume/resource.rb +0 -114
  939. data/lib/pangea/resources/aws_ebs_volume/types.rb +0 -250
  940. data/lib/pangea/resources/aws_ec2_ami_launch_permission/resource.rb +0 -67
  941. data/lib/pangea/resources/aws_ec2_ami_launch_permission/types.rb +0 -46
  942. data/lib/pangea/resources/aws_ec2_availability_zone_group/resource.rb +0 -67
  943. data/lib/pangea/resources/aws_ec2_availability_zone_group/types.rb +0 -46
  944. data/lib/pangea/resources/aws_ec2_capacity_block_reservation/resource.rb +0 -67
  945. data/lib/pangea/resources/aws_ec2_capacity_block_reservation/types.rb +0 -46
  946. data/lib/pangea/resources/aws_ec2_capacity_reservation/resource.rb +0 -67
  947. data/lib/pangea/resources/aws_ec2_capacity_reservation/types.rb +0 -46
  948. data/lib/pangea/resources/aws_ec2_dedicated_host/resource.rb +0 -67
  949. data/lib/pangea/resources/aws_ec2_dedicated_host/types.rb +0 -46
  950. data/lib/pangea/resources/aws_ec2_fleet/resource.rb +0 -67
  951. data/lib/pangea/resources/aws_ec2_fleet/types.rb +0 -46
  952. data/lib/pangea/resources/aws_ec2_host_resource_group_association/resource.rb +0 -67
  953. data/lib/pangea/resources/aws_ec2_host_resource_group_association/types.rb +0 -46
  954. data/lib/pangea/resources/aws_ec2_image_block_public_access/resource.rb +0 -67
  955. data/lib/pangea/resources/aws_ec2_image_block_public_access/types.rb +0 -46
  956. data/lib/pangea/resources/aws_ec2_instance_metadata_defaults/resource.rb +0 -67
  957. data/lib/pangea/resources/aws_ec2_instance_metadata_defaults/types.rb +0 -46
  958. data/lib/pangea/resources/aws_ec2_serial_console_access/resource.rb +0 -67
  959. data/lib/pangea/resources/aws_ec2_serial_console_access/types.rb +0 -46
  960. data/lib/pangea/resources/aws_ec2_snapshot_block_public_access/resource.rb +0 -67
  961. data/lib/pangea/resources/aws_ec2_snapshot_block_public_access/types.rb +0 -46
  962. data/lib/pangea/resources/aws_ec2_spot_datafeed_subscription/resource.rb +0 -67
  963. data/lib/pangea/resources/aws_ec2_spot_datafeed_subscription/types.rb +0 -46
  964. data/lib/pangea/resources/aws_ec2_spot_fleet_request/resource.rb +0 -67
  965. data/lib/pangea/resources/aws_ec2_spot_fleet_request/types.rb +0 -46
  966. data/lib/pangea/resources/aws_ec2_spot_instance_request/resource.rb +0 -67
  967. data/lib/pangea/resources/aws_ec2_spot_instance_request/types.rb +0 -46
  968. data/lib/pangea/resources/aws_ec2_tag/resource.rb +0 -67
  969. data/lib/pangea/resources/aws_ec2_tag/types.rb +0 -46
  970. data/lib/pangea/resources/aws_ec2_transit_gateway/CLAUDE.md +0 -220
  971. data/lib/pangea/resources/aws_ec2_transit_gateway/resource.rb +0 -114
  972. data/lib/pangea/resources/aws_ec2_transit_gateway/types.rb +0 -124
  973. data/lib/pangea/resources/aws_ec2_transit_gateway.rbs +0 -29
  974. data/lib/pangea/resources/aws_ec2_transit_gateway_multicast_domain/resource.rb +0 -67
  975. data/lib/pangea/resources/aws_ec2_transit_gateway_multicast_domain/types.rb +0 -46
  976. data/lib/pangea/resources/aws_ec2_transit_gateway_multicast_domain_association/resource.rb +0 -67
  977. data/lib/pangea/resources/aws_ec2_transit_gateway_multicast_domain_association/types.rb +0 -46
  978. data/lib/pangea/resources/aws_ec2_transit_gateway_multicast_group_member/resource.rb +0 -67
  979. data/lib/pangea/resources/aws_ec2_transit_gateway_multicast_group_member/types.rb +0 -46
  980. data/lib/pangea/resources/aws_ec2_transit_gateway_route/CLAUDE.md +0 -458
  981. data/lib/pangea/resources/aws_ec2_transit_gateway_route/resource.rb +0 -81
  982. data/lib/pangea/resources/aws_ec2_transit_gateway_route/types.rb +0 -233
  983. data/lib/pangea/resources/aws_ec2_transit_gateway_route.rbs +0 -27
  984. data/lib/pangea/resources/aws_ec2_transit_gateway_route_table/CLAUDE.md +0 -384
  985. data/lib/pangea/resources/aws_ec2_transit_gateway_route_table/resource.rb +0 -77
  986. data/lib/pangea/resources/aws_ec2_transit_gateway_route_table/types.rb +0 -171
  987. data/lib/pangea/resources/aws_ec2_transit_gateway_route_table.rbs +0 -24
  988. data/lib/pangea/resources/aws_ec2_transit_gateway_route_table_association/CLAUDE.md +0 -409
  989. data/lib/pangea/resources/aws_ec2_transit_gateway_route_table_association/resource.rb +0 -74
  990. data/lib/pangea/resources/aws_ec2_transit_gateway_route_table_association/types.rb +0 -167
  991. data/lib/pangea/resources/aws_ec2_transit_gateway_route_table_association.rbs +0 -25
  992. data/lib/pangea/resources/aws_ec2_transit_gateway_route_table_propagation/CLAUDE.md +0 -433
  993. data/lib/pangea/resources/aws_ec2_transit_gateway_route_table_propagation/resource.rb +0 -70
  994. data/lib/pangea/resources/aws_ec2_transit_gateway_route_table_propagation/types.rb +0 -213
  995. data/lib/pangea/resources/aws_ec2_transit_gateway_route_table_propagation.rbs +0 -25
  996. data/lib/pangea/resources/aws_ec2_transit_gateway_vpc_attachment/CLAUDE.md +0 -326
  997. data/lib/pangea/resources/aws_ec2_transit_gateway_vpc_attachment/resource.rb +0 -101
  998. data/lib/pangea/resources/aws_ec2_transit_gateway_vpc_attachment/types.rb +0 -152
  999. data/lib/pangea/resources/aws_ec2_transit_gateway_vpc_attachment.rbs +0 -30
  1000. data/lib/pangea/resources/aws_ecr_lifecycle_policy/CLAUDE.md +0 -56
  1001. data/lib/pangea/resources/aws_ecr_lifecycle_policy/resource.rb +0 -164
  1002. data/lib/pangea/resources/aws_ecr_lifecycle_policy/types.rb +0 -220
  1003. data/lib/pangea/resources/aws_ecr_replication_configuration/CLAUDE.md +0 -55
  1004. data/lib/pangea/resources/aws_ecr_replication_configuration/resource.rb +0 -147
  1005. data/lib/pangea/resources/aws_ecr_replication_configuration/types.rb +0 -169
  1006. data/lib/pangea/resources/aws_ecr_repository/CLAUDE.md +0 -54
  1007. data/lib/pangea/resources/aws_ecr_repository/resource.rb +0 -143
  1008. data/lib/pangea/resources/aws_ecr_repository/types.rb +0 -128
  1009. data/lib/pangea/resources/aws_ecr_repository_policy/CLAUDE.md +0 -55
  1010. data/lib/pangea/resources/aws_ecr_repository_policy/resource.rb +0 -133
  1011. data/lib/pangea/resources/aws_ecr_repository_policy/types.rb +0 -193
  1012. data/lib/pangea/resources/aws_ecs_capacity_provider/resource.rb +0 -106
  1013. data/lib/pangea/resources/aws_ecs_capacity_provider/types.rb +0 -114
  1014. data/lib/pangea/resources/aws_ecs_cluster/CLAUDE.md +0 -218
  1015. data/lib/pangea/resources/aws_ecs_cluster/resource.rb +0 -130
  1016. data/lib/pangea/resources/aws_ecs_cluster/types.rb +0 -155
  1017. data/lib/pangea/resources/aws_ecs_cluster_capacity_providers/CLAUDE.md +0 -191
  1018. data/lib/pangea/resources/aws_ecs_cluster_capacity_providers/resource.rb +0 -79
  1019. data/lib/pangea/resources/aws_ecs_cluster_capacity_providers/types.rb +0 -171
  1020. data/lib/pangea/resources/aws_ecs_service/CLAUDE.md +0 -256
  1021. data/lib/pangea/resources/aws_ecs_service/resource.rb +0 -242
  1022. data/lib/pangea/resources/aws_ecs_service/types.rb +0 -327
  1023. data/lib/pangea/resources/aws_ecs_task_definition/CLAUDE.md +0 -281
  1024. data/lib/pangea/resources/aws_ecs_task_definition/resource.rb +0 -318
  1025. data/lib/pangea/resources/aws_ecs_task_definition/types.rb +0 -439
  1026. data/lib/pangea/resources/aws_ecs_task_definition/types_old.rb +0 -439
  1027. data/lib/pangea/resources/aws_efs_access_point/CLAUDE.md +0 -504
  1028. data/lib/pangea/resources/aws_efs_access_point/resource.rb +0 -77
  1029. data/lib/pangea/resources/aws_efs_access_point/types.rb +0 -185
  1030. data/lib/pangea/resources/aws_efs_file_system/CLAUDE.md +0 -279
  1031. data/lib/pangea/resources/aws_efs_file_system/resource.rb +0 -80
  1032. data/lib/pangea/resources/aws_efs_file_system/types.rb +0 -106
  1033. data/lib/pangea/resources/aws_efs_mount_target/CLAUDE.md +0 -361
  1034. data/lib/pangea/resources/aws_efs_mount_target/resource.rb +0 -68
  1035. data/lib/pangea/resources/aws_efs_mount_target/types.rb +0 -100
  1036. data/lib/pangea/resources/aws_eip/CLAUDE.md +0 -325
  1037. data/lib/pangea/resources/aws_eip/resource.rb +0 -105
  1038. data/lib/pangea/resources/aws_eip/types.rb +0 -102
  1039. data/lib/pangea/resources/aws_eip_association/CLAUDE.md +0 -96
  1040. data/lib/pangea/resources/aws_eip_association/resource.rb +0 -77
  1041. data/lib/pangea/resources/aws_eip_association/types.rb +0 -88
  1042. data/lib/pangea/resources/aws_eks_access_entry/resource.rb +0 -92
  1043. data/lib/pangea/resources/aws_eks_access_entry/types.rb +0 -110
  1044. data/lib/pangea/resources/aws_eks_addon/CLAUDE.md +0 -271
  1045. data/lib/pangea/resources/aws_eks_addon/resource.rb +0 -153
  1046. data/lib/pangea/resources/aws_eks_addon/types.rb +0 -199
  1047. data/lib/pangea/resources/aws_eks_cluster/CLAUDE.md +0 -198
  1048. data/lib/pangea/resources/aws_eks_cluster/resource.rb +0 -165
  1049. data/lib/pangea/resources/aws_eks_cluster/types.rb +0 -195
  1050. data/lib/pangea/resources/aws_eks_fargate_profile/CLAUDE.md +0 -266
  1051. data/lib/pangea/resources/aws_eks_fargate_profile/resource.rb +0 -152
  1052. data/lib/pangea/resources/aws_eks_fargate_profile/types.rb +0 -145
  1053. data/lib/pangea/resources/aws_eks_node_group/CLAUDE.md +0 -258
  1054. data/lib/pangea/resources/aws_eks_node_group/resource.rb +0 -224
  1055. data/lib/pangea/resources/aws_eks_node_group/types.rb +0 -260
  1056. data/lib/pangea/resources/aws_elasticache_cluster/CLAUDE.md +0 -240
  1057. data/lib/pangea/resources/aws_elasticache_cluster/resource.rb +0 -134
  1058. data/lib/pangea/resources/aws_elasticache_cluster/types.rb +0 -286
  1059. data/lib/pangea/resources/aws_elasticache_cluster/types.rbs +0 -41
  1060. data/lib/pangea/resources/aws_elasticache_parameter_group/CLAUDE.md +0 -334
  1061. data/lib/pangea/resources/aws_elasticache_parameter_group/resource.rb +0 -94
  1062. data/lib/pangea/resources/aws_elasticache_parameter_group/types.rb +0 -295
  1063. data/lib/pangea/resources/aws_elasticache_subnet_group/CLAUDE.md +0 -286
  1064. data/lib/pangea/resources/aws_elasticache_subnet_group/resource.rb +0 -79
  1065. data/lib/pangea/resources/aws_elasticache_subnet_group/types.rb +0 -159
  1066. data/lib/pangea/resources/aws_elb_attachment/resource.rb +0 -67
  1067. data/lib/pangea/resources/aws_elb_attachment/types.rb +0 -46
  1068. data/lib/pangea/resources/aws_elb_service_account/resource.rb +0 -67
  1069. data/lib/pangea/resources/aws_elb_service_account/types.rb +0 -46
  1070. data/lib/pangea/resources/aws_elemental_data_plane_channel/resource.rb +0 -74
  1071. data/lib/pangea/resources/aws_elemental_data_plane_channel/types.rb +0 -66
  1072. data/lib/pangea/resources/aws_emr_cluster/CLAUDE.md +0 -660
  1073. data/lib/pangea/resources/aws_emr_cluster/resource.rb +0 -324
  1074. data/lib/pangea/resources/aws_emr_cluster/types.rb +0 -496
  1075. data/lib/pangea/resources/aws_emr_cluster/types.rbs +0 -67
  1076. data/lib/pangea/resources/aws_emr_instance_group/CLAUDE.md +0 -586
  1077. data/lib/pangea/resources/aws_emr_instance_group/resource.rb +0 -185
  1078. data/lib/pangea/resources/aws_emr_instance_group/types.rb +0 -420
  1079. data/lib/pangea/resources/aws_emr_instance_group/types.rbs +0 -51
  1080. data/lib/pangea/resources/aws_emr_step/CLAUDE.md +0 -560
  1081. data/lib/pangea/resources/aws_emr_step/resource.rb +0 -96
  1082. data/lib/pangea/resources/aws_emr_step/types.rb +0 -389
  1083. data/lib/pangea/resources/aws_emr_step/types.rbs +0 -46
  1084. data/lib/pangea/resources/aws_eventbridge_bus/CLAUDE.md +0 -208
  1085. data/lib/pangea/resources/aws_eventbridge_bus/resource.rb +0 -78
  1086. data/lib/pangea/resources/aws_eventbridge_bus/types.rb +0 -177
  1087. data/lib/pangea/resources/aws_eventbridge_bus/types.rbs +0 -32
  1088. data/lib/pangea/resources/aws_eventbridge_rule/CLAUDE.md +0 -232
  1089. data/lib/pangea/resources/aws_eventbridge_rule/resource.rb +0 -95
  1090. data/lib/pangea/resources/aws_eventbridge_rule/types.rb +0 -332
  1091. data/lib/pangea/resources/aws_eventbridge_rule/types.rbs +0 -41
  1092. data/lib/pangea/resources/aws_eventbridge_target/CLAUDE.md +0 -260
  1093. data/lib/pangea/resources/aws_eventbridge_target/resource.rb +0 -220
  1094. data/lib/pangea/resources/aws_eventbridge_target/types.rb +0 -483
  1095. data/lib/pangea/resources/aws_eventbridge_target/types.rbs +0 -58
  1096. data/lib/pangea/resources/aws_extended_resources_CLAUDE.md +0 -395
  1097. data/lib/pangea/resources/aws_fsx_lustre_filesystem/CLAUDE.md +0 -383
  1098. data/lib/pangea/resources/aws_fsx_lustre_filesystem/resource.rb +0 -151
  1099. data/lib/pangea/resources/aws_fsx_lustre_filesystem/types.rb +0 -218
  1100. data/lib/pangea/resources/aws_gamelift_alias/CLAUDE.md +0 -261
  1101. data/lib/pangea/resources/aws_gamelift_alias/resource.rb +0 -78
  1102. data/lib/pangea/resources/aws_gamelift_alias/types.rb +0 -84
  1103. data/lib/pangea/resources/aws_gamelift_alias.rbs +0 -44
  1104. data/lib/pangea/resources/aws_gamelift_build/CLAUDE.md +0 -233
  1105. data/lib/pangea/resources/aws_gamelift_build/resource.rb +0 -89
  1106. data/lib/pangea/resources/aws_gamelift_build/types.rb +0 -71
  1107. data/lib/pangea/resources/aws_gamelift_build.rbs +0 -45
  1108. data/lib/pangea/resources/aws_gamelift_compute/resource.rb +0 -86
  1109. data/lib/pangea/resources/aws_gamelift_compute/types.rb +0 -51
  1110. data/lib/pangea/resources/aws_gamelift_fleet/CLAUDE.md +0 -191
  1111. data/lib/pangea/resources/aws_gamelift_fleet/resource.rb +0 -118
  1112. data/lib/pangea/resources/aws_gamelift_fleet/types.rb +0 -128
  1113. data/lib/pangea/resources/aws_gamelift_fleet.rbs +0 -84
  1114. data/lib/pangea/resources/aws_gamelift_game_session/resource.rb +0 -107
  1115. data/lib/pangea/resources/aws_gamelift_game_session/types.rb +0 -62
  1116. data/lib/pangea/resources/aws_gamelift_game_session_queue/CLAUDE.md +0 -282
  1117. data/lib/pangea/resources/aws_gamelift_game_session_queue/resource.rb +0 -101
  1118. data/lib/pangea/resources/aws_gamelift_game_session_queue/types.rb +0 -87
  1119. data/lib/pangea/resources/aws_gamelift_game_session_queue.rbs +0 -57
  1120. data/lib/pangea/resources/aws_gamelift_matchmaking_configuration/CLAUDE.md +0 -288
  1121. data/lib/pangea/resources/aws_gamelift_matchmaking_configuration/resource.rb +0 -83
  1122. data/lib/pangea/resources/aws_gamelift_matchmaking_configuration/types.rb +0 -89
  1123. data/lib/pangea/resources/aws_gamelift_matchmaking_configuration.rbs +0 -52
  1124. data/lib/pangea/resources/aws_gamelift_matchmaking_rule_set/resource.rb +0 -88
  1125. data/lib/pangea/resources/aws_gamelift_matchmaking_rule_set/types.rb +0 -41
  1126. data/lib/pangea/resources/aws_gamelift_player_session/resource.rb +0 -86
  1127. data/lib/pangea/resources/aws_gamelift_player_session/types.rb +0 -48
  1128. data/lib/pangea/resources/aws_gamelift_script/resource.rb +0 -99
  1129. data/lib/pangea/resources/aws_gamelift_script/types.rb +0 -52
  1130. data/lib/pangea/resources/aws_gamesparks_game/resource.rb +0 -82
  1131. data/lib/pangea/resources/aws_gamesparks_game/types.rb +0 -44
  1132. data/lib/pangea/resources/aws_glue_catalog_database/CLAUDE.md +0 -161
  1133. data/lib/pangea/resources/aws_glue_catalog_database/resource.rb +0 -108
  1134. data/lib/pangea/resources/aws_glue_catalog_database/types.rb +0 -154
  1135. data/lib/pangea/resources/aws_glue_catalog_database/types.rbs +0 -36
  1136. data/lib/pangea/resources/aws_glue_catalog_table/CLAUDE.md +0 -387
  1137. data/lib/pangea/resources/aws_glue_catalog_table/resource.rb +0 -180
  1138. data/lib/pangea/resources/aws_glue_catalog_table/types.rb +0 -284
  1139. data/lib/pangea/resources/aws_glue_catalog_table/types.rbs +0 -44
  1140. data/lib/pangea/resources/aws_glue_job/CLAUDE.md +0 -398
  1141. data/lib/pangea/resources/aws_glue_job/resource.rb +0 -147
  1142. data/lib/pangea/resources/aws_glue_job/types.rb +0 -284
  1143. data/lib/pangea/resources/aws_glue_job/types.rbs +0 -50
  1144. data/lib/pangea/resources/aws_glue_trigger/CLAUDE.md +0 -454
  1145. data/lib/pangea/resources/aws_glue_trigger/resource.rb +0 -158
  1146. data/lib/pangea/resources/aws_glue_trigger/types.rb +0 -331
  1147. data/lib/pangea/resources/aws_glue_trigger/types.rbs +0 -53
  1148. data/lib/pangea/resources/aws_ground_station.rb +0 -371
  1149. data/lib/pangea/resources/aws_guardduty_detector/resource.rb +0 -104
  1150. data/lib/pangea/resources/aws_guardduty_detector/types.rb +0 -92
  1151. data/lib/pangea/resources/aws_guardduty_detector.rbs +0 -35
  1152. data/lib/pangea/resources/aws_guardduty_member/resource.rb +0 -72
  1153. data/lib/pangea/resources/aws_guardduty_member/types.rb +0 -59
  1154. data/lib/pangea/resources/aws_guardduty_member.rbs +0 -34
  1155. data/lib/pangea/resources/aws_iam_group/CLAUDE.md +0 -351
  1156. data/lib/pangea/resources/aws_iam_group/resource.rb +0 -78
  1157. data/lib/pangea/resources/aws_iam_group/types.rb +0 -406
  1158. data/lib/pangea/resources/aws_iam_policy/CLAUDE.md +0 -278
  1159. data/lib/pangea/resources/aws_iam_policy/resource.rb +0 -86
  1160. data/lib/pangea/resources/aws_iam_policy/types.rb +0 -358
  1161. data/lib/pangea/resources/aws_iam_role/CLAUDE.md +0 -419
  1162. data/lib/pangea/resources/aws_iam_role/resource.rb +0 -98
  1163. data/lib/pangea/resources/aws_iam_role/types.rb +0 -224
  1164. data/lib/pangea/resources/aws_iam_role_policy_attachment/CLAUDE.md +0 -331
  1165. data/lib/pangea/resources/aws_iam_role_policy_attachment/resource.rb +0 -71
  1166. data/lib/pangea/resources/aws_iam_role_policy_attachment/types.rb +0 -267
  1167. data/lib/pangea/resources/aws_iam_user/CLAUDE.md +0 -312
  1168. data/lib/pangea/resources/aws_iam_user/resource.rb +0 -85
  1169. data/lib/pangea/resources/aws_iam_user/types.rb +0 -338
  1170. data/lib/pangea/resources/aws_inspector2_enabler/resource.rb +0 -66
  1171. data/lib/pangea/resources/aws_inspector2_enabler/types.rb +0 -86
  1172. data/lib/pangea/resources/aws_inspector2_enabler.rbs +0 -33
  1173. data/lib/pangea/resources/aws_instance/CLAUDE.md +0 -396
  1174. data/lib/pangea/resources/aws_instance/resource.rb +0 -123
  1175. data/lib/pangea/resources/aws_instance/types.rb +0 -150
  1176. data/lib/pangea/resources/aws_internet_gateway/CLAUDE.md +0 -157
  1177. data/lib/pangea/resources/aws_internet_gateway/resource.rb +0 -85
  1178. data/lib/pangea/resources/aws_internet_gateway/types.rb +0 -47
  1179. data/lib/pangea/resources/aws_iot_analytics_channel/CLAUDE.md +0 -3
  1180. data/lib/pangea/resources/aws_iot_analytics_channel/resource.rb +0 -90
  1181. data/lib/pangea/resources/aws_iot_analytics_channel/types.rb +0 -58
  1182. data/lib/pangea/resources/aws_iot_analytics_channel.rbs +0 -15
  1183. data/lib/pangea/resources/aws_iot_analytics_datastore/CLAUDE.md +0 -3
  1184. data/lib/pangea/resources/aws_iot_analytics_datastore/resource.rb +0 -109
  1185. data/lib/pangea/resources/aws_iot_analytics_datastore/types.rb +0 -61
  1186. data/lib/pangea/resources/aws_iot_analytics_datastore.rbs +0 -16
  1187. data/lib/pangea/resources/aws_iot_authorizer/resource.rb +0 -97
  1188. data/lib/pangea/resources/aws_iot_authorizer/types.rb +0 -80
  1189. data/lib/pangea/resources/aws_iot_billing_group/resource.rb +0 -93
  1190. data/lib/pangea/resources/aws_iot_billing_group/types.rb +0 -77
  1191. data/lib/pangea/resources/aws_iot_ca_certificate/resource.rb +0 -127
  1192. data/lib/pangea/resources/aws_iot_ca_certificate/types.rb +0 -102
  1193. data/lib/pangea/resources/aws_iot_certificate/CLAUDE.md +0 -361
  1194. data/lib/pangea/resources/aws_iot_certificate/resource.rb +0 -93
  1195. data/lib/pangea/resources/aws_iot_certificate/types.rb +0 -238
  1196. data/lib/pangea/resources/aws_iot_certificate.rbs +0 -31
  1197. data/lib/pangea/resources/aws_iot_device_defender_security_profile/CLAUDE.md +0 -3
  1198. data/lib/pangea/resources/aws_iot_device_defender_security_profile/resource.rb +0 -77
  1199. data/lib/pangea/resources/aws_iot_device_defender_security_profile/types.rb +0 -56
  1200. data/lib/pangea/resources/aws_iot_device_defender_security_profile.rbs +0 -14
  1201. data/lib/pangea/resources/aws_iot_domain_configuration/resource.rb +0 -123
  1202. data/lib/pangea/resources/aws_iot_domain_configuration/types.rb +0 -111
  1203. data/lib/pangea/resources/aws_iot_job_template/resource.rb +0 -134
  1204. data/lib/pangea/resources/aws_iot_job_template/types.rb +0 -122
  1205. data/lib/pangea/resources/aws_iot_policy/CLAUDE.md +0 -27
  1206. data/lib/pangea/resources/aws_iot_policy/resource.rb +0 -63
  1207. data/lib/pangea/resources/aws_iot_policy/types.rb +0 -136
  1208. data/lib/pangea/resources/aws_iot_policy.rbs +0 -18
  1209. data/lib/pangea/resources/aws_iot_policy_attachment/resource.rb +0 -98
  1210. data/lib/pangea/resources/aws_iot_policy_attachment/types.rb +0 -54
  1211. data/lib/pangea/resources/aws_iot_provisioning_template/resource.rb +0 -133
  1212. data/lib/pangea/resources/aws_iot_provisioning_template/types.rb +0 -89
  1213. data/lib/pangea/resources/aws_iot_role_alias/resource.rb +0 -98
  1214. data/lib/pangea/resources/aws_iot_role_alias/types.rb +0 -66
  1215. data/lib/pangea/resources/aws_iot_security_profile/CLAUDE.md +0 -3
  1216. data/lib/pangea/resources/aws_iot_security_profile/resource.rb +0 -89
  1217. data/lib/pangea/resources/aws_iot_security_profile/types.rb +0 -53
  1218. data/lib/pangea/resources/aws_iot_security_profile.rbs +0 -14
  1219. data/lib/pangea/resources/aws_iot_thing/CLAUDE.md +0 -397
  1220. data/lib/pangea/resources/aws_iot_thing/resource.rb +0 -87
  1221. data/lib/pangea/resources/aws_iot_thing/types.rb +0 -139
  1222. data/lib/pangea/resources/aws_iot_thing.rbs +0 -27
  1223. data/lib/pangea/resources/aws_iot_thing_group/resource.rb +0 -125
  1224. data/lib/pangea/resources/aws_iot_thing_group/types.rb +0 -100
  1225. data/lib/pangea/resources/aws_iot_thing_group_membership/resource.rb +0 -78
  1226. data/lib/pangea/resources/aws_iot_thing_group_membership/types.rb +0 -57
  1227. data/lib/pangea/resources/aws_iot_thing_principal_attachment/resource.rb +0 -91
  1228. data/lib/pangea/resources/aws_iot_thing_principal_attachment/types.rb +0 -54
  1229. data/lib/pangea/resources/aws_iot_thing_type/CLAUDE.md +0 -526
  1230. data/lib/pangea/resources/aws_iot_thing_type/resource.rb +0 -100
  1231. data/lib/pangea/resources/aws_iot_thing_type/types.rb +0 -242
  1232. data/lib/pangea/resources/aws_iot_thing_type.rbs +0 -31
  1233. data/lib/pangea/resources/aws_iot_topic_rule/CLAUDE.md +0 -11
  1234. data/lib/pangea/resources/aws_iot_topic_rule/resource.rb +0 -81
  1235. data/lib/pangea/resources/aws_iot_topic_rule/types.rb +0 -53
  1236. data/lib/pangea/resources/aws_iot_topic_rule.rbs +0 -13
  1237. data/lib/pangea/resources/aws_iot_topic_rule_destination/CLAUDE.md +0 -5
  1238. data/lib/pangea/resources/aws_iot_topic_rule_destination/resource.rb +0 -66
  1239. data/lib/pangea/resources/aws_iot_topic_rule_destination/types.rb +0 -46
  1240. data/lib/pangea/resources/aws_iot_topic_rule_destination.rbs +0 -13
  1241. data/lib/pangea/resources/aws_iot_wireless_destination/resource.rb +0 -82
  1242. data/lib/pangea/resources/aws_iot_wireless_destination/types.rb +0 -65
  1243. data/lib/pangea/resources/aws_iotanalytics_dataset/resource.rb +0 -213
  1244. data/lib/pangea/resources/aws_iotanalytics_dataset/types.rb +0 -220
  1245. data/lib/pangea/resources/aws_key_pair/CLAUDE.md +0 -357
  1246. data/lib/pangea/resources/aws_key_pair/resource.rb +0 -88
  1247. data/lib/pangea/resources/aws_key_pair/types.rb +0 -175
  1248. data/lib/pangea/resources/aws_kinesis_analytics_application/CLAUDE.md +0 -630
  1249. data/lib/pangea/resources/aws_kinesis_analytics_application/resource.rb +0 -309
  1250. data/lib/pangea/resources/aws_kinesis_analytics_application/types.rb +0 -319
  1251. data/lib/pangea/resources/aws_kinesis_analytics_application/types.rbs +0 -45
  1252. data/lib/pangea/resources/aws_kinesis_firehose_delivery_stream/CLAUDE.md +0 -532
  1253. data/lib/pangea/resources/aws_kinesis_firehose_delivery_stream/resource.rb +0 -288
  1254. data/lib/pangea/resources/aws_kinesis_firehose_delivery_stream/types.rb +0 -305
  1255. data/lib/pangea/resources/aws_kinesis_firehose_delivery_stream/types.rbs +0 -44
  1256. data/lib/pangea/resources/aws_kinesis_stream/CLAUDE.md +0 -255
  1257. data/lib/pangea/resources/aws_kinesis_stream/resource.rb +0 -106
  1258. data/lib/pangea/resources/aws_kinesis_stream/types.rb +0 -160
  1259. data/lib/pangea/resources/aws_kinesis_stream/types.rbs +0 -43
  1260. data/lib/pangea/resources/aws_kinesis_video_stream/CLAUDE.md +0 -595
  1261. data/lib/pangea/resources/aws_kinesis_video_stream/resource.rb +0 -76
  1262. data/lib/pangea/resources/aws_kinesis_video_stream/types.rb +0 -229
  1263. data/lib/pangea/resources/aws_kinesis_video_stream/types.rbs +0 -48
  1264. data/lib/pangea/resources/aws_kms_alias/resource.rb +0 -68
  1265. data/lib/pangea/resources/aws_kms_alias/types.rb +0 -131
  1266. data/lib/pangea/resources/aws_kms_key/resource.rb +0 -110
  1267. data/lib/pangea/resources/aws_kms_key/types.rb +0 -119
  1268. data/lib/pangea/resources/aws_lambda_event_source_mapping/CLAUDE.md +0 -316
  1269. data/lib/pangea/resources/aws_lambda_event_source_mapping/resource.rb +0 -155
  1270. data/lib/pangea/resources/aws_lambda_event_source_mapping/types.rb +0 -201
  1271. data/lib/pangea/resources/aws_lambda_function/CLAUDE.md +0 -255
  1272. data/lib/pangea/resources/aws_lambda_function/resource.rb +0 -210
  1273. data/lib/pangea/resources/aws_lambda_function/types.rb +0 -217
  1274. data/lib/pangea/resources/aws_lambda_function_url/resource.rb +0 -89
  1275. data/lib/pangea/resources/aws_lambda_function_url/types.rb +0 -103
  1276. data/lib/pangea/resources/aws_lambda_layer_version/CLAUDE.md +0 -322
  1277. data/lib/pangea/resources/aws_lambda_layer_version/resource.rb +0 -88
  1278. data/lib/pangea/resources/aws_lambda_layer_version/types.rb +0 -159
  1279. data/lib/pangea/resources/aws_lambda_permission/CLAUDE.md +0 -276
  1280. data/lib/pangea/resources/aws_lambda_permission/resource.rb +0 -76
  1281. data/lib/pangea/resources/aws_lambda_permission/types.rb +0 -117
  1282. data/lib/pangea/resources/aws_launch_configuration/resource.rb +0 -67
  1283. data/lib/pangea/resources/aws_launch_configuration/types.rb +0 -46
  1284. data/lib/pangea/resources/aws_launch_template/CLAUDE.md +0 -269
  1285. data/lib/pangea/resources/aws_launch_template/resource.rb +0 -198
  1286. data/lib/pangea/resources/aws_launch_template/types.rb +0 -211
  1287. data/lib/pangea/resources/aws_lb/CLAUDE.md +0 -411
  1288. data/lib/pangea/resources/aws_lb/resource.rb +0 -111
  1289. data/lib/pangea/resources/aws_lb/types.rb +0 -80
  1290. data/lib/pangea/resources/aws_lb_cookie_stickiness_policy/resource.rb +0 -67
  1291. data/lib/pangea/resources/aws_lb_cookie_stickiness_policy/types.rb +0 -46
  1292. data/lib/pangea/resources/aws_lb_listener/CLAUDE.md +0 -310
  1293. data/lib/pangea/resources/aws_lb_listener/resource.rb +0 -187
  1294. data/lib/pangea/resources/aws_lb_listener/types.rb +0 -125
  1295. data/lib/pangea/resources/aws_lb_listener/types.rbs +0 -23
  1296. data/lib/pangea/resources/aws_lb_listener_certificate/CLAUDE.md +0 -463
  1297. data/lib/pangea/resources/aws_lb_listener_certificate/resource.rb +0 -56
  1298. data/lib/pangea/resources/aws_lb_listener_certificate/types.rb +0 -54
  1299. data/lib/pangea/resources/aws_lb_listener_certificate/types.rbs +0 -17
  1300. data/lib/pangea/resources/aws_lb_listener_rule/CLAUDE.md +0 -502
  1301. data/lib/pangea/resources/aws_lb_listener_rule/resource.rb +0 -210
  1302. data/lib/pangea/resources/aws_lb_listener_rule/types.rb +0 -123
  1303. data/lib/pangea/resources/aws_lb_listener_rule/types.rbs +0 -20
  1304. data/lib/pangea/resources/aws_lb_ssl_negotiation_policy/resource.rb +0 -67
  1305. data/lib/pangea/resources/aws_lb_ssl_negotiation_policy/types.rb +0 -46
  1306. data/lib/pangea/resources/aws_lb_target_group/CLAUDE.md +0 -271
  1307. data/lib/pangea/resources/aws_lb_target_group/resource.rb +0 -159
  1308. data/lib/pangea/resources/aws_lb_target_group/types.rb +0 -201
  1309. data/lib/pangea/resources/aws_lb_target_group_attachment/CLAUDE.md +0 -560
  1310. data/lib/pangea/resources/aws_lb_target_group_attachment/resource.rb +0 -67
  1311. data/lib/pangea/resources/aws_lb_target_group_attachment/types.rb +0 -46
  1312. data/lib/pangea/resources/aws_lb_target_group_attachment/types.rbs +0 -21
  1313. data/lib/pangea/resources/aws_lb_trust_store/resource.rb +0 -67
  1314. data/lib/pangea/resources/aws_lb_trust_store/types.rb +0 -46
  1315. data/lib/pangea/resources/aws_lb_trust_store_revocation/resource.rb +0 -67
  1316. data/lib/pangea/resources/aws_lb_trust_store_revocation/types.rb +0 -46
  1317. data/lib/pangea/resources/aws_licensemanager_association/CLAUDE.md +0 -96
  1318. data/lib/pangea/resources/aws_licensemanager_association/resource.rb +0 -68
  1319. data/lib/pangea/resources/aws_licensemanager_association/types.rb +0 -49
  1320. data/lib/pangea/resources/aws_licensemanager_grant/CLAUDE.md +0 -96
  1321. data/lib/pangea/resources/aws_licensemanager_grant/resource.rb +0 -74
  1322. data/lib/pangea/resources/aws_licensemanager_grant/types.rb +0 -52
  1323. data/lib/pangea/resources/aws_licensemanager_grant_accepter/CLAUDE.md +0 -96
  1324. data/lib/pangea/resources/aws_licensemanager_grant_accepter/resource.rb +0 -74
  1325. data/lib/pangea/resources/aws_licensemanager_grant_accepter/types.rb +0 -48
  1326. data/lib/pangea/resources/aws_licensemanager_license_configuration/CLAUDE.md +0 -96
  1327. data/lib/pangea/resources/aws_licensemanager_license_configuration/resource.rb +0 -74
  1328. data/lib/pangea/resources/aws_licensemanager_license_configuration/types.rb +0 -53
  1329. data/lib/pangea/resources/aws_licensemanager_license_grant_accepter/CLAUDE.md +0 -96
  1330. data/lib/pangea/resources/aws_licensemanager_license_grant_accepter/resource.rb +0 -68
  1331. data/lib/pangea/resources/aws_licensemanager_license_grant_accepter/types.rb +0 -48
  1332. data/lib/pangea/resources/aws_licensemanager_report_generator/CLAUDE.md +0 -96
  1333. data/lib/pangea/resources/aws_licensemanager_report_generator/resource.rb +0 -73
  1334. data/lib/pangea/resources/aws_licensemanager_report_generator/types.rb +0 -53
  1335. data/lib/pangea/resources/aws_licensemanager_token/CLAUDE.md +0 -96
  1336. data/lib/pangea/resources/aws_licensemanager_token/resource.rb +0 -71
  1337. data/lib/pangea/resources/aws_licensemanager_token/types.rb +0 -50
  1338. data/lib/pangea/resources/aws_lightsail.rb +0 -524
  1339. data/lib/pangea/resources/aws_load_balancer_backend_server_policy/resource.rb +0 -67
  1340. data/lib/pangea/resources/aws_load_balancer_backend_server_policy/types.rb +0 -46
  1341. data/lib/pangea/resources/aws_load_balancer_listener_policy/resource.rb +0 -67
  1342. data/lib/pangea/resources/aws_load_balancer_listener_policy/types.rb +0 -46
  1343. data/lib/pangea/resources/aws_load_balancer_policy/resource.rb +0 -67
  1344. data/lib/pangea/resources/aws_load_balancer_policy/types.rb +0 -46
  1345. data/lib/pangea/resources/aws_local_zones.rb +0 -223
  1346. data/lib/pangea/resources/aws_managedblockchain_accessor/resource.rb +0 -86
  1347. data/lib/pangea/resources/aws_managedblockchain_accessor/types.rb +0 -249
  1348. data/lib/pangea/resources/aws_managedblockchain_ethereum_node/resource.rb +0 -97
  1349. data/lib/pangea/resources/aws_managedblockchain_ethereum_node/types.rb +0 -349
  1350. data/lib/pangea/resources/aws_managedblockchain_member/CLAUDE.md +0 -478
  1351. data/lib/pangea/resources/aws_managedblockchain_member/resource.rb +0 -127
  1352. data/lib/pangea/resources/aws_managedblockchain_member/types.rb +0 -225
  1353. data/lib/pangea/resources/aws_managedblockchain_network/CLAUDE.md +0 -487
  1354. data/lib/pangea/resources/aws_managedblockchain_network/resource.rb +0 -160
  1355. data/lib/pangea/resources/aws_managedblockchain_network/types.rb +0 -262
  1356. data/lib/pangea/resources/aws_managedblockchain_node/CLAUDE.md +0 -505
  1357. data/lib/pangea/resources/aws_managedblockchain_node/resource.rb +0 -129
  1358. data/lib/pangea/resources/aws_managedblockchain_node/types.rb +0 -252
  1359. data/lib/pangea/resources/aws_media_convert_queue/resource.rb +0 -74
  1360. data/lib/pangea/resources/aws_media_convert_queue/types.rb +0 -71
  1361. data/lib/pangea/resources/aws_media_live_channel/CLAUDE.md +0 -881
  1362. data/lib/pangea/resources/aws_media_live_channel/resource.rb +0 -594
  1363. data/lib/pangea/resources/aws_media_live_channel/types.rb +0 -1002
  1364. data/lib/pangea/resources/aws_media_live_input/CLAUDE.md +0 -729
  1365. data/lib/pangea/resources/aws_media_live_input/resource.rb +0 -169
  1366. data/lib/pangea/resources/aws_media_live_input/types.rb +0 -247
  1367. data/lib/pangea/resources/aws_media_package_channel/CLAUDE.md +0 -698
  1368. data/lib/pangea/resources/aws_media_package_channel/resource.rb +0 -74
  1369. data/lib/pangea/resources/aws_media_package_channel/types.rb +0 -107
  1370. data/lib/pangea/resources/aws_media_package_origin_endpoint/resource.rb +0 -190
  1371. data/lib/pangea/resources/aws_media_package_origin_endpoint/types.rb +0 -197
  1372. data/lib/pangea/resources/aws_media_store_container/resource.rb +0 -60
  1373. data/lib/pangea/resources/aws_media_store_container/types.rb +0 -55
  1374. data/lib/pangea/resources/aws_memorydb_acl/CLAUDE.md +0 -96
  1375. data/lib/pangea/resources/aws_memorydb_acl/resource.rb +0 -70
  1376. data/lib/pangea/resources/aws_memorydb_acl/types.rb +0 -49
  1377. data/lib/pangea/resources/aws_memorydb_cluster/CLAUDE.md +0 -96
  1378. data/lib/pangea/resources/aws_memorydb_cluster/resource.rb +0 -93
  1379. data/lib/pangea/resources/aws_memorydb_cluster/types.rb +0 -69
  1380. data/lib/pangea/resources/aws_memorydb_cluster_endpoint/CLAUDE.md +0 -96
  1381. data/lib/pangea/resources/aws_memorydb_cluster_endpoint/resource.rb +0 -69
  1382. data/lib/pangea/resources/aws_memorydb_cluster_endpoint/types.rb +0 -48
  1383. data/lib/pangea/resources/aws_memorydb_multi_region_cluster/CLAUDE.md +0 -96
  1384. data/lib/pangea/resources/aws_memorydb_multi_region_cluster/resource.rb +0 -75
  1385. data/lib/pangea/resources/aws_memorydb_multi_region_cluster/types.rb +0 -53
  1386. data/lib/pangea/resources/aws_memorydb_parameter_group/CLAUDE.md +0 -96
  1387. data/lib/pangea/resources/aws_memorydb_parameter_group/resource.rb +0 -71
  1388. data/lib/pangea/resources/aws_memorydb_parameter_group/types.rb +0 -51
  1389. data/lib/pangea/resources/aws_memorydb_snapshot/CLAUDE.md +0 -96
  1390. data/lib/pangea/resources/aws_memorydb_snapshot/resource.rb +0 -73
  1391. data/lib/pangea/resources/aws_memorydb_snapshot/types.rb +0 -51
  1392. data/lib/pangea/resources/aws_memorydb_subnet_group/CLAUDE.md +0 -96
  1393. data/lib/pangea/resources/aws_memorydb_subnet_group/resource.rb +0 -71
  1394. data/lib/pangea/resources/aws_memorydb_subnet_group/types.rb +0 -50
  1395. data/lib/pangea/resources/aws_memorydb_user/CLAUDE.md +0 -96
  1396. data/lib/pangea/resources/aws_memorydb_user/resource.rb +0 -71
  1397. data/lib/pangea/resources/aws_memorydb_user/types.rb +0 -50
  1398. data/lib/pangea/resources/aws_minimal.rb +0 -302
  1399. data/lib/pangea/resources/aws_mobile_analytics_app/CLAUDE.md +0 -262
  1400. data/lib/pangea/resources/aws_mobile_analytics_app/resource.rb +0 -77
  1401. data/lib/pangea/resources/aws_mobile_analytics_app/types.rb +0 -47
  1402. data/lib/pangea/resources/aws_mobile_analytics_app.rbs +0 -30
  1403. data/lib/pangea/resources/aws_mq_broker/resource.rb +0 -157
  1404. data/lib/pangea/resources/aws_mq_broker/types.rb +0 -181
  1405. data/lib/pangea/resources/aws_mq_broker.rbs +0 -130
  1406. data/lib/pangea/resources/aws_mq_configuration/resource.rb +0 -75
  1407. data/lib/pangea/resources/aws_mq_configuration/types.rb +0 -88
  1408. data/lib/pangea/resources/aws_mq_configuration.rbs +0 -36
  1409. data/lib/pangea/resources/aws_nat_gateway/CLAUDE.md +0 -209
  1410. data/lib/pangea/resources/aws_nat_gateway/resource.rb +0 -97
  1411. data/lib/pangea/resources/aws_nat_gateway/types.rb +0 -80
  1412. data/lib/pangea/resources/aws_neptune_cluster/CLAUDE.md +0 -96
  1413. data/lib/pangea/resources/aws_neptune_cluster/resource.rb +0 -98
  1414. data/lib/pangea/resources/aws_neptune_cluster/types.rb +0 -70
  1415. data/lib/pangea/resources/aws_neptune_cluster_endpoint/CLAUDE.md +0 -96
  1416. data/lib/pangea/resources/aws_neptune_cluster_endpoint/resource.rb +0 -71
  1417. data/lib/pangea/resources/aws_neptune_cluster_endpoint/types.rb +0 -50
  1418. data/lib/pangea/resources/aws_neptune_cluster_instance/CLAUDE.md +0 -96
  1419. data/lib/pangea/resources/aws_neptune_cluster_instance/resource.rb +0 -85
  1420. data/lib/pangea/resources/aws_neptune_cluster_instance/types.rb +0 -58
  1421. data/lib/pangea/resources/aws_neptune_cluster_parameter_group/CLAUDE.md +0 -96
  1422. data/lib/pangea/resources/aws_neptune_cluster_parameter_group/resource.rb +0 -71
  1423. data/lib/pangea/resources/aws_neptune_cluster_parameter_group/types.rb +0 -51
  1424. data/lib/pangea/resources/aws_neptune_cluster_snapshot/CLAUDE.md +0 -96
  1425. data/lib/pangea/resources/aws_neptune_cluster_snapshot/resource.rb +0 -78
  1426. data/lib/pangea/resources/aws_neptune_cluster_snapshot/types.rb +0 -49
  1427. data/lib/pangea/resources/aws_neptune_event_subscription/CLAUDE.md +0 -96
  1428. data/lib/pangea/resources/aws_neptune_event_subscription/resource.rb +0 -74
  1429. data/lib/pangea/resources/aws_neptune_event_subscription/types.rb +0 -53
  1430. data/lib/pangea/resources/aws_neptune_parameter_group/CLAUDE.md +0 -96
  1431. data/lib/pangea/resources/aws_neptune_parameter_group/resource.rb +0 -71
  1432. data/lib/pangea/resources/aws_neptune_parameter_group/types.rb +0 -51
  1433. data/lib/pangea/resources/aws_neptune_subnet_group/CLAUDE.md +0 -96
  1434. data/lib/pangea/resources/aws_neptune_subnet_group/resource.rb +0 -70
  1435. data/lib/pangea/resources/aws_neptune_subnet_group/types.rb +0 -50
  1436. data/lib/pangea/resources/aws_network_acl/CLAUDE.md +0 -96
  1437. data/lib/pangea/resources/aws_network_acl/resource.rb +0 -77
  1438. data/lib/pangea/resources/aws_network_acl/types.rb +0 -147
  1439. data/lib/pangea/resources/aws_network_acl_rule/CLAUDE.md +0 -297
  1440. data/lib/pangea/resources/aws_network_acl_rule/resource.rb +0 -92
  1441. data/lib/pangea/resources/aws_network_acl_rule/types.rb +0 -158
  1442. data/lib/pangea/resources/aws_network_interface/CLAUDE.md +0 -310
  1443. data/lib/pangea/resources/aws_network_interface/resource.rb +0 -121
  1444. data/lib/pangea/resources/aws_network_interface/types.rb +0 -108
  1445. data/lib/pangea/resources/aws_organizations_account/resource.rb +0 -69
  1446. data/lib/pangea/resources/aws_organizations_account/types.rb +0 -85
  1447. data/lib/pangea/resources/aws_organizations_account.rbs +0 -10
  1448. data/lib/pangea/resources/aws_organizations_delegated_administrator/resource.rb +0 -82
  1449. data/lib/pangea/resources/aws_organizations_organization/resource.rb +0 -60
  1450. data/lib/pangea/resources/aws_organizations_organization/types.rb +0 -77
  1451. data/lib/pangea/resources/aws_organizations_organization.rbs +0 -10
  1452. data/lib/pangea/resources/aws_organizations_resource_policy/resource.rb +0 -99
  1453. data/lib/pangea/resources/aws_outposts.rb +0 -351
  1454. data/lib/pangea/resources/aws_pinpoint_app/CLAUDE.md +0 -363
  1455. data/lib/pangea/resources/aws_pinpoint_app/resource.rb +0 -84
  1456. data/lib/pangea/resources/aws_pinpoint_app/types.rb +0 -91
  1457. data/lib/pangea/resources/aws_pinpoint_app.rbs +0 -55
  1458. data/lib/pangea/resources/aws_placement_group/resource.rb +0 -67
  1459. data/lib/pangea/resources/aws_placement_group/types.rb +0 -46
  1460. data/lib/pangea/resources/aws_proxy_protocol_policy/resource.rb +0 -67
  1461. data/lib/pangea/resources/aws_proxy_protocol_policy/types.rb +0 -46
  1462. data/lib/pangea/resources/aws_qldb_ledger/CLAUDE.md +0 -734
  1463. data/lib/pangea/resources/aws_qldb_ledger/resource.rb +0 -89
  1464. data/lib/pangea/resources/aws_qldb_ledger/types.rb +0 -173
  1465. data/lib/pangea/resources/aws_qldb_stream/CLAUDE.md +0 -845
  1466. data/lib/pangea/resources/aws_qldb_stream/resource.rb +0 -101
  1467. data/lib/pangea/resources/aws_qldb_stream/types.rb +0 -222
  1468. data/lib/pangea/resources/aws_ram_invitation_accepter/CLAUDE.md +0 -96
  1469. data/lib/pangea/resources/aws_ram_invitation_accepter/resource.rb +0 -72
  1470. data/lib/pangea/resources/aws_ram_invitation_accepter/types.rb +0 -48
  1471. data/lib/pangea/resources/aws_ram_managed_permission/CLAUDE.md +0 -96
  1472. data/lib/pangea/resources/aws_ram_managed_permission/resource.rb +0 -75
  1473. data/lib/pangea/resources/aws_ram_managed_permission/types.rb +0 -49
  1474. data/lib/pangea/resources/aws_ram_permission/CLAUDE.md +0 -96
  1475. data/lib/pangea/resources/aws_ram_permission/resource.rb +0 -75
  1476. data/lib/pangea/resources/aws_ram_permission/types.rb +0 -50
  1477. data/lib/pangea/resources/aws_ram_permission_association/CLAUDE.md +0 -96
  1478. data/lib/pangea/resources/aws_ram_permission_association/resource.rb +0 -69
  1479. data/lib/pangea/resources/aws_ram_permission_association/types.rb +0 -50
  1480. data/lib/pangea/resources/aws_ram_principal_association/CLAUDE.md +0 -96
  1481. data/lib/pangea/resources/aws_ram_principal_association/resource.rb +0 -68
  1482. data/lib/pangea/resources/aws_ram_principal_association/types.rb +0 -49
  1483. data/lib/pangea/resources/aws_ram_resource_association/CLAUDE.md +0 -96
  1484. data/lib/pangea/resources/aws_ram_resource_association/resource.rb +0 -68
  1485. data/lib/pangea/resources/aws_ram_resource_association/types.rb +0 -49
  1486. data/lib/pangea/resources/aws_ram_resource_share/CLAUDE.md +0 -96
  1487. data/lib/pangea/resources/aws_ram_resource_share/resource.rb +0 -71
  1488. data/lib/pangea/resources/aws_ram_resource_share/types.rb +0 -50
  1489. data/lib/pangea/resources/aws_ram_resource_share_accepter/CLAUDE.md +0 -96
  1490. data/lib/pangea/resources/aws_ram_resource_share_accepter/resource.rb +0 -71
  1491. data/lib/pangea/resources/aws_ram_resource_share_accepter/types.rb +0 -48
  1492. data/lib/pangea/resources/aws_ram_resource_share_invitation/CLAUDE.md +0 -96
  1493. data/lib/pangea/resources/aws_ram_resource_share_invitation/resource.rb +0 -73
  1494. data/lib/pangea/resources/aws_ram_resource_share_invitation/types.rb +0 -49
  1495. data/lib/pangea/resources/aws_ram_sharing_with_organization/CLAUDE.md +0 -96
  1496. data/lib/pangea/resources/aws_ram_sharing_with_organization/resource.rb +0 -67
  1497. data/lib/pangea/resources/aws_ram_sharing_with_organization/types.rb +0 -48
  1498. data/lib/pangea/resources/aws_rds_cluster/CLAUDE.md +0 -361
  1499. data/lib/pangea/resources/aws_rds_cluster/resource.rb +0 -189
  1500. data/lib/pangea/resources/aws_rds_cluster/types.rb +0 -464
  1501. data/lib/pangea/resources/aws_rds_cluster_endpoint/CLAUDE.md +0 -279
  1502. data/lib/pangea/resources/aws_rds_cluster_endpoint/resource.rb +0 -96
  1503. data/lib/pangea/resources/aws_rds_cluster_endpoint/types.rb +0 -254
  1504. data/lib/pangea/resources/aws_rds_cluster_endpoint/types.rbs +0 -59
  1505. data/lib/pangea/resources/aws_rds_cluster_instance/CLAUDE.md +0 -378
  1506. data/lib/pangea/resources/aws_rds_cluster_instance/resource.rb +0 -143
  1507. data/lib/pangea/resources/aws_rds_cluster_instance/types.rb +0 -437
  1508. data/lib/pangea/resources/aws_rds_cluster_parameter_group/CLAUDE.md +0 -344
  1509. data/lib/pangea/resources/aws_rds_cluster_parameter_group/resource.rb +0 -96
  1510. data/lib/pangea/resources/aws_rds_cluster_parameter_group/types.rb +0 -361
  1511. data/lib/pangea/resources/aws_rds_cluster_parameter_group/types.rbs +0 -65
  1512. data/lib/pangea/resources/aws_rds_global_cluster/CLAUDE.md +0 -362
  1513. data/lib/pangea/resources/aws_rds_global_cluster/resource.rb +0 -123
  1514. data/lib/pangea/resources/aws_rds_global_cluster/types.rb +0 -425
  1515. data/lib/pangea/resources/aws_rds_global_cluster/types.rbs +0 -84
  1516. data/lib/pangea/resources/aws_rds_proxy/resource.rb +0 -113
  1517. data/lib/pangea/resources/aws_rds_proxy/types.rb +0 -410
  1518. data/lib/pangea/resources/aws_rds_proxy_default_target_group/resource.rb +0 -72
  1519. data/lib/pangea/resources/aws_rds_proxy_default_target_group/types.rb +0 -121
  1520. data/lib/pangea/resources/aws_rds_proxy_target/resource.rb +0 -74
  1521. data/lib/pangea/resources/aws_rds_proxy_target/types.rb +0 -106
  1522. data/lib/pangea/resources/aws_redshift_cluster/CLAUDE.md +0 -358
  1523. data/lib/pangea/resources/aws_redshift_cluster/resource.rb +0 -151
  1524. data/lib/pangea/resources/aws_redshift_cluster/types.rb +0 -323
  1525. data/lib/pangea/resources/aws_redshift_cluster/types.rbs +0 -65
  1526. data/lib/pangea/resources/aws_redshift_cluster.rbs +0 -10
  1527. data/lib/pangea/resources/aws_redshift_parameter_group/CLAUDE.md +0 -352
  1528. data/lib/pangea/resources/aws_redshift_parameter_group/resource.rb +0 -87
  1529. data/lib/pangea/resources/aws_redshift_parameter_group/types.rb +0 -214
  1530. data/lib/pangea/resources/aws_redshift_parameter_group/types.rbs +0 -42
  1531. data/lib/pangea/resources/aws_redshift_parameter_group.rbs +0 -10
  1532. data/lib/pangea/resources/aws_redshift_snapshot_schedule/CLAUDE.md +0 -395
  1533. data/lib/pangea/resources/aws_redshift_snapshot_schedule/resource.rb +0 -81
  1534. data/lib/pangea/resources/aws_redshift_snapshot_schedule/types.rb +0 -229
  1535. data/lib/pangea/resources/aws_redshift_snapshot_schedule/types.rbs +0 -41
  1536. data/lib/pangea/resources/aws_redshift_snapshot_schedule.rbs +0 -10
  1537. data/lib/pangea/resources/aws_redshift_subnet_group/CLAUDE.md +0 -274
  1538. data/lib/pangea/resources/aws_redshift_subnet_group/resource.rb +0 -77
  1539. data/lib/pangea/resources/aws_redshift_subnet_group/types.rb +0 -142
  1540. data/lib/pangea/resources/aws_redshift_subnet_group/types.rbs +0 -33
  1541. data/lib/pangea/resources/aws_redshift_subnet_group.rbs +0 -10
  1542. data/lib/pangea/resources/aws_resource_explorer_index/resource.rb +0 -81
  1543. data/lib/pangea/resources/aws_resource_explorer_view/resource.rb +0 -126
  1544. data/lib/pangea/resources/aws_resourcegroups_group/resource.rb +0 -167
  1545. data/lib/pangea/resources/aws_resources.rb +0 -351
  1546. data/lib/pangea/resources/aws_resources_minimal.rb +0 -32
  1547. data/lib/pangea/resources/aws_route/CLAUDE.md +0 -96
  1548. data/lib/pangea/resources/aws_route/resource.rb +0 -83
  1549. data/lib/pangea/resources/aws_route/types.rb +0 -122
  1550. data/lib/pangea/resources/aws_route53_delegation_set/resource.rb +0 -73
  1551. data/lib/pangea/resources/aws_route53_delegation_set/types.rb +0 -133
  1552. data/lib/pangea/resources/aws_route53_delegation_set.rbs +0 -28
  1553. data/lib/pangea/resources/aws_route53_health_check/CLAUDE.md +0 -408
  1554. data/lib/pangea/resources/aws_route53_health_check/resource.rb +0 -132
  1555. data/lib/pangea/resources/aws_route53_health_check/types.rb +0 -387
  1556. data/lib/pangea/resources/aws_route53_query_log/resource.rb +0 -79
  1557. data/lib/pangea/resources/aws_route53_query_log/types.rb +0 -185
  1558. data/lib/pangea/resources/aws_route53_record/CLAUDE.md +0 -414
  1559. data/lib/pangea/resources/aws_route53_record/resource.rb +0 -138
  1560. data/lib/pangea/resources/aws_route53_record/types.rb +0 -408
  1561. data/lib/pangea/resources/aws_route53_zone/CLAUDE.md +0 -363
  1562. data/lib/pangea/resources/aws_route53_zone/resource.rb +0 -99
  1563. data/lib/pangea/resources/aws_route53_zone/types.rb +0 -260
  1564. data/lib/pangea/resources/aws_route_table/CLAUDE.md +0 -224
  1565. data/lib/pangea/resources/aws_route_table/resource.rb +0 -104
  1566. data/lib/pangea/resources/aws_route_table/types.rb +0 -107
  1567. data/lib/pangea/resources/aws_route_table_association/CLAUDE.md +0 -401
  1568. data/lib/pangea/resources/aws_route_table_association/resource.rb +0 -93
  1569. data/lib/pangea/resources/aws_route_table_association/types.rb +0 -94
  1570. data/lib/pangea/resources/aws_s3_access_point/CLAUDE.md +0 -211
  1571. data/lib/pangea/resources/aws_s3_access_point/resource.rb +0 -102
  1572. data/lib/pangea/resources/aws_s3_access_point/types.rb +0 -86
  1573. data/lib/pangea/resources/aws_s3_access_point_policy/resource.rb +0 -69
  1574. data/lib/pangea/resources/aws_s3_access_point_policy/types.rb +0 -65
  1575. data/lib/pangea/resources/aws_s3_bucket/CLAUDE.md +0 -140
  1576. data/lib/pangea/resources/aws_s3_bucket/resource.rb +0 -228
  1577. data/lib/pangea/resources/aws_s3_bucket/types.rb +0 -206
  1578. data/lib/pangea/resources/aws_s3_bucket_accelerate_configuration/resource.rb +0 -70
  1579. data/lib/pangea/resources/aws_s3_bucket_accelerate_configuration/types.rb +0 -65
  1580. data/lib/pangea/resources/aws_s3_bucket_analytics_configuration/resource.rb +0 -108
  1581. data/lib/pangea/resources/aws_s3_bucket_analytics_configuration/types.rb +0 -115
  1582. data/lib/pangea/resources/aws_s3_bucket_cors_configuration/CLAUDE.md +0 -262
  1583. data/lib/pangea/resources/aws_s3_bucket_cors_configuration/resource.rb +0 -97
  1584. data/lib/pangea/resources/aws_s3_bucket_cors_configuration/types.rb +0 -167
  1585. data/lib/pangea/resources/aws_s3_bucket_encryption/CLAUDE.md +0 -465
  1586. data/lib/pangea/resources/aws_s3_bucket_encryption/resource.rb +0 -78
  1587. data/lib/pangea/resources/aws_s3_bucket_encryption/types.rb +0 -114
  1588. data/lib/pangea/resources/aws_s3_bucket_inventory/CLAUDE.md +0 -430
  1589. data/lib/pangea/resources/aws_s3_bucket_inventory/resource.rb +0 -135
  1590. data/lib/pangea/resources/aws_s3_bucket_inventory/types.rb +0 -257
  1591. data/lib/pangea/resources/aws_s3_bucket_lifecycle_configuration/CLAUDE.md +0 -221
  1592. data/lib/pangea/resources/aws_s3_bucket_lifecycle_configuration/resource.rb +0 -158
  1593. data/lib/pangea/resources/aws_s3_bucket_lifecycle_configuration/types.rb +0 -214
  1594. data/lib/pangea/resources/aws_s3_bucket_notification/CLAUDE.md +0 -358
  1595. data/lib/pangea/resources/aws_s3_bucket_notification/resource.rb +0 -122
  1596. data/lib/pangea/resources/aws_s3_bucket_notification/types.rb +0 -224
  1597. data/lib/pangea/resources/aws_s3_bucket_object_lock_configuration/CLAUDE.md +0 -561
  1598. data/lib/pangea/resources/aws_s3_bucket_object_lock_configuration/resource.rb +0 -100
  1599. data/lib/pangea/resources/aws_s3_bucket_object_lock_configuration/types.rb +0 -241
  1600. data/lib/pangea/resources/aws_s3_bucket_policy/CLAUDE.md +0 -234
  1601. data/lib/pangea/resources/aws_s3_bucket_policy/resource.rb +0 -66
  1602. data/lib/pangea/resources/aws_s3_bucket_policy/types.rb +0 -93
  1603. data/lib/pangea/resources/aws_s3_bucket_public_access_block/CLAUDE.md +0 -528
  1604. data/lib/pangea/resources/aws_s3_bucket_public_access_block/resource.rb +0 -77
  1605. data/lib/pangea/resources/aws_s3_bucket_public_access_block/types.rb +0 -92
  1606. data/lib/pangea/resources/aws_s3_bucket_replication_configuration/CLAUDE.md +0 -628
  1607. data/lib/pangea/resources/aws_s3_bucket_replication_configuration/resource.rb +0 -200
  1608. data/lib/pangea/resources/aws_s3_bucket_replication_configuration/types.rb +0 -304
  1609. data/lib/pangea/resources/aws_s3_bucket_versioning/CLAUDE.md +0 -340
  1610. data/lib/pangea/resources/aws_s3_bucket_versioning/resource.rb +0 -72
  1611. data/lib/pangea/resources/aws_s3_bucket_versioning/types.rb +0 -77
  1612. data/lib/pangea/resources/aws_s3_bucket_website_configuration/CLAUDE.md +0 -355
  1613. data/lib/pangea/resources/aws_s3_bucket_website_configuration/resource.rb +0 -123
  1614. data/lib/pangea/resources/aws_s3_bucket_website_configuration/types.rb +0 -397
  1615. data/lib/pangea/resources/aws_s3_multi_region_access_point/resource.rb +0 -105
  1616. data/lib/pangea/resources/aws_s3_multi_region_access_point/types.rb +0 -101
  1617. data/lib/pangea/resources/aws_s3_object/CLAUDE.md +0 -535
  1618. data/lib/pangea/resources/aws_s3_object/resource.rb +0 -131
  1619. data/lib/pangea/resources/aws_s3_object/types.rb +0 -215
  1620. data/lib/pangea/resources/aws_s3_object_lambda_access_point/resource.rb +0 -97
  1621. data/lib/pangea/resources/aws_s3_object_lambda_access_point/types.rb +0 -106
  1622. data/lib/pangea/resources/aws_sagemaker_domain/CLAUDE.md +0 -253
  1623. data/lib/pangea/resources/aws_sagemaker_domain/resource.rb +0 -160
  1624. data/lib/pangea/resources/aws_sagemaker_domain/types.rb +0 -306
  1625. data/lib/pangea/resources/aws_sagemaker_domain.rbs +0 -39
  1626. data/lib/pangea/resources/aws_sagemaker_endpoint/resource.rb +0 -236
  1627. data/lib/pangea/resources/aws_sagemaker_endpoint/types.rb +0 -294
  1628. data/lib/pangea/resources/aws_sagemaker_endpoint_configuration/resource.rb +0 -232
  1629. data/lib/pangea/resources/aws_sagemaker_endpoint_configuration/types.rb +0 -359
  1630. data/lib/pangea/resources/aws_sagemaker_feature_group/resource.rb +0 -64
  1631. data/lib/pangea/resources/aws_sagemaker_feature_group/types.rb +0 -150
  1632. data/lib/pangea/resources/aws_sagemaker_model/resource.rb +0 -189
  1633. data/lib/pangea/resources/aws_sagemaker_model/types.rb +0 -330
  1634. data/lib/pangea/resources/aws_sagemaker_notebook_instance/resource.rb +0 -139
  1635. data/lib/pangea/resources/aws_sagemaker_notebook_instance/types.rb +0 -321
  1636. data/lib/pangea/resources/aws_sagemaker_notebook_instance.rbs +0 -52
  1637. data/lib/pangea/resources/aws_sagemaker_pipeline/resource.rb +0 -61
  1638. data/lib/pangea/resources/aws_sagemaker_pipeline/types.rb +0 -78
  1639. data/lib/pangea/resources/aws_sagemaker_processing_job/resource.rb +0 -61
  1640. data/lib/pangea/resources/aws_sagemaker_processing_job/types.rb +0 -140
  1641. data/lib/pangea/resources/aws_sagemaker_training_job/resource.rb +0 -69
  1642. data/lib/pangea/resources/aws_sagemaker_training_job/types.rb +0 -471
  1643. data/lib/pangea/resources/aws_sagemaker_user_profile/resource.rb +0 -198
  1644. data/lib/pangea/resources/aws_sagemaker_user_profile/types.rb +0 -330
  1645. data/lib/pangea/resources/aws_sagemaker_user_profile.rbs +0 -40
  1646. data/lib/pangea/resources/aws_secretsmanager_secret/CLAUDE.md +0 -528
  1647. data/lib/pangea/resources/aws_secretsmanager_secret/resource.rb +0 -111
  1648. data/lib/pangea/resources/aws_secretsmanager_secret/types.rb +0 -198
  1649. data/lib/pangea/resources/aws_secretsmanager_secret_version/resource.rb +0 -76
  1650. data/lib/pangea/resources/aws_secretsmanager_secret_version/types.rb +0 -99
  1651. data/lib/pangea/resources/aws_security_group/resource.rb +0 -78
  1652. data/lib/pangea/resources/aws_security_group/types.rb +0 -110
  1653. data/lib/pangea/resources/aws_securityhub_account/resource.rb +0 -74
  1654. data/lib/pangea/resources/aws_securityhub_account/types.rb +0 -61
  1655. data/lib/pangea/resources/aws_securityhub_account.rbs +0 -33
  1656. data/lib/pangea/resources/aws_securitylake_data_lake.rbs +0 -29
  1657. data/lib/pangea/resources/aws_ses_configuration_set/resource.rb +0 -70
  1658. data/lib/pangea/resources/aws_ses_configuration_set/types.rb +0 -75
  1659. data/lib/pangea/resources/aws_ses_configuration_set.rbs +0 -35
  1660. data/lib/pangea/resources/aws_ses_domain_identity/resource.rb +0 -57
  1661. data/lib/pangea/resources/aws_ses_domain_identity/types.rb +0 -61
  1662. data/lib/pangea/resources/aws_ses_domain_identity.rbs +0 -24
  1663. data/lib/pangea/resources/aws_ses_email_identity/resource.rb +0 -56
  1664. data/lib/pangea/resources/aws_ses_email_identity/types.rb +0 -73
  1665. data/lib/pangea/resources/aws_ses_email_identity.rbs +0 -24
  1666. data/lib/pangea/resources/aws_sfn_activity/CLAUDE.md +0 -571
  1667. data/lib/pangea/resources/aws_sfn_activity/resource.rb +0 -61
  1668. data/lib/pangea/resources/aws_sfn_activity/types.rb +0 -124
  1669. data/lib/pangea/resources/aws_sfn_state_machine/CLAUDE.md +0 -464
  1670. data/lib/pangea/resources/aws_sfn_state_machine/resource.rb +0 -92
  1671. data/lib/pangea/resources/aws_sfn_state_machine/types.rb +0 -347
  1672. data/lib/pangea/resources/aws_snow_family.rb +0 -401
  1673. data/lib/pangea/resources/aws_sns_subscription/CLAUDE.md +0 -289
  1674. data/lib/pangea/resources/aws_sns_subscription/resource.rb +0 -99
  1675. data/lib/pangea/resources/aws_sns_subscription/types.rb +0 -218
  1676. data/lib/pangea/resources/aws_sns_topic/CLAUDE.md +0 -249
  1677. data/lib/pangea/resources/aws_sns_topic/resource.rb +0 -126
  1678. data/lib/pangea/resources/aws_sns_topic/types.rb +0 -193
  1679. data/lib/pangea/resources/aws_sqs_queue/CLAUDE.md +0 -190
  1680. data/lib/pangea/resources/aws_sqs_queue/resource.rb +0 -114
  1681. data/lib/pangea/resources/aws_sqs_queue/types.rb +0 -169
  1682. data/lib/pangea/resources/aws_sqs_queue_policy/CLAUDE.md +0 -227
  1683. data/lib/pangea/resources/aws_sqs_queue_policy/resource.rb +0 -64
  1684. data/lib/pangea/resources/aws_sqs_queue_policy/types.rb +0 -115
  1685. data/lib/pangea/resources/aws_ssm_document/CLAUDE.md +0 -410
  1686. data/lib/pangea/resources/aws_ssm_document/resource.rb +0 -144
  1687. data/lib/pangea/resources/aws_ssm_document/types.rb +0 -417
  1688. data/lib/pangea/resources/aws_ssm_document/types.rbs +0 -49
  1689. data/lib/pangea/resources/aws_ssm_maintenance_window/CLAUDE.md +0 -412
  1690. data/lib/pangea/resources/aws_ssm_maintenance_window/resource.rb +0 -120
  1691. data/lib/pangea/resources/aws_ssm_maintenance_window/types.rb +0 -374
  1692. data/lib/pangea/resources/aws_ssm_maintenance_window/types.rbs +0 -49
  1693. data/lib/pangea/resources/aws_ssm_parameter/CLAUDE.md +0 -355
  1694. data/lib/pangea/resources/aws_ssm_parameter/resource.rb +0 -116
  1695. data/lib/pangea/resources/aws_ssm_parameter/types.rb +0 -287
  1696. data/lib/pangea/resources/aws_ssm_parameter/types.rbs +0 -47
  1697. data/lib/pangea/resources/aws_ssm_patch_baseline/CLAUDE.md +0 -509
  1698. data/lib/pangea/resources/aws_ssm_patch_baseline/resource.rb +0 -149
  1699. data/lib/pangea/resources/aws_ssm_patch_baseline/types.rb +0 -440
  1700. data/lib/pangea/resources/aws_ssm_patch_baseline/types.rbs +0 -51
  1701. data/lib/pangea/resources/aws_subnet/CLAUDE.md +0 -301
  1702. data/lib/pangea/resources/aws_subnet/resource.rb +0 -78
  1703. data/lib/pangea/resources/aws_subnet/types.rb +0 -67
  1704. data/lib/pangea/resources/aws_sumerian_project/resource.rb +0 -85
  1705. data/lib/pangea/resources/aws_sumerian_project/types.rb +0 -46
  1706. data/lib/pangea/resources/aws_support_app_slack_channel_configuration/resource.rb +0 -114
  1707. data/lib/pangea/resources/aws_support_app_slack_workspace_configuration/resource.rb +0 -73
  1708. data/lib/pangea/resources/aws_timestream_access_policy/CLAUDE.md +0 -96
  1709. data/lib/pangea/resources/aws_timestream_access_policy/resource.rb +0 -69
  1710. data/lib/pangea/resources/aws_timestream_access_policy/types.rb +0 -50
  1711. data/lib/pangea/resources/aws_timestream_batch_load_task/CLAUDE.md +0 -96
  1712. data/lib/pangea/resources/aws_timestream_batch_load_task/resource.rb +0 -77
  1713. data/lib/pangea/resources/aws_timestream_batch_load_task/types.rb +0 -54
  1714. data/lib/pangea/resources/aws_timestream_database/CLAUDE.md +0 -96
  1715. data/lib/pangea/resources/aws_timestream_database/resource.rb +0 -71
  1716. data/lib/pangea/resources/aws_timestream_database/types.rb +0 -49
  1717. data/lib/pangea/resources/aws_timestream_influx_db_instance/CLAUDE.md +0 -96
  1718. data/lib/pangea/resources/aws_timestream_influx_db_instance/resource.rb +0 -85
  1719. data/lib/pangea/resources/aws_timestream_influx_db_instance/types.rb +0 -61
  1720. data/lib/pangea/resources/aws_timestream_scheduled_query/CLAUDE.md +0 -96
  1721. data/lib/pangea/resources/aws_timestream_scheduled_query/resource.rb +0 -77
  1722. data/lib/pangea/resources/aws_timestream_scheduled_query/types.rb +0 -56
  1723. data/lib/pangea/resources/aws_timestream_table/CLAUDE.md +0 -96
  1724. data/lib/pangea/resources/aws_timestream_table/resource.rb +0 -73
  1725. data/lib/pangea/resources/aws_timestream_table/types.rb +0 -52
  1726. data/lib/pangea/resources/aws_timestream_table_retention_properties/CLAUDE.md +0 -96
  1727. data/lib/pangea/resources/aws_timestream_table_retention_properties/resource.rb +0 -70
  1728. data/lib/pangea/resources/aws_timestream_table_retention_properties/types.rb +0 -51
  1729. data/lib/pangea/resources/aws_volume_attachment/CLAUDE.md +0 -326
  1730. data/lib/pangea/resources/aws_volume_attachment/resource.rb +0 -77
  1731. data/lib/pangea/resources/aws_volume_attachment/types.rb +0 -176
  1732. data/lib/pangea/resources/aws_vpc/CLAUDE.md +0 -184
  1733. data/lib/pangea/resources/aws_vpc/resource.rb +0 -80
  1734. data/lib/pangea/resources/aws_vpc/types.rb +0 -94
  1735. data/lib/pangea/resources/aws_vpc_dhcp_options_association/resource.rb +0 -67
  1736. data/lib/pangea/resources/aws_vpc_dhcp_options_association/types.rb +0 -46
  1737. data/lib/pangea/resources/aws_vpc_endpoint/CLAUDE.md +0 -483
  1738. data/lib/pangea/resources/aws_vpc_endpoint/resource.rb +0 -126
  1739. data/lib/pangea/resources/aws_vpc_endpoint/types.rb +0 -132
  1740. data/lib/pangea/resources/aws_vpc_endpoint_connection_accepter/resource.rb +0 -67
  1741. data/lib/pangea/resources/aws_vpc_endpoint_connection_accepter/types.rb +0 -46
  1742. data/lib/pangea/resources/aws_vpc_endpoint_connection_notification/resource.rb +0 -73
  1743. data/lib/pangea/resources/aws_vpc_endpoint_connection_notification/types.rb +0 -50
  1744. data/lib/pangea/resources/aws_vpc_endpoint_route_table_association/resource.rb +0 -67
  1745. data/lib/pangea/resources/aws_vpc_endpoint_route_table_association/types.rb +0 -46
  1746. data/lib/pangea/resources/aws_vpc_endpoint_service/CLAUDE.md +0 -313
  1747. data/lib/pangea/resources/aws_vpc_endpoint_service/resource.rb +0 -127
  1748. data/lib/pangea/resources/aws_vpc_endpoint_service/types.rb +0 -144
  1749. data/lib/pangea/resources/aws_vpc_endpoint_service_allowed_principal/resource.rb +0 -67
  1750. data/lib/pangea/resources/aws_vpc_endpoint_service_allowed_principal/types.rb +0 -46
  1751. data/lib/pangea/resources/aws_vpc_endpoint_subnet_association/resource.rb +0 -67
  1752. data/lib/pangea/resources/aws_vpc_endpoint_subnet_association/types.rb +0 -46
  1753. data/lib/pangea/resources/aws_vpc_network_performance_metric_subscription/resource.rb +0 -67
  1754. data/lib/pangea/resources/aws_vpc_network_performance_metric_subscription/types.rb +0 -46
  1755. data/lib/pangea/resources/aws_vpc_peering_connection/CLAUDE.md +0 -361
  1756. data/lib/pangea/resources/aws_vpc_peering_connection/resource.rb +0 -118
  1757. data/lib/pangea/resources/aws_vpc_peering_connection/types.rb +0 -115
  1758. data/lib/pangea/resources/aws_vpc_peering_connection_accepter/CLAUDE.md +0 -248
  1759. data/lib/pangea/resources/aws_vpc_peering_connection_accepter/resource.rb +0 -67
  1760. data/lib/pangea/resources/aws_vpc_peering_connection_accepter/types.rb +0 -46
  1761. data/lib/pangea/resources/aws_vpc_peering_connection_options/resource.rb +0 -67
  1762. data/lib/pangea/resources/aws_vpc_peering_connection_options/types.rb +0 -46
  1763. data/lib/pangea/resources/aws_vpc_security_group_egress_rule/resource.rb +0 -67
  1764. data/lib/pangea/resources/aws_vpc_security_group_egress_rule/types.rb +0 -46
  1765. data/lib/pangea/resources/aws_vpc_security_group_ingress_rule/resource.rb +0 -67
  1766. data/lib/pangea/resources/aws_vpc_security_group_ingress_rule/types.rb +0 -46
  1767. data/lib/pangea/resources/aws_vpn_connection/CLAUDE.md +0 -420
  1768. data/lib/pangea/resources/aws_vpn_connection/resource.rb +0 -119
  1769. data/lib/pangea/resources/aws_vpn_connection/types.rb +0 -127
  1770. data/lib/pangea/resources/aws_vpn_gateway/CLAUDE.md +0 -411
  1771. data/lib/pangea/resources/aws_vpn_gateway/resource.rb +0 -92
  1772. data/lib/pangea/resources/aws_vpn_gateway/types.rb +0 -87
  1773. data/lib/pangea/resources/aws_wafv2_ip_set/resource.rb +0 -83
  1774. data/lib/pangea/resources/aws_wafv2_ip_set/types.rb +0 -141
  1775. data/lib/pangea/resources/aws_wafv2_ip_set.rbs +0 -36
  1776. data/lib/pangea/resources/aws_wafv2_regex_pattern_set/resource.rb +0 -89
  1777. data/lib/pangea/resources/aws_wafv2_regex_pattern_set/types.rb +0 -274
  1778. data/lib/pangea/resources/aws_wafv2_rule_group/resource.rb +0 -427
  1779. data/lib/pangea/resources/aws_wafv2_rule_group/types.rb +0 -270
  1780. data/lib/pangea/resources/aws_wafv2_rule_group.rbs +0 -44
  1781. data/lib/pangea/resources/aws_wafv2_web_acl/CLAUDE.md +0 -788
  1782. data/lib/pangea/resources/aws_wafv2_web_acl/resource.rb +0 -499
  1783. data/lib/pangea/resources/aws_wafv2_web_acl/types.rb +0 -544
  1784. data/lib/pangea/resources/aws_wafv2_web_acl.rbs +0 -309
  1785. data/lib/pangea/resources/aws_wavelength.rb +0 -323
  1786. data/lib/pangea/resources/aws_workspaces_bundle/CLAUDE.md +0 -412
  1787. data/lib/pangea/resources/aws_workspaces_bundle/resource.rb +0 -100
  1788. data/lib/pangea/resources/aws_workspaces_bundle/types.rb +0 -217
  1789. data/lib/pangea/resources/aws_workspaces_directory/CLAUDE.md +0 -365
  1790. data/lib/pangea/resources/aws_workspaces_directory/resource.rb +0 -133
  1791. data/lib/pangea/resources/aws_workspaces_directory/types.rb +0 -237
  1792. data/lib/pangea/resources/aws_workspaces_ip_group/CLAUDE.md +0 -421
  1793. data/lib/pangea/resources/aws_workspaces_ip_group/resource.rb +0 -93
  1794. data/lib/pangea/resources/aws_workspaces_ip_group/types.rb +0 -149
  1795. data/lib/pangea/resources/aws_workspaces_workspace/CLAUDE.md +0 -322
  1796. data/lib/pangea/resources/aws_workspaces_workspace/resource.rb +0 -108
  1797. data/lib/pangea/resources/aws_workspaces_workspace/types.rb +0 -184
  1798. data/lib/pangea/resources/aws_xray_encryption_config/resource.rb +0 -80
  1799. data/lib/pangea/resources/aws_xray_group/resource.rb +0 -113
  1800. data/lib/pangea/resources/aws_xray_sampling_rule/resource.rb +0 -146
  1801. data/lib/pangea/resources/base.rb +0 -81
  1802. data/lib/pangea/resources/composition.rb +0 -534
  1803. data/lib/pangea/resources/edge_computing_guide.md +0 -613
  1804. data/lib/pangea/resources/event_driven_example.rb +0 -288
  1805. data/lib/pangea/resources/helpers.rb +0 -54
  1806. data/lib/pangea/resources/reference.rb +0 -280
  1807. data/lib/pangea/resources/templates/resource_template.rb.erb +0 -56
  1808. data/lib/pangea/resources/types.rb +0 -1231
  1809. data/lib/pangea/resources.rb +0 -32
  1810. data/lib/pangea/types/aws_types.rb +0 -65
  1811. data/lib/pangea/types/base_types.rb +0 -51
  1812. data/lib/pangea/types/computed_types.rb +0 -23
  1813. data/lib/pangea/types/registry.rb +0 -68
  1814. data/lib/pangea/types.rb +0 -164
  1815. data/lib/pangea/ui.rb +0 -44
  1816. data/lib/pangea/utilities/analysis/README.md +0 -11
  1817. data/lib/pangea/utilities/cli/README.md +0 -11
  1818. data/lib/pangea/utilities/cli/command.rb +0 -98
  1819. data/lib/pangea/utilities/cli/commands/cost_command.rb +0 -117
  1820. data/lib/pangea/utilities/cli/commands/drift_command.rb +0 -127
  1821. data/lib/pangea/utilities/cli/commands/state_command.rb +0 -119
  1822. data/lib/pangea/utilities/cost/README.md +0 -12
  1823. data/lib/pangea/utilities/cost/calculator.rb +0 -174
  1824. data/lib/pangea/utilities/cost/resource_pricing.rb +0 -102
  1825. data/lib/pangea/utilities/cost.rb +0 -29
  1826. data/lib/pangea/utilities/drift/README.md +0 -12
  1827. data/lib/pangea/utilities/drift/detector.rb +0 -122
  1828. data/lib/pangea/utilities/drift/report.rb +0 -100
  1829. data/lib/pangea/utilities/drift.rb +0 -29
  1830. data/lib/pangea/utilities/migration/README.md +0 -11
  1831. data/lib/pangea/utilities/monitoring/README.md +0 -11
  1832. data/lib/pangea/utilities/remote_state/README.md +0 -12
  1833. data/lib/pangea/utilities/remote_state/dependency_manager.rb +0 -99
  1834. data/lib/pangea/utilities/remote_state/dsl_extensions.rb +0 -109
  1835. data/lib/pangea/utilities/remote_state/output_registry.rb +0 -119
  1836. data/lib/pangea/utilities/remote_state/reference.rb +0 -77
  1837. data/lib/pangea/utilities/remote_state.rb +0 -28
  1838. data/lib/pangea/utilities/validation/README.md +0 -11
  1839. data/lib/pangea/utilities/visualization/README.md +0 -12
  1840. data/lib/pangea/utilities/visualization/graph.rb +0 -112
  1841. data/lib/pangea/utilities/visualization/mermaid_exporter.rb +0 -149
  1842. data/lib/pangea/utilities/visualization.rb +0 -28
  1843. data/lib/pangea/utilities.rb +0 -39
  1844. data/lib/pangea/validation.rb +0 -100
  1845. data/pangea.yaml.example +0 -87
  1846. data/pangea.yml.example +0 -76
  1847. data/pangea_test.yml +0 -19
  1848. data/rbs_collection.yaml +0 -37
  1849. data/release.sh +0 -32
  1850. data/scripts/add_copyright_headers.rb +0 -65
  1851. data/scripts/analyze_resource_structure.rb +0 -127
  1852. data/scripts/audit_vpc_resources.rb +0 -36
  1853. data/scripts/discover_resources.rb +0 -53
  1854. data/scripts/find_untested_resources.rb +0 -115
  1855. data/scripts/generate_vpc_tests.rb +0 -21
  1856. data/scripts/prioritize_resources.rb +0 -72
  1857. data/scripts/synthesis_coverage_report.json +0 -3723
  1858. data/scripts/synthesis_coverage_report.rb +0 -284
  1859. data/scripts/synthesis_coverage_summary.rb +0 -233
  1860. data/scripts/synthesis_enhancement_tasks.json +0 -74
  1861. data/scripts/verify_implementation.rb +0 -146
  1862. data/scripts/verify_utilities.rb +0 -185
  1863. data/shell.nix +0 -13
  1864. data/sig/pangea/architectures.rbs +0 -260
  1865. data/sig/pangea/entities/namespace.rbs +0 -37
  1866. data/sig/pangea/resources/aws.rbs +0 -254
  1867. data/sig/pangea/resources/aws_acm_certificate.rbs +0 -23
  1868. data/sig/pangea/resources/aws_acm_certificate_validation.rbs +0 -20
  1869. data/sig/pangea/resources/aws_api_gateway_deployment.rbs +0 -49
  1870. data/sig/pangea/resources/aws_api_gateway_method.rbs +0 -51
  1871. data/sig/pangea/resources/aws_api_gateway_resource.rbs +0 -33
  1872. data/sig/pangea/resources/aws_api_gateway_rest_api.rbs +0 -60
  1873. data/sig/pangea/resources/aws_api_gateway_stage.rbs +0 -89
  1874. data/sig/pangea/resources/aws_appstream_fleet.rbs +0 -58
  1875. data/sig/pangea/resources/aws_batch_compute_environment.rbs +0 -54
  1876. data/sig/pangea/resources/aws_batch_job_definition.rbs +0 -69
  1877. data/sig/pangea/resources/aws_batch_job_queue.rbs +0 -65
  1878. data/sig/pangea/resources/aws_braket_device.rbs +0 -114
  1879. data/sig/pangea/resources/aws_braket_quantum_task.rbs +0 -32
  1880. data/sig/pangea/resources/aws_budgets_budget.rbs +0 -130
  1881. data/sig/pangea/resources/aws_budgets_budget_action.rbs +0 -95
  1882. data/sig/pangea/resources/aws_cloudfront_cache_policy.rbs +0 -18
  1883. data/sig/pangea/resources/aws_cloudfront_distribution.rbs +0 -124
  1884. data/sig/pangea/resources/aws_cloudfront_origin_access_control.rbs +0 -27
  1885. data/sig/pangea/resources/aws_cloudfront_origin_request_policy.rbs +0 -17
  1886. data/sig/pangea/resources/aws_cloudwatch_composite_alarm.rbs +0 -34
  1887. data/sig/pangea/resources/aws_cloudwatch_dashboard.rbs +0 -69
  1888. data/sig/pangea/resources/aws_cloudwatch_event_rule.rbs +0 -34
  1889. data/sig/pangea/resources/aws_cloudwatch_event_target.rbs +0 -80
  1890. data/sig/pangea/resources/aws_cloudwatch_log_destination.rbs +0 -26
  1891. data/sig/pangea/resources/aws_cloudwatch_log_destination_policy.rbs +0 -27
  1892. data/sig/pangea/resources/aws_cloudwatch_log_group.rbs +0 -28
  1893. data/sig/pangea/resources/aws_cloudwatch_log_metric_filter.rbs +0 -43
  1894. data/sig/pangea/resources/aws_cloudwatch_log_stream.rbs +0 -25
  1895. data/sig/pangea/resources/aws_cloudwatch_log_subscription_filter.rbs +0 -28
  1896. data/sig/pangea/resources/aws_codeartifact_domain.rbs +0 -29
  1897. data/sig/pangea/resources/aws_codeartifact_repository.rbs +0 -46
  1898. data/sig/pangea/resources/aws_codestar_connection.rbs +0 -36
  1899. data/sig/pangea/resources/aws_cognito_identity_pool.rbs +0 -56
  1900. data/sig/pangea/resources/aws_cognito_identity_provider.rbs +0 -46
  1901. data/sig/pangea/resources/aws_cognito_user.rbs +0 -36
  1902. data/sig/pangea/resources/aws_cognito_user_group.rbs +0 -34
  1903. data/sig/pangea/resources/aws_cognito_user_pool.rbs +0 -176
  1904. data/sig/pangea/resources/aws_cognito_user_pool_client.rbs +0 -75
  1905. data/sig/pangea/resources/aws_cognito_user_pool_domain.rbs +0 -46
  1906. data/sig/pangea/resources/aws_datasync_on_snow_location.rbs +0 -12
  1907. data/sig/pangea/resources/aws_datasync_on_snow_task.rbs +0 -12
  1908. data/sig/pangea/resources/aws_datasync_snow_ball_edge.rbs +0 -12
  1909. data/sig/pangea/resources/aws_db_parameter_group.rbs +0 -81
  1910. data/sig/pangea/resources/aws_db_subnet_group.rbs +0 -42
  1911. data/sig/pangea/resources/aws_ec2_carrier_gateway.rbs +0 -12
  1912. data/sig/pangea/resources/aws_ec2_local_gateway.rbs +0 -12
  1913. data/sig/pangea/resources/aws_ec2_local_gateway_route.rbs +0 -12
  1914. data/sig/pangea/resources/aws_ec2_local_gateway_route_table.rbs +0 -12
  1915. data/sig/pangea/resources/aws_ec2_local_gateway_route_table_vpc_association.rbs +0 -12
  1916. data/sig/pangea/resources/aws_ec2_local_gateway_virtual_interface_group_association.rbs +0 -12
  1917. data/sig/pangea/resources/aws_ecr_lifecycle_policy.rbs +0 -28
  1918. data/sig/pangea/resources/aws_ecr_replication_configuration.rbs +0 -42
  1919. data/sig/pangea/resources/aws_ecr_repository.rbs +0 -36
  1920. data/sig/pangea/resources/aws_ecr_repository_policy.rbs +0 -27
  1921. data/sig/pangea/resources/aws_ecs_cluster.rbs +0 -86
  1922. data/sig/pangea/resources/aws_ecs_cluster_capacity_providers.rbs +0 -59
  1923. data/sig/pangea/resources/aws_ecs_service.rbs +0 -238
  1924. data/sig/pangea/resources/aws_ecs_task_definition.rbs +0 -334
  1925. data/sig/pangea/resources/aws_efs_access_point.rbs +0 -33
  1926. data/sig/pangea/resources/aws_efs_file_system.rbs +0 -34
  1927. data/sig/pangea/resources/aws_efs_mount_target.rbs +0 -29
  1928. data/sig/pangea/resources/aws_eks_addon.rbs +0 -50
  1929. data/sig/pangea/resources/aws_eks_cluster.rbs +0 -79
  1930. data/sig/pangea/resources/aws_eks_fargate_profile.rbs +0 -43
  1931. data/sig/pangea/resources/aws_eks_node_group.rbs +0 -106
  1932. data/sig/pangea/resources/aws_elasticache_cluster.rbs +0 -39
  1933. data/sig/pangea/resources/aws_elasticache_parameter_group.rbs +0 -18
  1934. data/sig/pangea/resources/aws_elasticache_subnet_group.rbs +0 -17
  1935. data/sig/pangea/resources/aws_elemental_data_plane_channel.rbs +0 -18
  1936. data/sig/pangea/resources/aws_emrcontainers_virtual_cluster.rbs +0 -39
  1937. data/sig/pangea/resources/aws_frauddetector_detector.rbs +0 -76
  1938. data/sig/pangea/resources/aws_groundstation_antenna_downlink_config.rbs +0 -12
  1939. data/sig/pangea/resources/aws_groundstation_antenna_uplink_config.rbs +0 -12
  1940. data/sig/pangea/resources/aws_groundstation_config.rbs +0 -12
  1941. data/sig/pangea/resources/aws_groundstation_contact.rbs +0 -12
  1942. data/sig/pangea/resources/aws_groundstation_dataflow_endpoint_group.rbs +0 -12
  1943. data/sig/pangea/resources/aws_groundstation_mission_profile.rbs +0 -12
  1944. data/sig/pangea/resources/aws_groundstation_tracking_config.rbs +0 -12
  1945. data/sig/pangea/resources/aws_healthlake_fhir_datastore.rbs +0 -80
  1946. data/sig/pangea/resources/aws_iam_group.rbs +0 -71
  1947. data/sig/pangea/resources/aws_iam_policy.rbs +0 -62
  1948. data/sig/pangea/resources/aws_iam_role_policy_attachment.rbs +0 -88
  1949. data/sig/pangea/resources/aws_iam_user.rbs +0 -56
  1950. data/sig/pangea/resources/aws_kms_alias.rbs +0 -16
  1951. data/sig/pangea/resources/aws_kms_key.rbs +0 -23
  1952. data/sig/pangea/resources/aws_lambda_event_source_mapping.rbs +0 -116
  1953. data/sig/pangea/resources/aws_lambda_function.rbs +0 -137
  1954. data/sig/pangea/resources/aws_lambda_layer_version.rbs +0 -48
  1955. data/sig/pangea/resources/aws_lambda_permission.rbs +0 -44
  1956. data/sig/pangea/resources/aws_lightsail_bucket.rbs +0 -12
  1957. data/sig/pangea/resources/aws_lightsail_certificate.rbs +0 -12
  1958. data/sig/pangea/resources/aws_lightsail_database.rbs +0 -12
  1959. data/sig/pangea/resources/aws_lightsail_disk.rbs +0 -12
  1960. data/sig/pangea/resources/aws_lightsail_disk_attachment.rbs +0 -12
  1961. data/sig/pangea/resources/aws_lightsail_domain.rbs +0 -12
  1962. data/sig/pangea/resources/aws_lightsail_instance.rbs +0 -12
  1963. data/sig/pangea/resources/aws_lightsail_key_pair.rbs +0 -12
  1964. data/sig/pangea/resources/aws_lightsail_load_balancer.rbs +0 -12
  1965. data/sig/pangea/resources/aws_lightsail_load_balancer_attachment.rbs +0 -12
  1966. data/sig/pangea/resources/aws_lightsail_static_ip.rbs +0 -12
  1967. data/sig/pangea/resources/aws_lightsail_static_ip_attachment.rbs +0 -12
  1968. data/sig/pangea/resources/aws_lookoutequipment_dataset.rbs +0 -73
  1969. data/sig/pangea/resources/aws_managedblockchain_member.rbs +0 -73
  1970. data/sig/pangea/resources/aws_managedblockchain_network.rbs +0 -102
  1971. data/sig/pangea/resources/aws_managedblockchain_node.rbs +0 -71
  1972. data/sig/pangea/resources/aws_media_convert_queue.rbs +0 -20
  1973. data/sig/pangea/resources/aws_media_live_channel.rbs +0 -67
  1974. data/sig/pangea/resources/aws_media_live_input.rbs +0 -68
  1975. data/sig/pangea/resources/aws_media_package_channel.rbs +0 -35
  1976. data/sig/pangea/resources/aws_media_package_origin_endpoint.rbs +0 -29
  1977. data/sig/pangea/resources/aws_media_store_container.rbs +0 -13
  1978. data/sig/pangea/resources/aws_outposts_asset.rbs +0 -12
  1979. data/sig/pangea/resources/aws_outposts_capacity_task.rbs +0 -12
  1980. data/sig/pangea/resources/aws_outposts_connection.rbs +0 -12
  1981. data/sig/pangea/resources/aws_outposts_order.rbs +0 -12
  1982. data/sig/pangea/resources/aws_outposts_outpost.rbs +0 -12
  1983. data/sig/pangea/resources/aws_outposts_outpost_instance_type.rbs +0 -12
  1984. data/sig/pangea/resources/aws_outposts_site.rbs +0 -12
  1985. data/sig/pangea/resources/aws_outposts_supported_hardware_type.rbs +0 -12
  1986. data/sig/pangea/resources/aws_qldb_ledger.rbs +0 -37
  1987. data/sig/pangea/resources/aws_qldb_stream.rbs +0 -53
  1988. data/sig/pangea/resources/aws_rds_cluster.rbs +0 -193
  1989. data/sig/pangea/resources/aws_rds_cluster_instance.rbs +0 -128
  1990. data/sig/pangea/resources/aws_route53_health_check.rbs +0 -34
  1991. data/sig/pangea/resources/aws_route53_record.rbs +0 -63
  1992. data/sig/pangea/resources/aws_route53_zone.rbs +0 -26
  1993. data/sig/pangea/resources/aws_s3_bucket_cors_configuration.rbs +0 -42
  1994. data/sig/pangea/resources/aws_s3_bucket_inventory.rbs +0 -78
  1995. data/sig/pangea/resources/aws_s3_bucket_lifecycle_configuration.rbs +0 -94
  1996. data/sig/pangea/resources/aws_s3_bucket_notification.rbs +0 -65
  1997. data/sig/pangea/resources/aws_s3_bucket_object_lock_configuration.rbs +0 -51
  1998. data/sig/pangea/resources/aws_s3_bucket_replication_configuration.rbs +0 -107
  1999. data/sig/pangea/resources/aws_s3_bucket_website_configuration.rbs +0 -74
  2000. data/sig/pangea/resources/aws_sagemaker_feature_group.rbs +0 -58
  2001. data/sig/pangea/resources/aws_secretsmanager_secret.rbs +0 -29
  2002. data/sig/pangea/resources/aws_secretsmanager_secret_version.rbs +0 -21
  2003. data/sig/pangea/resources/aws_sfn_activity.rbs +0 -36
  2004. data/sig/pangea/resources/aws_sfn_state_machine.rbs +0 -54
  2005. data/sig/pangea/resources/aws_snowball_cluster.rbs +0 -12
  2006. data/sig/pangea/resources/aws_snowball_job.rbs +0 -12
  2007. data/sig/pangea/resources/aws_snowcone_device.rbs +0 -12
  2008. data/sig/pangea/resources/aws_snowcone_job.rbs +0 -12
  2009. data/sig/pangea/resources/aws_snowmobile_job.rbs +0 -12
  2010. data/sig/pangea/resources/aws_sns_subscription.rbs +0 -49
  2011. data/sig/pangea/resources/aws_sns_topic.rbs +0 -78
  2012. data/sig/pangea/resources/aws_sqs_queue.rbs +0 -67
  2013. data/sig/pangea/resources/aws_sqs_queue_policy.rbs +0 -29
  2014. data/sig/pangea/resources/aws_wavelength_application_deployment.rbs +0 -12
  2015. data/sig/pangea/resources/aws_wavelength_deployment.rbs +0 -12
  2016. data/sig/pangea/resources/aws_wavelength_edge_location_mapping.rbs +0 -12
  2017. data/sig/pangea/resources/aws_wavelength_network_interface.rbs +0 -12
  2018. data/sig/pangea/resources/aws_wavelength_workload.rbs +0 -12
  2019. data/sig/pangea/resources/aws_workspaces_bundle.rbs +0 -50
  2020. data/sig/pangea/resources/aws_workspaces_directory.rbs +0 -63
  2021. data/sig/pangea/resources/aws_workspaces_ip_group.rbs +0 -41
  2022. data/sig/pangea/resources/aws_workspaces_workspace.rbs +0 -40
  2023. data/sig/pangea/structures/namespace.rbs +0 -28
  2024. data/sig/pangea/structures/project.rbs +0 -20
  2025. data/sig/pangea/types.rbs +0 -76
  2026. data/sig/pangea.rbs +0 -13
  2027. data/test_infrastructure/infrastructure.rb +0 -510
  2028. data/test_infrastructure/main.tf.json +0 -15
  2029. data/test_infrastructure/multi_template_infrastructure.rb +0 -125
  2030. data/test_infrastructure/pangea.yml +0 -35
  2031. data/test_infrastructure/simple_infrastructure.rb +0 -82
  2032. data/test_infrastructure/test_multi_workspaces.rb +0 -90
  2033. data/test_infrastructure/test_template_workspaces.rb +0 -62
  2034. data/test_infrastructure/workspace_compute.tf.json +0 -46
  2035. data/test_infrastructure/workspace_local_resources.tf.json +0 -41
  2036. data/test_infrastructure/workspace_networking.tf.json +0 -32
  2037. data/test_infrastructure/workspace_storage.tf.json +0 -34
  2038. data/tools/README.md +0 -245
  2039. data/tools/analyze_terraform_docs.rb +0 -367
  2040. data/tools/batch_generate_resources.rb +0 -304
  2041. data/tools/complete_resource_data.rb +0 -492
  2042. data/tools/database_batch.yaml +0 -62
  2043. data/tools/database_resource_data.rb +0 -454
  2044. data/tools/enhance_database_batch.rb +0 -69
  2045. data/tools/enhance_remaining_batch.rb +0 -61
  2046. data/tools/generate_resource.rb +0 -530
  2047. data/tools/priority_resources.yaml +0 -95
  2048. data/tools/resource_enhancer.rb +0 -531
  2049. data/tools/simple_validation.rb +0 -231
  2050. data/tools/update_aws_loader.rb +0 -150
  2051. data/tools/validate_database_resources.rb +0 -444
@@ -1,1307 +0,0 @@
1
- # frozen_string_literal: true
2
- # Copyright 2025 The Pangea Authors
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- #
8
- # http://www.apache.org/licenses/LICENSE-2.0
9
- #
10
- # Unless required by applicable law or agreed to in writing, software
11
- # distributed under the License is distributed on an "AS IS" BASIS,
12
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- # See the License for the specific language governing permissions and
14
- # limitations under the License.
15
-
16
-
17
- require 'pangea/components/base'
18
- require 'pangea/components/global_service_mesh/types'
19
- require 'pangea/resources/aws'
20
- require 'json'
21
-
22
- module Pangea
23
- module Components
24
- # Multi-region service mesh infrastructure for microservices communication
25
- # Creates App Mesh, service discovery, cross-region connectivity, and observability
26
- def global_service_mesh(name, attributes = {})
27
- include Base
28
- include Resources::AWS
29
-
30
- # Validate and set defaults
31
- component_attrs = GlobalServiceMesh::GlobalServiceMeshAttributes.new(attributes)
32
- component_attrs.validate!
33
-
34
- # Generate component-specific tags
35
- component_tag_set = component_tags('GlobalServiceMesh', name, component_attrs.tags)
36
-
37
- resources = {}
38
-
39
- # Create the App Mesh
40
- mesh_ref = aws_appmesh_mesh(
41
- component_resource_name(name, :mesh),
42
- {
43
- name: component_attrs.mesh_name,
44
-
45
- spec: {
46
- egress_filter: {
47
- type: component_attrs.gateway.egress_gateway_enabled ? "ALLOW_ALL" : "DROP_ALL"
48
- },
49
- service_discovery: {
50
- ip_preference: "IPv4_PREFERRED"
51
- }
52
- },
53
-
54
- tags: component_tag_set
55
- }
56
- )
57
- resources[:mesh] = mesh_ref
58
-
59
- # Create Cloud Map namespace for service discovery
60
- namespace_ref = aws_service_discovery_private_dns_namespace(
61
- component_resource_name(name, :namespace),
62
- {
63
- name: component_attrs.service_discovery.namespace_name,
64
- description: component_attrs.service_discovery.namespace_description,
65
- vpc: "vpc-placeholder", # Would be dynamic based on region
66
- tags: component_tag_set
67
- }
68
- )
69
- resources[:namespace] = namespace_ref
70
-
71
- # Process each region
72
- regional_resources = {}
73
-
74
- component_attrs.regions.each do |region|
75
- region_resources = setup_regional_mesh(
76
- name, region, component_attrs, mesh_ref, namespace_ref, component_tag_set
77
- )
78
- regional_resources[region.to_sym] = region_resources
79
- end
80
-
81
- resources[:regional] = regional_resources
82
-
83
- # Create cross-region connectivity
84
- if component_attrs.regions.length > 1 && component_attrs.cross_region.peering_enabled
85
- connectivity_resources = create_cross_region_connectivity(
86
- name, component_attrs, regional_resources, component_tag_set
87
- )
88
- resources[:connectivity] = connectivity_resources
89
- end
90
-
91
- # Create service mesh components
92
- mesh_components = create_mesh_components(
93
- name, component_attrs, mesh_ref, regional_resources, component_tag_set
94
- )
95
- resources[:mesh_components] = mesh_components
96
-
97
- # Create gateways if enabled
98
- if component_attrs.gateway.ingress_gateway_enabled || component_attrs.gateway.egress_gateway_enabled
99
- gateway_resources = create_gateways(
100
- name, component_attrs, mesh_ref, regional_resources, component_tag_set
101
- )
102
- resources[:gateways] = gateway_resources
103
- end
104
-
105
- # Create observability infrastructure
106
- if component_attrs.observability.xray_enabled || component_attrs.observability.cloudwatch_metrics_enabled
107
- observability_resources = create_observability_infrastructure(
108
- name, component_attrs, resources, component_tag_set
109
- )
110
- resources[:observability] = observability_resources
111
- end
112
-
113
- # Create security resources
114
- if component_attrs.security.mtls_enabled
115
- security_resources = create_security_infrastructure(
116
- name, component_attrs, mesh_ref, component_tag_set
117
- )
118
- resources[:security] = security_resources
119
- end
120
-
121
- # Create resilience patterns
122
- if component_attrs.resilience.chaos_testing_enabled
123
- resilience_resources = create_resilience_infrastructure(
124
- name, component_attrs, resources, component_tag_set
125
- )
126
- resources[:resilience] = resilience_resources
127
- end
128
-
129
- # Calculate outputs
130
- outputs = {
131
- mesh_name: component_attrs.mesh_name,
132
- mesh_arn: mesh_ref.arn,
133
-
134
- service_discovery_namespace: component_attrs.service_discovery.namespace_name,
135
-
136
- regions: component_attrs.regions,
137
- services: component_attrs.services.map { |s|
138
- {
139
- name: s.name,
140
- region: s.region,
141
- endpoint: "#{s.name}.#{component_attrs.service_discovery.namespace_name}",
142
- port: s.port,
143
- protocol: s.protocol
144
- }
145
- },
146
-
147
- connectivity_type: extract_connectivity_type(component_attrs),
148
-
149
- security_features: [
150
- ("mTLS Enabled" if component_attrs.security.mtls_enabled),
151
- ("Service Authentication" if component_attrs.security.service_auth_enabled),
152
- ("RBAC Enabled" if component_attrs.security.rbac_enabled),
153
- ("Encryption in Transit" if component_attrs.security.encryption_in_transit),
154
- ("Secrets Manager Integration" if component_attrs.security.secrets_manager_integration)
155
- ].compact,
156
-
157
- traffic_management_features: [
158
- ("Circuit Breaker" if component_attrs.traffic_management.circuit_breaker_enabled),
159
- ("Outlier Detection" if component_attrs.traffic_management.outlier_detection_enabled),
160
- ("Canary Deployments" if component_attrs.traffic_management.canary_deployments_enabled),
161
- ("Global Load Balancing" if component_attrs.enable_global_load_balancing),
162
- ("Multi-cluster Routing" if component_attrs.enable_multi_cluster_routing)
163
- ].compact,
164
-
165
- observability_features: [
166
- ("X-Ray Distributed Tracing" if component_attrs.observability.xray_enabled),
167
- ("CloudWatch Metrics" if component_attrs.observability.cloudwatch_metrics_enabled),
168
- ("Access Logging" if component_attrs.observability.access_logging_enabled),
169
- ("Envoy Stats" if component_attrs.observability.envoy_stats_enabled),
170
- ("Custom Metrics" if component_attrs.observability.custom_metrics_enabled)
171
- ].compact,
172
-
173
- resilience_features: [
174
- ("Retry Policy" if component_attrs.resilience.retry_policy_enabled),
175
- ("Bulkhead Pattern" if component_attrs.resilience.bulkhead_enabled),
176
- ("Request Timeout" if component_attrs.resilience.timeout_enabled),
177
- ("Chaos Testing" if component_attrs.resilience.chaos_testing_enabled)
178
- ].compact,
179
-
180
- gateway_endpoints: extract_gateway_endpoints(resources[:gateways]),
181
-
182
- virtual_nodes: mesh_components[:virtual_nodes]&.keys || [],
183
- virtual_services: mesh_components[:virtual_services]&.keys || [],
184
- virtual_routers: mesh_components[:virtual_routers]&.keys || [],
185
-
186
- estimated_monthly_cost: estimate_service_mesh_cost(component_attrs, resources)
187
- }
188
-
189
- create_component_reference(
190
- 'global_service_mesh',
191
- name,
192
- component_attrs.to_h,
193
- resources,
194
- outputs
195
- )
196
- end
197
-
198
- private
199
-
200
- def setup_regional_mesh(name, region, attrs, mesh_ref, namespace_ref, tags)
201
- region_resources = {}
202
-
203
- # Get services for this region
204
- region_services = attrs.services.select { |s| s.region == region }
205
-
206
- # Create VPC endpoints for App Mesh and Cloud Map
207
- vpc_endpoints = {}
208
-
209
- # App Mesh VPC endpoint
210
- appmesh_endpoint_ref = aws_vpc_endpoint(
211
- component_resource_name(name, :appmesh_endpoint, region.to_sym),
212
- {
213
- vpc_id: "vpc-placeholder", # Would reference actual VPC
214
- service_name: "com.amazonaws.#{region}.appmesh-envoy-management",
215
- vpc_endpoint_type: "Interface",
216
- subnet_ids: [], # Would reference private subnets
217
- security_group_ids: [], # Would reference security groups
218
- private_dns_enabled: true,
219
- tags: tags.merge(Region: region)
220
- }
221
- )
222
- vpc_endpoints[:appmesh] = appmesh_endpoint_ref
223
-
224
- # Cloud Map VPC endpoint
225
- servicediscovery_endpoint_ref = aws_vpc_endpoint(
226
- component_resource_name(name, :servicediscovery_endpoint, region.to_sym),
227
- {
228
- vpc_id: "vpc-placeholder",
229
- service_name: "com.amazonaws.#{region}.servicediscovery",
230
- vpc_endpoint_type: "Interface",
231
- subnet_ids: [],
232
- security_group_ids: [],
233
- private_dns_enabled: true,
234
- tags: tags.merge(Region: region)
235
- }
236
- )
237
- vpc_endpoints[:servicediscovery] = servicediscovery_endpoint_ref
238
-
239
- region_resources[:vpc_endpoints] = vpc_endpoints
240
-
241
- # Create service-specific resources
242
- services_resources = {}
243
-
244
- region_services.each do |service|
245
- service_resources = {}
246
-
247
- # Create Cloud Map service
248
- service_discovery_ref = aws_service_discovery_service(
249
- component_resource_name(name, :service_discovery, service.name.to_sym),
250
- {
251
- name: service.name,
252
- namespace_id: namespace_ref.id,
253
-
254
- dns_config: {
255
- namespace_id: namespace_ref.id,
256
- routing_policy: attrs.service_discovery.routing_policy,
257
-
258
- dns_records: [{
259
- ttl: attrs.service_discovery.dns_ttl,
260
- type: "A"
261
- }]
262
- },
263
-
264
- health_check_custom_config: attrs.service_discovery.health_check_custom_config_enabled ? {
265
- failure_threshold: attrs.virtual_node_config.unhealthy_threshold
266
- } : nil,
267
-
268
- tags: tags.merge(Service: service.name, Region: region)
269
- }.compact
270
- )
271
- service_resources[:discovery] = service_discovery_ref
272
-
273
- # Create ECS task definition if not provided
274
- if !service.task_definition_ref && service.cluster_ref
275
- task_def_ref = aws_ecs_task_definition(
276
- component_resource_name(name, :task_definition, service.name.to_sym),
277
- {
278
- family: "#{service.name}-task",
279
- network_mode: "awsvpc",
280
- requires_compatibilities: ["FARGATE"],
281
- cpu: "256",
282
- memory: "512",
283
-
284
- proxy_configuration: {
285
- type: "APPMESH",
286
- container_name: "envoy",
287
- properties: {
288
- AppPorts: service.port.to_s,
289
- EgressIgnoredIPs: "169.254.170.2,169.254.169.254",
290
- IgnoredUID: "1337",
291
- ProxyEgressPort: 15001,
292
- ProxyIngressPort: 15000
293
- }
294
- },
295
-
296
- container_definitions: JSON.generate([
297
- {
298
- name: service.name,
299
- image: "service-image:latest",
300
- portMappings: [{
301
- containerPort: service.port,
302
- protocol: "tcp"
303
- }],
304
- environment: [
305
- { name: "SERVICE_NAME", value: service.name },
306
- { name: "SERVICE_PORT", value: service.port.to_s }
307
- ],
308
- dependsOn: [{
309
- containerName: "envoy",
310
- condition: "HEALTHY"
311
- }]
312
- },
313
- {
314
- name: "envoy",
315
- image: "public.ecr.aws/appmesh/aws-appmesh-envoy:latest",
316
- memory: 128,
317
- user: "1337",
318
- essential: true,
319
- environment: [
320
- { name: "APPMESH_RESOURCE_ARN", value: "mesh/#{attrs.mesh_name}/virtualNode/#{service.name}" },
321
- { name: "ENABLE_ENVOY_XRAY_TRACING", value: attrs.observability.xray_enabled ? "1" : "0" }
322
- ],
323
- healthCheck: {
324
- command: ["CMD-SHELL", "curl -s http://localhost:9901/server_info | grep state | grep -q LIVE"],
325
- interval: 5,
326
- timeout: 2,
327
- retries: 3,
328
- startPeriod: 10
329
- }
330
- }
331
- ]),
332
-
333
- task_role_arn: "arn:aws:iam::ACCOUNT:role/ecsTaskRole",
334
- execution_role_arn: "arn:aws:iam::ACCOUNT:role/ecsTaskExecutionRole",
335
-
336
- tags: tags.merge(Service: service.name)
337
- }
338
- )
339
- service_resources[:task_definition] = task_def_ref
340
- else
341
- service_resources[:task_definition] = service.task_definition_ref
342
- end
343
-
344
- services_resources[service.name.to_sym] = service_resources
345
- end
346
-
347
- region_resources[:services] = services_resources
348
-
349
- # Create Transit Gateway if enabled for cross-region
350
- if attrs.cross_region.transit_gateway_enabled && attrs.regions.length > 1
351
- tgw_ref = aws_ec2_transit_gateway(
352
- component_resource_name(name, :transit_gateway, region.to_sym),
353
- {
354
- description: "Transit Gateway for service mesh in #{region}",
355
- amazon_side_asn: 64512,
356
- default_route_table_association: "enable",
357
- default_route_table_propagation: "enable",
358
- dns_support: "enable",
359
- vpn_ecmp_support: "enable",
360
- tags: tags.merge(Region: region)
361
- }
362
- )
363
- region_resources[:transit_gateway] = tgw_ref
364
- end
365
-
366
- region_resources
367
- end
368
-
369
- def create_cross_region_connectivity(name, attrs, regional_resources, tags)
370
- connectivity_resources = {}
371
-
372
- # Create Transit Gateway peering attachments
373
- if attrs.cross_region.transit_gateway_enabled
374
- peering_attachments = {}
375
-
376
- attrs.regions.combination(2).each do |region1, region2|
377
- tgw1 = regional_resources[region1.to_sym][:transit_gateway]
378
- tgw2 = regional_resources[region2.to_sym][:transit_gateway]
379
-
380
- next unless tgw1 && tgw2
381
-
382
- peering_ref = aws_ec2_transit_gateway_peering_attachment(
383
- component_resource_name(name, :tgw_peering, "#{region1}_#{region2}".to_sym),
384
- {
385
- transit_gateway_id: tgw1.id,
386
- peer_transit_gateway_id: tgw2.id,
387
- peer_account_id: "${AWS::AccountId}",
388
- peer_region: region2,
389
- tags: tags.merge(
390
- ConnectionType: "ServiceMesh",
391
- Region1: region1,
392
- Region2: region2
393
- )
394
- }
395
- )
396
- peering_attachments["#{region1}_#{region2}".to_sym] = peering_ref
397
- end
398
-
399
- connectivity_resources[:tgw_peering] = peering_attachments
400
- end
401
-
402
- # Create PrivateLink connections if enabled
403
- if attrs.cross_region.private_link_enabled
404
- privatelink_connections = {}
405
-
406
- attrs.services.group_by(&:region).each do |provider_region, services|
407
- services.each do |service|
408
- # Create VPC endpoint service
409
- endpoint_service_ref = aws_vpc_endpoint_service(
410
- component_resource_name(name, :endpoint_service, service.name.to_sym),
411
- {
412
- acceptance_required: false,
413
- network_load_balancer_arns: [], # Would reference NLBs
414
- tags: tags.merge(Service: service.name, Region: provider_region)
415
- }
416
- )
417
-
418
- privatelink_connections["service_#{service.name}".to_sym] = endpoint_service_ref
419
-
420
- # Create VPC endpoints in consumer regions
421
- consumer_regions = attrs.regions - [provider_region]
422
- consumer_regions.each do |consumer_region|
423
- endpoint_ref = aws_vpc_endpoint(
424
- component_resource_name(name, :service_endpoint, "#{service.name}_#{consumer_region}".to_sym),
425
- {
426
- vpc_id: "vpc-placeholder",
427
- service_name: endpoint_service_ref.service_name,
428
- vpc_endpoint_type: "Interface",
429
- subnet_ids: [],
430
- security_group_ids: [],
431
- tags: tags.merge(
432
- Service: service.name,
433
- ProviderRegion: provider_region,
434
- ConsumerRegion: consumer_region
435
- )
436
- }
437
- )
438
- privatelink_connections["endpoint_#{service.name}_#{consumer_region}".to_sym] = endpoint_ref
439
- end
440
- end
441
- end
442
-
443
- connectivity_resources[:privatelink] = privatelink_connections
444
- end
445
-
446
- connectivity_resources
447
- end
448
-
449
- def create_mesh_components(name, attrs, mesh_ref, regional_resources, tags)
450
- mesh_components = {}
451
-
452
- # Create virtual nodes for each service
453
- virtual_nodes = {}
454
- attrs.services.each do |service|
455
- virtual_node_ref = aws_appmesh_virtual_node(
456
- component_resource_name(name, :virtual_node, service.name.to_sym),
457
- {
458
- name: service.name,
459
- mesh_name: mesh_ref.name,
460
-
461
- spec: {
462
- listener: [{
463
- port_mapping: {
464
- port: service.port,
465
- protocol: service.protocol
466
- },
467
-
468
- health_check: {
469
- healthy_threshold: attrs.virtual_node_config.healthy_threshold,
470
- interval_millis: attrs.virtual_node_config.health_check_interval_millis,
471
- path: service.health_check_path,
472
- port: service.port,
473
- protocol: service.protocol == 'GRPC' ? 'grpc' : 'http',
474
- timeout_millis: attrs.virtual_node_config.health_check_timeout_millis,
475
- unhealthy_threshold: attrs.virtual_node_config.unhealthy_threshold
476
- },
477
-
478
- tls: attrs.security.mtls_enabled ? {
479
- mode: attrs.security.tls_mode,
480
- certificate: {
481
- acm: {
482
- certificate_arn: "arn:aws:acm:#{service.region}:ACCOUNT:certificate/cert"
483
- }
484
- },
485
- validation: {
486
- trust: {
487
- acm: {
488
- certificate_authority_arns: [attrs.security.certificate_authority_arn]
489
- }
490
- }
491
- }
492
- } : nil,
493
-
494
- outlier_detection: attrs.traffic_management.outlier_detection_enabled ? {
495
- base_ejection_duration: {
496
- unit: "s",
497
- value: attrs.traffic_management.outlier_ejection_duration_seconds
498
- },
499
- interval: {
500
- unit: "s",
501
- value: 10
502
- },
503
- max_ejection_percent: attrs.traffic_management.max_ejection_percent,
504
- max_server_errors: attrs.traffic_management.circuit_breaker_threshold
505
- } : nil,
506
-
507
- connection_pool: attrs.resilience.bulkhead_enabled ? {
508
- http: {
509
- max_connections: attrs.resilience.max_connections,
510
- max_pending_requests: attrs.resilience.max_pending_requests
511
- }
512
- } : nil,
513
-
514
- timeout: attrs.resilience.timeout_enabled ? {
515
- http: {
516
- idle: {
517
- unit: "s",
518
- value: 300
519
- },
520
- per_request: {
521
- unit: "s",
522
- value: attrs.resilience.request_timeout_seconds
523
- }
524
- }
525
- } : nil
526
- }.compact],
527
-
528
- service_discovery: {
529
- aws_cloud_map: {
530
- namespace_name: attrs.service_discovery.namespace_name,
531
- service_name: service.name
532
- }
533
- },
534
-
535
- backend: attrs.virtual_node_config.backends.any? ?
536
- attrs.virtual_node_config.backends.map do |backend|
537
- {
538
- virtual_service: {
539
- virtual_service_name: "#{backend}.#{attrs.service_discovery.namespace_name}"
540
- }
541
- }
542
- end : nil,
543
-
544
- backend_defaults: attrs.resilience.retry_policy_enabled ? {
545
- client_policy: {
546
- tls: attrs.security.mtls_enabled ? {
547
- enforce: true,
548
- validation: {
549
- trust: {
550
- acm: {
551
- certificate_authority_arns: [attrs.security.certificate_authority_arn]
552
- }
553
- }
554
- }
555
- } : nil
556
- }
557
- } : nil
558
- }.compact,
559
-
560
- tags: tags.merge(Service: service.name, Region: service.region)
561
- }
562
- )
563
- virtual_nodes[service.name.to_sym] = virtual_node_ref
564
- end
565
- mesh_components[:virtual_nodes] = virtual_nodes
566
-
567
- # Create virtual services
568
- virtual_services = {}
569
- attrs.services.each do |service|
570
- virtual_service_ref = aws_appmesh_virtual_service(
571
- component_resource_name(name, :virtual_service, service.name.to_sym),
572
- {
573
- name: "#{service.name}.#{attrs.service_discovery.namespace_name}",
574
- mesh_name: mesh_ref.name,
575
-
576
- spec: {
577
- provider: {
578
- virtual_node: {
579
- virtual_node_name: service.name
580
- }
581
- }
582
- },
583
-
584
- tags: tags.merge(Service: service.name)
585
- }
586
- )
587
- virtual_services[service.name.to_sym] = virtual_service_ref
588
- end
589
- mesh_components[:virtual_services] = virtual_services
590
-
591
- # Create virtual routers for advanced routing
592
- if attrs.traffic_management.canary_deployments_enabled || attrs.enable_multi_cluster_routing
593
- virtual_routers = {}
594
-
595
- attrs.services.group_by(&:name).select { |_, svcs| svcs.length > 1 }.each do |service_name, service_versions|
596
- virtual_router_ref = aws_appmesh_virtual_router(
597
- component_resource_name(name, :virtual_router, service_name.to_sym),
598
- {
599
- name: "#{service_name}-router",
600
- mesh_name: mesh_ref.name,
601
-
602
- spec: {
603
- listener: [{
604
- port_mapping: {
605
- port: service_versions.first.port,
606
- protocol: service_versions.first.protocol
607
- }
608
- }]
609
- },
610
-
611
- tags: tags.merge(Service: service_name)
612
- }
613
- )
614
- virtual_routers[service_name.to_sym] = virtual_router_ref
615
-
616
- # Create routes
617
- route_ref = aws_appmesh_route(
618
- component_resource_name(name, :route, service_name.to_sym),
619
- {
620
- name: "#{service_name}-route",
621
- mesh_name: mesh_ref.name,
622
- virtual_router_name: virtual_router_ref.name,
623
-
624
- spec: {
625
- http_route: {
626
- match: {
627
- prefix: "/"
628
- },
629
-
630
- action: {
631
- weighted_target: service_versions.map do |version|
632
- {
633
- virtual_node: version.name,
634
- weight: version.weight
635
- }
636
- end
637
- },
638
-
639
- retry_policy: attrs.resilience.retry_policy_enabled ? {
640
- http_retry_events: ["server-error", "gateway-error"],
641
- max_retries: attrs.resilience.max_retries,
642
- per_retry_timeout: {
643
- unit: "s",
644
- value: attrs.resilience.retry_timeout_seconds
645
- }
646
- } : nil,
647
-
648
- timeout: {
649
- per_request: {
650
- unit: "s",
651
- value: service_versions.first.timeout_seconds
652
- }
653
- }
654
- }.compact
655
- },
656
-
657
- tags: tags.merge(Service: service_name)
658
- }
659
- )
660
- mesh_components["route_#{service_name}".to_sym] = route_ref
661
- end
662
-
663
- mesh_components[:virtual_routers] = virtual_routers
664
- end
665
-
666
- mesh_components
667
- end
668
-
669
- def create_gateways(name, attrs, mesh_ref, regional_resources, tags)
670
- gateway_resources = {}
671
-
672
- # Create virtual gateway for ingress
673
- if attrs.gateway.ingress_gateway_enabled
674
- ingress_gateway_ref = aws_appmesh_virtual_gateway(
675
- component_resource_name(name, :ingress_gateway),
676
- {
677
- name: "#{name}-ingress-gateway",
678
- mesh_name: mesh_ref.name,
679
-
680
- spec: {
681
- listener: [{
682
- port_mapping: {
683
- port: attrs.gateway.gateway_port,
684
- protocol: attrs.gateway.gateway_protocol
685
- },
686
-
687
- tls: attrs.gateway.gateway_protocol == 'HTTPS' ? {
688
- mode: attrs.security.tls_mode,
689
- certificate: {
690
- acm: {
691
- certificate_arn: "arn:aws:acm:REGION:ACCOUNT:certificate/gateway-cert"
692
- }
693
- }
694
- } : nil,
695
-
696
- health_check: {
697
- healthy_threshold: 2,
698
- interval_millis: 30000,
699
- path: "/health",
700
- port: attrs.gateway.gateway_port,
701
- protocol: attrs.gateway.gateway_protocol == 'GRPC' ? 'grpc' : 'http',
702
- timeout_millis: 5000,
703
- unhealthy_threshold: 3
704
- }
705
- }.compact],
706
-
707
- logging: attrs.observability.access_logging_enabled ? {
708
- access_log: {
709
- file: {
710
- path: "/dev/stdout"
711
- }
712
- }
713
- } : nil
714
- }.compact,
715
-
716
- tags: tags.merge(Type: "Ingress")
717
- }
718
- )
719
- gateway_resources[:ingress] = ingress_gateway_ref
720
-
721
- # Create gateway routes
722
- gateway_routes = {}
723
- attrs.services.each do |service|
724
- gateway_route_ref = aws_appmesh_gateway_route(
725
- component_resource_name(name, :gateway_route, service.name.to_sym),
726
- {
727
- name: "#{service.name}-route",
728
- mesh_name: mesh_ref.name,
729
- virtual_gateway_name: ingress_gateway_ref.name,
730
-
731
- spec: {
732
- http_route: {
733
- match: {
734
- prefix: "/#{service.name}"
735
- },
736
-
737
- action: {
738
- target: {
739
- virtual_service: {
740
- virtual_service_name: "#{service.name}.#{attrs.service_discovery.namespace_name}"
741
- }
742
- }
743
- }
744
- }
745
- },
746
-
747
- tags: tags.merge(Service: service.name)
748
- }
749
- )
750
- gateway_routes[service.name.to_sym] = gateway_route_ref
751
- end
752
- gateway_resources[:routes] = gateway_routes
753
- end
754
-
755
- # Create egress gateway if enabled
756
- if attrs.gateway.egress_gateway_enabled
757
- egress_gateway_ref = aws_appmesh_virtual_gateway(
758
- component_resource_name(name, :egress_gateway),
759
- {
760
- name: "#{name}-egress-gateway",
761
- mesh_name: mesh_ref.name,
762
-
763
- spec: {
764
- listener: [{
765
- port_mapping: {
766
- port: 8080,
767
- protocol: "HTTP"
768
- }
769
- }],
770
-
771
- logging: attrs.observability.access_logging_enabled ? {
772
- access_log: {
773
- file: {
774
- path: "/dev/stdout"
775
- }
776
- }
777
- } : nil
778
- }.compact,
779
-
780
- tags: tags.merge(Type: "Egress")
781
- }
782
- )
783
- gateway_resources[:egress] = egress_gateway_ref
784
- end
785
-
786
- # Create NLB for gateway if custom domain enabled
787
- if attrs.gateway.custom_domain_enabled
788
- nlb_ref = aws_lb(
789
- component_resource_name(name, :gateway_nlb),
790
- {
791
- name: "#{name}-gateway-nlb",
792
- internal: false,
793
- load_balancer_type: "network",
794
- subnets: [], # Would reference public subnets
795
-
796
- enable_cross_zone_load_balancing: true,
797
- enable_deletion_protection: true,
798
-
799
- tags: tags
800
- }
801
- )
802
- gateway_resources[:nlb] = nlb_ref
803
-
804
- # Create target group
805
- target_group_ref = aws_lb_target_group(
806
- component_resource_name(name, :gateway_target_group),
807
- {
808
- name: "#{name}-gateway-tg",
809
- port: attrs.gateway.gateway_port,
810
- protocol: attrs.gateway.gateway_protocol == 'HTTPS' ? 'TLS' : 'TCP',
811
- vpc_id: "vpc-placeholder",
812
- target_type: "ip",
813
-
814
- health_check: {
815
- enabled: true,
816
- healthy_threshold: 2,
817
- interval: 30,
818
- port: attrs.gateway.gateway_port,
819
- protocol: "TCP",
820
- unhealthy_threshold: 2
821
- },
822
-
823
- tags: tags
824
- }
825
- )
826
- gateway_resources[:target_group] = target_group_ref
827
-
828
- # Create listener
829
- listener_ref = aws_lb_listener(
830
- component_resource_name(name, :gateway_listener),
831
- {
832
- load_balancer_arn: nlb_ref.arn,
833
- port: attrs.gateway.gateway_port,
834
- protocol: attrs.gateway.gateway_protocol == 'HTTPS' ? 'TLS' : 'TCP',
835
-
836
- certificate_arn: attrs.gateway.gateway_protocol == 'HTTPS' ?
837
- "arn:aws:acm:REGION:ACCOUNT:certificate/nlb-cert" : nil,
838
-
839
- default_action: [{
840
- type: "forward",
841
- target_group_arn: target_group_ref.arn
842
- }]
843
- }.compact
844
- )
845
- gateway_resources[:listener] = listener_ref
846
- end
847
-
848
- gateway_resources
849
- end
850
-
851
- def create_observability_infrastructure(name, attrs, resources, tags)
852
- observability_resources = {}
853
-
854
- # Create X-Ray service map if enabled
855
- if attrs.observability.xray_enabled
856
- # Create X-Ray sampling rule
857
- sampling_rule_ref = aws_xray_sampling_rule(
858
- component_resource_name(name, :xray_sampling_rule),
859
- {
860
- rule_name: "#{name}-service-mesh-sampling",
861
- priority: 9000,
862
- version: 1,
863
- reservoir_size: 1,
864
- fixed_rate: attrs.observability.distributed_tracing_sampling_rate,
865
- url_path: "*",
866
- host: "*",
867
- http_method: "*",
868
- service_type: "*",
869
- service_name: "*",
870
- resource_arn: "*",
871
- tags: tags
872
- }
873
- )
874
- observability_resources[:sampling_rule] = sampling_rule_ref
875
-
876
- # Create X-Ray group
877
- xray_group_ref = aws_xray_group(
878
- component_resource_name(name, :xray_group),
879
- {
880
- group_name: attrs.mesh_name,
881
- filter_expression: "service(\"*#{attrs.mesh_name}*\")",
882
- tags: tags
883
- }
884
- )
885
- observability_resources[:xray_group] = xray_group_ref
886
- end
887
-
888
- # Create CloudWatch Log Groups
889
- if attrs.observability.access_logging_enabled
890
- log_groups = {}
891
-
892
- attrs.services.each do |service|
893
- log_group_ref = aws_cloudwatch_log_group(
894
- component_resource_name(name, :log_group, service.name.to_sym),
895
- {
896
- name: "/aws/appmesh/#{attrs.mesh_name}/#{service.name}",
897
- retention_in_days: attrs.observability.log_retention_days,
898
- tags: tags.merge(Service: service.name)
899
- }
900
- )
901
- log_groups[service.name.to_sym] = log_group_ref
902
- end
903
-
904
- observability_resources[:log_groups] = log_groups
905
- end
906
-
907
- # Create CloudWatch Dashboard
908
- dashboard_widgets = []
909
-
910
- # Service mesh overview widget
911
- dashboard_widgets << {
912
- type: "metric",
913
- x: 0,
914
- y: 0,
915
- width: 24,
916
- height: 6,
917
- properties: {
918
- title: "Service Mesh Overview",
919
- metrics: attrs.services.map do |service|
920
- ["AWS/AppMesh", "TargetResponseTime", {
921
- MeshName: attrs.mesh_name,
922
- VirtualNodeName: service.name
923
- }]
924
- end,
925
- period: 300,
926
- stat: "Average",
927
- region: attrs.regions.first,
928
- yAxis: { left: { label: "Response Time (ms)" } }
929
- }
930
- }
931
-
932
- # Request rate by service
933
- dashboard_widgets << {
934
- type: "metric",
935
- x: 0,
936
- y: 6,
937
- width: 12,
938
- height: 6,
939
- properties: {
940
- title: "Request Rate by Service",
941
- metrics: attrs.services.map do |service|
942
- ["AWS/AppMesh", "RequestCount", {
943
- MeshName: attrs.mesh_name,
944
- VirtualNodeName: service.name
945
- }]
946
- end,
947
- period: 300,
948
- stat: "Sum",
949
- region: attrs.regions.first
950
- }
951
- }
952
-
953
- # Error rate by service
954
- dashboard_widgets << {
955
- type: "metric",
956
- x: 12,
957
- y: 6,
958
- width: 12,
959
- height: 6,
960
- properties: {
961
- title: "Error Rate by Service",
962
- metrics: attrs.services.map do |service|
963
- ["AWS/AppMesh", "TargetConnectionErrorCount", {
964
- MeshName: attrs.mesh_name,
965
- VirtualNodeName: service.name
966
- }]
967
- end,
968
- period: 300,
969
- stat: "Sum",
970
- region: attrs.regions.first
971
- }
972
- }
973
-
974
- # Circuit breaker status
975
- if attrs.traffic_management.circuit_breaker_enabled
976
- dashboard_widgets << {
977
- type: "metric",
978
- x: 0,
979
- y: 12,
980
- width: 24,
981
- height: 6,
982
- properties: {
983
- title: "Circuit Breaker Status",
984
- metrics: attrs.services.map do |service|
985
- ["AWS/AppMesh", "CircuitBreakerOpen", {
986
- MeshName: attrs.mesh_name,
987
- VirtualNodeName: service.name
988
- }]
989
- end,
990
- period: 60,
991
- stat: "Maximum",
992
- region: attrs.regions.first,
993
- yAxis: { left: { min: 0, max: 1 } }
994
- }
995
- }
996
- end
997
-
998
- dashboard_ref = aws_cloudwatch_dashboard(
999
- component_resource_name(name, :dashboard),
1000
- {
1001
- dashboard_name: "#{name}-service-mesh",
1002
- dashboard_body: JSON.generate({
1003
- widgets: dashboard_widgets,
1004
- periodOverride: "auto",
1005
- start: "-PT6H"
1006
- })
1007
- }
1008
- )
1009
- observability_resources[:dashboard] = dashboard_ref
1010
-
1011
- # Create alarms
1012
- alarms = {}
1013
- attrs.services.each do |service|
1014
- # High latency alarm
1015
- latency_alarm_ref = aws_cloudwatch_metric_alarm(
1016
- component_resource_name(name, :alarm_latency, service.name.to_sym),
1017
- {
1018
- alarm_name: "#{name}-#{service.name}-high-latency",
1019
- comparison_operator: "GreaterThanThreshold",
1020
- evaluation_periods: "2",
1021
- metric_name: "TargetResponseTime",
1022
- namespace: "AWS/AppMesh",
1023
- period: "300",
1024
- statistic: "Average",
1025
- threshold: (service.timeout_seconds * 1000 * 0.8).to_s,
1026
- alarm_description: "Service #{service.name} latency is high",
1027
- dimensions: {
1028
- MeshName: attrs.mesh_name,
1029
- VirtualNodeName: service.name
1030
- },
1031
- tags: tags
1032
- }
1033
- )
1034
- alarms["latency_#{service.name}".to_sym] = latency_alarm_ref
1035
-
1036
- # Connection error alarm
1037
- error_alarm_ref = aws_cloudwatch_metric_alarm(
1038
- component_resource_name(name, :alarm_errors, service.name.to_sym),
1039
- {
1040
- alarm_name: "#{name}-#{service.name}-connection-errors",
1041
- comparison_operator: "GreaterThanThreshold",
1042
- evaluation_periods: "2",
1043
- metric_name: "TargetConnectionErrorCount",
1044
- namespace: "AWS/AppMesh",
1045
- period: "300",
1046
- statistic: "Sum",
1047
- threshold: "10",
1048
- alarm_description: "Service #{service.name} connection errors",
1049
- dimensions: {
1050
- MeshName: attrs.mesh_name,
1051
- VirtualNodeName: service.name
1052
- },
1053
- tags: tags
1054
- }
1055
- )
1056
- alarms["errors_#{service.name}".to_sym] = error_alarm_ref
1057
- end
1058
- observability_resources[:alarms] = alarms
1059
-
1060
- observability_resources
1061
- end
1062
-
1063
- def create_security_infrastructure(name, attrs, mesh_ref, tags)
1064
- security_resources = {}
1065
-
1066
- # Create ACM Private CA if not provided
1067
- if attrs.security.mtls_enabled && !attrs.security.certificate_authority_arn
1068
- ca_ref = aws_acmpca_certificate_authority(
1069
- component_resource_name(name, :private_ca),
1070
- {
1071
- certificate_authority_configuration: {
1072
- key_algorithm: "RSA_4096",
1073
- signing_algorithm: "SHA512WITHRSA",
1074
- subject: {
1075
- common_name: "#{attrs.mesh_name}.ca"
1076
- }
1077
- },
1078
- type: "ROOT",
1079
- tags: tags
1080
- }
1081
- )
1082
- security_resources[:ca] = ca_ref
1083
- end
1084
-
1085
- # Create IAM roles for service authentication
1086
- if attrs.security.service_auth_enabled
1087
- service_roles = {}
1088
-
1089
- attrs.services.each do |service|
1090
- role_ref = aws_iam_role(
1091
- component_resource_name(name, :service_role, service.name.to_sym),
1092
- {
1093
- name: "#{name}-${service.name}-role",
1094
- assume_role_policy: JSON.generate({
1095
- Version: "2012-10-17",
1096
- Statement: [{
1097
- Effect: "Allow",
1098
- Principal: {
1099
- Service: "ecs-tasks.amazonaws.com"
1100
- },
1101
- Action: "sts:AssumeRole",
1102
- Condition: {
1103
- StringEquals: {
1104
- "sts:ExternalId": service.name
1105
- }
1106
- }
1107
- }]
1108
- }),
1109
- tags: tags.merge(Service: service.name)
1110
- }
1111
- )
1112
- service_roles[service.name.to_sym] = role_ref
1113
-
1114
- # Attach App Mesh policy
1115
- policy_attachment_ref = aws_iam_role_policy_attachment(
1116
- component_resource_name(name, :service_policy, service.name.to_sym),
1117
- {
1118
- role: role_ref.name,
1119
- policy_arn: "arn:aws:iam::aws:policy/AWSAppMeshEnvoyAccess"
1120
- }
1121
- )
1122
- security_resources["policy_#{service.name}".to_sym] = policy_attachment_ref
1123
- end
1124
-
1125
- security_resources[:service_roles] = service_roles
1126
- end
1127
-
1128
- # Create Secrets Manager secrets for sensitive data
1129
- if attrs.security.secrets_manager_integration
1130
- secrets = {}
1131
-
1132
- attrs.services.each do |service|
1133
- secret_ref = aws_secretsmanager_secret(
1134
- component_resource_name(name, :service_secret, service.name.to_sym),
1135
- {
1136
- name: "#{name}/#{service.name}/config",
1137
- description: "Configuration secrets for #{service.name}",
1138
- tags: tags.merge(Service: service.name)
1139
- }
1140
- )
1141
- secrets[service.name.to_sym] = secret_ref
1142
- end
1143
-
1144
- security_resources[:secrets] = secrets
1145
- end
1146
-
1147
- security_resources
1148
- end
1149
-
1150
- def create_resilience_infrastructure(name, attrs, resources, tags)
1151
- resilience_resources = {}
1152
-
1153
- # Create FIS experiment templates for chaos testing
1154
- if attrs.resilience.chaos_testing_enabled
1155
- # Create IAM role for FIS
1156
- fis_role_ref = aws_iam_role(
1157
- component_resource_name(name, :fis_role),
1158
- {
1159
- name: "#{name}-fis-role",
1160
- assume_role_policy: JSON.generate({
1161
- Version: "2012-10-17",
1162
- Statement: [{
1163
- Effect: "Allow",
1164
- Principal: { Service: "fis.amazonaws.com" },
1165
- Action: "sts:AssumeRole"
1166
- }]
1167
- }),
1168
- tags: tags
1169
- }
1170
- )
1171
- resilience_resources[:fis_role] = fis_role_ref
1172
-
1173
- # Create experiment template
1174
- experiment_ref = aws_fis_experiment_template(
1175
- component_resource_name(name, :chaos_experiment),
1176
- {
1177
- description: "Service mesh chaos testing",
1178
- role_arn: fis_role_ref.arn,
1179
-
1180
- stop_condition: [{
1181
- source: "aws:cloudwatch:alarm",
1182
- value: "arn:aws:cloudwatch:*:*:alarm:#{name}-*"
1183
- }],
1184
-
1185
- action: {
1186
- inject_latency: {
1187
- action_id: "aws:network:disrupt-connectivity",
1188
- description: "Inject network latency",
1189
- parameters: {
1190
- duration: "PT5M",
1191
- scope: "SOME",
1192
- percentage: "50"
1193
- },
1194
- target: {
1195
- key: "Targets",
1196
- value: "service-instances"
1197
- }
1198
- }
1199
- },
1200
-
1201
- target: {
1202
- "service-instances": {
1203
- resource_type: "aws:ecs:task",
1204
- selection_mode: "PERCENT(25)",
1205
- resource_tag: {
1206
- ServiceMesh: attrs.mesh_name
1207
- }
1208
- }
1209
- },
1210
-
1211
- tags: tags
1212
- }
1213
- )
1214
- resilience_resources[:experiment] = experiment_ref
1215
- end
1216
-
1217
- resilience_resources
1218
- end
1219
-
1220
- def extract_connectivity_type(attrs)
1221
- types = []
1222
-
1223
- types << "Transit Gateway" if attrs.cross_region.transit_gateway_enabled
1224
- types << "VPC Peering" if attrs.cross_region.peering_enabled
1225
- types << "PrivateLink" if attrs.cross_region.private_link_enabled
1226
- types << "Inter-region TLS" if attrs.cross_region.inter_region_tls_enabled
1227
-
1228
- types.join(", ")
1229
- end
1230
-
1231
- def extract_gateway_endpoints(gateway_resources)
1232
- return {} unless gateway_resources
1233
-
1234
- endpoints = {}
1235
-
1236
- if gateway_resources[:nlb]
1237
- endpoints[:load_balancer] = gateway_resources[:nlb].dns_name
1238
- end
1239
-
1240
- if gateway_resources[:ingress]
1241
- endpoints[:ingress_gateway] = "ingress-gateway.mesh"
1242
- end
1243
-
1244
- if gateway_resources[:egress]
1245
- endpoints[:egress_gateway] = "egress-gateway.mesh"
1246
- end
1247
-
1248
- endpoints
1249
- end
1250
-
1251
- def estimate_service_mesh_cost(attrs, resources)
1252
- cost = 0.0
1253
-
1254
- # App Mesh costs
1255
- # Virtual nodes
1256
- cost += attrs.services.length * 0.50 # $0.50 per virtual node per month
1257
-
1258
- # Virtual services
1259
- cost += attrs.services.length * 0.25 # $0.25 per virtual service per month
1260
-
1261
- # Data processing (estimate 1TB/month across all services)
1262
- cost += 0.005 * 1000 # $0.005 per GB
1263
-
1264
- # Cloud Map costs
1265
- cost += 1.00 # Namespace
1266
- cost += attrs.services.length * 0.50 # Service discovery registrations
1267
-
1268
- # Transit Gateway costs for multi-region
1269
- if attrs.cross_region.transit_gateway_enabled && attrs.regions.length > 1
1270
- cost += attrs.regions.length * 36 # $0.05 per hour per TGW
1271
- cost += attrs.regions.length * (attrs.regions.length - 1) * 20 # Attachments
1272
- end
1273
-
1274
- # VPC endpoints
1275
- cost += attrs.regions.length * 2 * 7.20 # App Mesh and Cloud Map endpoints
1276
-
1277
- # Observability costs
1278
- if attrs.observability.xray_enabled
1279
- # X-Ray traces (estimate 1M traces/month)
1280
- cost += 5.00 # First million traces
1281
- end
1282
-
1283
- if attrs.observability.cloudwatch_metrics_enabled
1284
- # Custom metrics
1285
- cost += attrs.services.length * 5 * 0.30 # 5 metrics per service
1286
- end
1287
-
1288
- if attrs.observability.access_logging_enabled
1289
- # Log ingestion and storage
1290
- cost += attrs.services.length * 10 * 0.50 # 10GB per service
1291
- end
1292
-
1293
- # Gateway costs (if using NLB)
1294
- if resources[:gateways] && resources[:gateways][:nlb]
1295
- cost += 22.50 # NLB cost
1296
- end
1297
-
1298
- # Certificate costs for mTLS
1299
- if attrs.security.mtls_enabled
1300
- cost += 400.00 # ACM Private CA
1301
- cost += attrs.services.length * 0.75 # Certificates
1302
- end
1303
-
1304
- cost.round(2)
1305
- end
1306
- end
1307
- end