@aws/nx-plugin 1.0.0-rc.33 → 1.0.0-rc.34
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.
- package/LICENSE-THIRD-PARTY +28 -41
- package/generators.json +27 -0
- package/package.json +6 -6
- package/src/connection/generator.js +12 -1
- package/src/connection/generator.js.map +1 -1
- package/src/connection/supported-connections.d.ts +10 -1
- package/src/connection/supported-connections.js +13 -0
- package/src/connection/supported-connections.js.map +1 -1
- package/src/infra/app/__snapshots__/generator.spec.ts.snap +6 -6
- package/src/open-api/ts-client/__snapshots__/generator.complex-types.spec.ts.snap +12 -12
- package/src/open-api/ts-client/__snapshots__/generator.composite-types.spec.ts.snap +74 -10
- package/src/open-api/ts-client/__snapshots__/generator.content-type.spec.ts.snap +22 -4
- package/src/open-api/ts-client/__snapshots__/generator.duplicate-types.spec.ts.snap +53 -8
- package/src/open-api/ts-client/__snapshots__/generator.edge-cases.spec.ts.snap +32 -4
- package/src/open-api/ts-client/__snapshots__/generator.fast-api-gaps.spec.ts.snap +736 -0
- package/src/open-api/ts-client/__snapshots__/generator.fast-api.spec.ts.snap +86 -11
- package/src/open-api/ts-client/__snapshots__/generator.multipart.spec.ts.snap +21 -3
- package/src/open-api/ts-client/__snapshots__/generator.primitive-types.spec.ts.snap +2 -2
- package/src/open-api/ts-client/__snapshots__/generator.request.spec.ts.snap +6 -6
- package/src/open-api/ts-client/__snapshots__/generator.reserved-keywords.spec.ts.snap +2 -2
- package/src/open-api/ts-client/__snapshots__/generator.spec-compliance.spec.ts.snap +1883 -0
- package/src/open-api/ts-client/__snapshots__/generator.tags.spec.ts.snap +4 -4
- package/src/open-api/ts-client/files/client.gen.ts.template +195 -12
- package/src/open-api/ts-client/files/types.gen.ts.template +2 -0
- package/src/open-api/ts-client/generator.js +22 -1
- package/src/open-api/ts-client/generator.js.map +1 -1
- package/src/open-api/utils/codegen-data/languages.js +6 -0
- package/src/open-api/utils/codegen-data/languages.js.map +1 -1
- package/src/open-api/utils/codegen-data/types.d.ts +16 -1
- package/src/open-api/utils/codegen-data/types.js.map +1 -1
- package/src/open-api/utils/codegen-data.js +71 -0
- package/src/open-api/utils/codegen-data.js.map +1 -1
- package/src/open-api/utils/normalise.js +53 -8
- package/src/open-api/utils/normalise.js.map +1 -1
- package/src/open-api/utils/parser.js +48 -15
- package/src/open-api/utils/parser.js.map +1 -1
- package/src/preset/__snapshots__/generator.spec.ts.snap +4 -2
- package/src/py/agent/__snapshots__/generator.frameworks.spec.ts.snap +1 -1
- package/src/py/rdb/__snapshots__/generator.spec.ts.snap +2038 -0
- package/src/py/rdb/agent-connection/__snapshots__/generator.spec.ts.snap +104 -0
- package/src/py/rdb/agent-connection/generator.d.ts +10 -0
- package/src/py/rdb/agent-connection/generator.js +46 -0
- package/src/py/rdb/agent-connection/generator.js.map +1 -0
- package/src/py/rdb/agent-connection/schema.d.js +8 -0
- package/src/py/rdb/agent-connection/schema.d.js.map +1 -0
- package/src/py/rdb/agent-connection/schema.d.ts +15 -0
- package/src/py/rdb/agent-connection/schema.json +27 -0
- package/src/py/rdb/fast-api-connection/__snapshots__/generator.spec.ts.snap +44 -0
- package/src/py/rdb/fast-api-connection/files/__apiModuleName__/dependencies/__rdbNameSnake__.py.template +14 -0
- package/src/py/rdb/fast-api-connection/generator.d.ts +10 -0
- package/src/py/rdb/fast-api-connection/generator.js +54 -0
- package/src/py/rdb/fast-api-connection/generator.js.map +1 -0
- package/src/py/rdb/fast-api-connection/schema.d.js +8 -0
- package/src/py/rdb/fast-api-connection/schema.d.js.map +1 -0
- package/src/py/rdb/fast-api-connection/schema.d.ts +13 -0
- package/src/py/rdb/fast-api-connection/schema.json +23 -0
- package/src/py/rdb/files/Dockerfile.create-db-user.template +10 -0
- package/src/py/rdb/files/Dockerfile.migration.template +10 -0
- package/src/py/rdb/files/__name__/__init__.py.template +3 -0
- package/src/py/rdb/files/__name__/connection.py.template +55 -0
- package/src/py/rdb/files/__name__/create_db_user_handler.py.template +97 -0
- package/src/py/rdb/files/__name__/migration_handler.py.template +36 -0
- package/src/py/rdb/files/__name__/models/__init__.py.template +3 -0
- package/src/py/rdb/files/__name__/models/example.py.template +8 -0
- package/src/py/rdb/files/__name__/utils.py.template +104 -0
- package/src/py/rdb/files/alembic.ini.template +38 -0
- package/src/py/rdb/files/config.json.template +14 -0
- package/src/py/rdb/files/migrations/env.py.template +80 -0
- package/src/py/rdb/files/migrations/script.py.mako.template +28 -0
- package/src/py/rdb/generator.d.ts +6 -0
- package/src/py/rdb/generator.js +263 -0
- package/src/py/rdb/generator.js.map +1 -0
- package/src/py/rdb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +101 -0
- package/src/py/rdb/mcp-server-connection/generator.d.ts +10 -0
- package/src/py/rdb/mcp-server-connection/generator.js +46 -0
- package/src/py/rdb/mcp-server-connection/generator.js.map +1 -0
- package/src/py/rdb/mcp-server-connection/schema.d.js +8 -0
- package/src/py/rdb/mcp-server-connection/schema.d.js.map +1 -0
- package/src/py/rdb/mcp-server-connection/schema.d.ts +15 -0
- package/src/py/rdb/mcp-server-connection/schema.json +27 -0
- package/src/py/rdb/schema.d.js +6 -0
- package/src/py/rdb/schema.d.js.map +1 -0
- package/src/py/rdb/schema.d.ts +16 -0
- package/src/py/rdb/schema.json +77 -0
- package/src/py/rdb/utils.d.ts +6 -0
- package/src/py/rdb/utils.js +16 -0
- package/src/py/rdb/utils.js.map +1 -0
- package/src/sdk/py.d.ts +2 -0
- package/src/sdk/py.js +1 -0
- package/src/sdk/py.js.map +1 -1
- package/src/ts/rdb/__snapshots__/generator.spec.ts.snap +145 -173
- package/src/ts/rdb/generator.js +4 -3
- package/src/ts/rdb/generator.js.map +1 -1
- package/src/ts/rdb/schema.json +1 -1
- package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +16 -16
- package/src/utils/rdb-constructs/files/cdk/app/dbs/__nameKebabCase__.ts.template +58 -14
- package/src/utils/rdb-constructs/files/cdk/core/rdb/aurora.ts.template +68 -78
- package/src/utils/rdb-constructs/files/terraform/app/dbs/__nameKebabCase__/__nameKebabCase__.tf.template +88 -8
- package/src/utils/rdb-constructs/files/terraform/core/rdb/aurora/aurora.tf.template +5 -32
- package/src/utils/rdb-constructs/rdb-constructs.d.ts +11 -1
- package/src/utils/rdb-constructs/rdb-constructs.js.map +1 -1
- package/src/utils/shared-constructs.js +9 -21
- package/src/utils/shared-constructs.js.map +1 -1
- package/src/utils/shared-rdb-scripts.js +5 -1
- package/src/utils/shared-rdb-scripts.js.map +1 -1
- package/src/utils/versions.d.ts +34 -30
- package/src/utils/versions.js +34 -30
- package/src/utils/versions.js.map +1 -1
- package/src/utils/files/terraform/scripts/reset-runtime-config.ts.template +0 -25
|
@@ -120,16 +120,26 @@ variable "tags" {
|
|
|
120
120
|
default = {}
|
|
121
121
|
}
|
|
122
122
|
|
|
123
|
-
variable "
|
|
123
|
+
variable "migration_docker_image_tag" {
|
|
124
124
|
description = "Docker image tag for the migration handler. Defaults to the tag built by the Nx docker target."
|
|
125
125
|
type = string
|
|
126
|
-
default = "<%=
|
|
126
|
+
default = "<%= migrationDockerImageTag %>"
|
|
127
127
|
}
|
|
128
128
|
|
|
129
|
+
<%_ if (framework === 'sqlmodel') { _%>
|
|
130
|
+
variable "create_db_user_docker_image_tag" {
|
|
131
|
+
description = "Docker image tag for the Python create-db-user handler. Defaults to the tag built by the Nx docker target."
|
|
132
|
+
type = string
|
|
133
|
+
default = "<%= createDbUserDockerImageTag %>"
|
|
134
|
+
}
|
|
135
|
+
<%_ } _%>
|
|
136
|
+
|
|
137
|
+
<%_ if (framework !== 'sqlmodel') { _%>
|
|
129
138
|
variable "asset_bucket_name" {
|
|
130
139
|
description = "Name of the shared asset S3 bucket used to stage the Lambda deployment zip. Instantiate the `core/asset-bucket` module once per deployment and pass its `bucket_name` output here."
|
|
131
140
|
type = string
|
|
132
141
|
}
|
|
142
|
+
<%_ } _%>
|
|
133
143
|
|
|
134
144
|
data "aws_region" "current" {}
|
|
135
145
|
data "aws_caller_identity" "current" {}
|
|
@@ -143,7 +153,9 @@ resource "random_string" "suffix" {
|
|
|
143
153
|
locals {
|
|
144
154
|
config = jsondecode(file("${path.module}/../../../../../../../<%= projectRoot %>/config.json"))
|
|
145
155
|
runtime_config_key = local.config.runtimeConfigKey
|
|
156
|
+
<%_ if (framework !== 'sqlmodel') { _%>
|
|
146
157
|
create_db_user_bundle_path = "${path.module}/../../../../../../../<%- createDbUserBundleDir %>"
|
|
158
|
+
<%_ } _%>
|
|
147
159
|
migration_function_name = "<%= nameKebabCase %>-migration-${random_string.suffix.result}"
|
|
148
160
|
create_db_user_function_name = "<%= nameKebabCase %>-create-db-user-${random_string.suffix.result}"
|
|
149
161
|
database_runtime_user = "db_${random_string.suffix.result}"
|
|
@@ -183,6 +195,22 @@ resource "aws_iam_role_policy" "proxy_db_user_connect" {
|
|
|
183
195
|
policy = jsonencode({
|
|
184
196
|
Version = "2012-10-17"
|
|
185
197
|
Statement = [
|
|
198
|
+
<%_ if (engine === 'mysql' && framework !== 'sqlmodel') { _%>
|
|
199
|
+
{
|
|
200
|
+
Effect = "Allow"
|
|
201
|
+
Action = [
|
|
202
|
+
"secretsmanager:GetSecretValue"
|
|
203
|
+
]
|
|
204
|
+
Resource = [module.aurora.secret_arn]
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
Effect = "Allow"
|
|
208
|
+
Action = [
|
|
209
|
+
"kms:Decrypt"
|
|
210
|
+
]
|
|
211
|
+
Resource = [module.aurora.kms_key_arn]
|
|
212
|
+
}
|
|
213
|
+
<%_ } else { _%>
|
|
186
214
|
{
|
|
187
215
|
Effect = "Allow"
|
|
188
216
|
Action = ["rds-db:connect"]
|
|
@@ -190,10 +218,12 @@ resource "aws_iam_role_policy" "proxy_db_user_connect" {
|
|
|
190
218
|
"arn:aws:rds-db:${data.aws_region.current.region}:${data.aws_caller_identity.current.account_id}:dbuser:${module.aurora.cluster_resource_id}/${local.database_runtime_user}"
|
|
191
219
|
]
|
|
192
220
|
}
|
|
221
|
+
<%_ } _%>
|
|
193
222
|
]
|
|
194
223
|
})
|
|
195
224
|
}
|
|
196
225
|
|
|
226
|
+
<%_ if (framework !== 'sqlmodel') { _%>
|
|
197
227
|
data "archive_file" "create_db_user_zip" {
|
|
198
228
|
type = "zip"
|
|
199
229
|
source_dir = local.create_db_user_bundle_path
|
|
@@ -207,6 +237,7 @@ resource "aws_s3_object" "create_db_user_zip" {
|
|
|
207
237
|
source_hash = data.archive_file.create_db_user_zip.output_base64sha256
|
|
208
238
|
etag = data.archive_file.create_db_user_zip.output_md5
|
|
209
239
|
}
|
|
240
|
+
<%_ } _%>
|
|
210
241
|
|
|
211
242
|
module "add_rdb_to_runtime_config" {
|
|
212
243
|
source = "../../../core/runtime-config/entry"
|
|
@@ -274,33 +305,55 @@ resource "aws_ecr_repository_policy" "migration_handler" {
|
|
|
274
305
|
}
|
|
275
306
|
|
|
276
307
|
data "external" "docker_digest" {
|
|
277
|
-
program = ["sh", "-c", "echo '{\"digest\":\"'$(<%= containerEngine %> inspect ${var.
|
|
308
|
+
program = ["sh", "-c", "echo '{\"digest\":\"'$(<%= containerEngine %> inspect ${var.migration_docker_image_tag} --format '{{.Id}}')'\"}' "]
|
|
278
309
|
}
|
|
279
310
|
|
|
280
311
|
locals {
|
|
281
312
|
# Content-based, immutable image tag derived from the local image digest
|
|
282
313
|
image_tag = replace(data.external.docker_digest.result.digest, "sha256:", "")
|
|
283
314
|
}
|
|
315
|
+
<%_ if (framework === 'sqlmodel') { _%>
|
|
316
|
+
data "external" "create_db_user_docker_digest" {
|
|
317
|
+
program = ["sh", "-c", "echo '{\"digest\":\"'$(<%= containerEngine %> inspect ${var.create_db_user_docker_image_tag} --format '{{.Id}}')'\"}' "]
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
locals {
|
|
321
|
+
create_db_user_image_tag = replace(data.external.create_db_user_docker_digest.result.digest, "sha256:", "")
|
|
322
|
+
}
|
|
323
|
+
<%_ } _%>
|
|
284
324
|
|
|
285
325
|
resource "null_resource" "docker_publish" {
|
|
286
326
|
triggers = {
|
|
287
327
|
docker_digest = data.external.docker_digest.result.digest
|
|
288
328
|
repository_url = aws_ecr_repository.migration_handler.repository_url
|
|
289
|
-
|
|
329
|
+
migration_docker_image_tag = var.migration_docker_image_tag
|
|
290
330
|
image_tag = local.image_tag
|
|
331
|
+
<%_ if (framework === 'sqlmodel') { _%>
|
|
332
|
+
create_db_user_docker_digest = data.external.create_db_user_docker_digest.result.digest
|
|
333
|
+
create_db_user_docker_image_tag = var.create_db_user_docker_image_tag
|
|
334
|
+
create_db_user_image_tag = local.create_db_user_image_tag
|
|
335
|
+
<%_ } _%>
|
|
291
336
|
}
|
|
292
337
|
|
|
293
338
|
provisioner "local-exec" {
|
|
294
339
|
command = <<-EOT
|
|
295
340
|
aws ecr get-login-password --region "$AWS_REGION" | <%= containerEngine %> login --username AWS --password-stdin "$REPOSITORY_URL"
|
|
296
|
-
<%= containerEngine %> tag "$
|
|
341
|
+
<%= containerEngine %> tag "$MIGRATION_DOCKER_IMAGE_TAG" "$REPOSITORY_URL:$IMAGE_TAG"
|
|
297
342
|
<%= containerEngine %> push "$REPOSITORY_URL:$IMAGE_TAG"
|
|
343
|
+
<%_ if (framework === 'sqlmodel') { _%>
|
|
344
|
+
<%= containerEngine %> tag "$CREATE_DB_USER_DOCKER_IMAGE_TAG" "$REPOSITORY_URL:create-db-user-$CREATE_DB_USER_IMAGE_TAG"
|
|
345
|
+
<%= containerEngine %> push "$REPOSITORY_URL:create-db-user-$CREATE_DB_USER_IMAGE_TAG"
|
|
346
|
+
<%_ } _%>
|
|
298
347
|
EOT
|
|
299
348
|
environment = {
|
|
300
349
|
AWS_REGION = data.aws_region.current.region
|
|
301
350
|
REPOSITORY_URL = self.triggers.repository_url
|
|
302
|
-
|
|
351
|
+
MIGRATION_DOCKER_IMAGE_TAG = self.triggers.migration_docker_image_tag
|
|
303
352
|
IMAGE_TAG = self.triggers.image_tag
|
|
353
|
+
<%_ if (framework === 'sqlmodel') { _%>
|
|
354
|
+
CREATE_DB_USER_DOCKER_IMAGE_TAG = self.triggers.create_db_user_docker_image_tag
|
|
355
|
+
CREATE_DB_USER_IMAGE_TAG = self.triggers.create_db_user_image_tag
|
|
356
|
+
<%_ } _%>
|
|
304
357
|
}
|
|
305
358
|
}
|
|
306
359
|
|
|
@@ -512,6 +565,18 @@ resource "aws_lambda_function" "create_db_user" {
|
|
|
512
565
|
#checkov:skip=CKV_AWS_115:Concurrent execution limit not required for the create-db-user handler
|
|
513
566
|
#checkov:skip=CKV_AWS_173:Lambda environment variables encrypted by managed key
|
|
514
567
|
#checkov:skip=CKV_AWS_272:Code signing not configured as deployment packages are built and deployed within the same pipeline
|
|
568
|
+
<%_ if (framework === 'sqlmodel') { _%>
|
|
569
|
+
package_type = "Image"
|
|
570
|
+
image_uri = "${aws_ecr_repository.migration_handler.repository_url}:create-db-user-${local.create_db_user_image_tag}"
|
|
571
|
+
function_name = local.create_db_user_function_name
|
|
572
|
+
role = aws_iam_role.create_db_user.arn
|
|
573
|
+
timeout = 300
|
|
574
|
+
architectures = ["arm64"]
|
|
575
|
+
|
|
576
|
+
image_config {
|
|
577
|
+
command = ["<%= databasePackageAlias %>.create_db_user_handler.handler"]
|
|
578
|
+
}
|
|
579
|
+
<%_ } else { _%>
|
|
515
580
|
s3_bucket = aws_s3_object.create_db_user_zip.bucket
|
|
516
581
|
s3_key = aws_s3_object.create_db_user_zip.key
|
|
517
582
|
s3_object_version = aws_s3_object.create_db_user_zip.version_id
|
|
@@ -522,6 +587,7 @@ resource "aws_lambda_function" "create_db_user" {
|
|
|
522
587
|
runtime = "nodejs24.x"
|
|
523
588
|
timeout = 300
|
|
524
589
|
architectures = ["arm64"]
|
|
590
|
+
<%_ } _%>
|
|
525
591
|
|
|
526
592
|
tracing_config {
|
|
527
593
|
mode = "Active"
|
|
@@ -535,14 +601,20 @@ resource "aws_lambda_function" "create_db_user" {
|
|
|
535
601
|
environment {
|
|
536
602
|
variables = {
|
|
537
603
|
DATABASE_SECRET_ARN = module.aurora.secret_arn
|
|
604
|
+
<%_ if (framework === 'prisma') { _%>
|
|
538
605
|
NODE_EXTRA_CA_CERTS = "/var/runtime/ca-cert.pem"
|
|
606
|
+
<%_ } _%>
|
|
539
607
|
}
|
|
540
608
|
}
|
|
541
609
|
|
|
542
610
|
tags = var.tags
|
|
543
611
|
|
|
544
612
|
depends_on = [
|
|
613
|
+
<%_ if (framework === 'sqlmodel') { _%>
|
|
614
|
+
null_resource.docker_publish,
|
|
615
|
+
<%_ } else { _%>
|
|
545
616
|
aws_s3_object.create_db_user_zip,
|
|
617
|
+
<%_ } _%>
|
|
546
618
|
aws_iam_role_policy_attachment.create_db_user_basic_execution,
|
|
547
619
|
aws_iam_role_policy_attachment.create_db_user_vpc_access,
|
|
548
620
|
aws_iam_role_policy_attachment.create_db_user_xray,
|
|
@@ -557,7 +629,11 @@ resource "null_resource" "create_db_user_trigger" {
|
|
|
557
629
|
cluster_arn = module.aurora.cluster_arn
|
|
558
630
|
function_name = aws_lambda_function.create_db_user.function_name
|
|
559
631
|
db_user = local.database_runtime_user
|
|
632
|
+
<%_ if (framework === 'sqlmodel') { _%>
|
|
633
|
+
bundle_hash = data.external.create_db_user_docker_digest.result.digest
|
|
634
|
+
<%_ } else { _%>
|
|
560
635
|
bundle_hash = data.archive_file.create_db_user_zip.output_base64sha256
|
|
636
|
+
<%_ } _%>
|
|
561
637
|
}
|
|
562
638
|
|
|
563
639
|
provisioner "local-exec" {
|
|
@@ -634,7 +710,7 @@ resource "null_resource" "migration_trigger" {
|
|
|
634
710
|
cluster_arn = module.aurora.cluster_arn
|
|
635
711
|
database_ready = module.aurora.database_ready
|
|
636
712
|
function_name = aws_lambda_function.migration_handler.function_name
|
|
637
|
-
<%_ if (engine !== 'mysql') { _%>
|
|
713
|
+
<%_ if (engine !== 'mysql' && framework !== 'sqlmodel') { _%>
|
|
638
714
|
db_user = local.database_runtime_user
|
|
639
715
|
<%_ } _%>
|
|
640
716
|
}
|
|
@@ -689,6 +765,11 @@ output "proxy_resource_id" {
|
|
|
689
765
|
value = module.aurora.proxy_resource_id
|
|
690
766
|
}
|
|
691
767
|
|
|
768
|
+
output "connect_resource_id" {
|
|
769
|
+
description = "Resource ID to use in IAM rds-db:connect policies for the application database user. Resolves to the RDS Proxy resource ID when the proxy is enabled (the default), or the Aurora cluster resource ID when it is disabled — connecting through the proxy and connecting directly to the cluster are different IAM permission boundaries."
|
|
770
|
+
value = module.aurora.connect_resource_id
|
|
771
|
+
}
|
|
772
|
+
|
|
692
773
|
output "kms_key_arn" {
|
|
693
774
|
description = "ARN of the KMS key protecting Aurora and the admin credentials secret, used to grant decrypt access alongside secret_arn."
|
|
694
775
|
value = module.aurora.kms_key_arn
|
|
@@ -723,4 +804,3 @@ output "database_runtime_user" {
|
|
|
723
804
|
description = "Application database user created for IAM-authenticated access."
|
|
724
805
|
value = local.database_runtime_user
|
|
725
806
|
}
|
|
726
|
-
|
|
@@ -454,27 +454,6 @@ resource "aws_iam_role" "proxy" {
|
|
|
454
454
|
})
|
|
455
455
|
}
|
|
456
456
|
|
|
457
|
-
resource "aws_iam_role_policy" "proxy_secret_access" {
|
|
458
|
-
count = var.enable_rds_proxy ? 1 : 0
|
|
459
|
-
role = aws_iam_role.proxy[0].name
|
|
460
|
-
|
|
461
|
-
policy = jsonencode({
|
|
462
|
-
Version = "2012-10-17"
|
|
463
|
-
Statement = [
|
|
464
|
-
{
|
|
465
|
-
Effect = "Allow"
|
|
466
|
-
Action = ["secretsmanager:GetSecretValue"]
|
|
467
|
-
Resource = [aws_secretsmanager_secret.credentials.arn]
|
|
468
|
-
},
|
|
469
|
-
{
|
|
470
|
-
Effect = "Allow"
|
|
471
|
-
Action = ["kms:Decrypt"]
|
|
472
|
-
Resource = [aws_kms_key.database.arn]
|
|
473
|
-
}
|
|
474
|
-
]
|
|
475
|
-
})
|
|
476
|
-
}
|
|
477
|
-
|
|
478
457
|
resource "aws_security_group" "proxy" {
|
|
479
458
|
#checkov:skip=CKV2_AWS_5:Security group is attached to aws_db_proxy.aurora; Checkov cannot resolve count-conditional cross-resource references
|
|
480
459
|
count = var.enable_rds_proxy ? 1 : 0
|
|
@@ -498,17 +477,6 @@ resource "aws_db_proxy" "aurora" {
|
|
|
498
477
|
vpc_subnet_ids = var.subnet_ids
|
|
499
478
|
vpc_security_group_ids = [aws_security_group.proxy[0].id]
|
|
500
479
|
require_tls = true
|
|
501
|
-
|
|
502
|
-
auth {
|
|
503
|
-
auth_scheme = "SECRETS"
|
|
504
|
-
iam_auth = "REQUIRED"
|
|
505
|
-
secret_arn = aws_secretsmanager_secret.credentials.arn
|
|
506
|
-
}
|
|
507
|
-
|
|
508
|
-
depends_on = [
|
|
509
|
-
aws_iam_role_policy.proxy_secret_access,
|
|
510
|
-
aws_secretsmanager_secret_version.credentials,
|
|
511
|
-
]
|
|
512
480
|
}
|
|
513
481
|
|
|
514
482
|
resource "aws_db_proxy_default_target_group" "default" {
|
|
@@ -691,6 +659,11 @@ output "proxy_resource_id" {
|
|
|
691
659
|
value = var.enable_rds_proxy ? split(":", aws_db_proxy.aurora[0].arn)[6] : null
|
|
692
660
|
}
|
|
693
661
|
|
|
662
|
+
output "connect_resource_id" {
|
|
663
|
+
description = "Resource ID to use in IAM rds-db:connect policies for the application database user. Resolves to the RDS Proxy resource ID when the proxy is enabled (the default), or the Aurora cluster resource ID when it is disabled — connecting through the proxy and connecting directly to the cluster are different IAM permission boundaries."
|
|
664
|
+
value = var.enable_rds_proxy ? split(":", aws_db_proxy.aurora[0].arn)[6] : aws_rds_cluster.database.cluster_resource_id
|
|
665
|
+
}
|
|
666
|
+
|
|
694
667
|
output "cluster_endpoint" {
|
|
695
668
|
description = "Writer endpoint of the Aurora cluster or proxy."
|
|
696
669
|
value = var.enable_rds_proxy ? aws_db_proxy.aurora[0].endpoint : aws_rds_cluster.database.endpoint
|
|
@@ -15,8 +15,18 @@ export interface AddRdbConstructOptions {
|
|
|
15
15
|
adminUser: string;
|
|
16
16
|
engine: 'postgres' | 'mysql';
|
|
17
17
|
migrationBundleDir: string;
|
|
18
|
+
/**
|
|
19
|
+
* Node.js zip bundle directory for the create-db-user Lambda (ts#rdb).
|
|
20
|
+
* When absent the migration Docker image is reused with the
|
|
21
|
+
* `create_db_user_handler.handler` command (py#rdb).
|
|
22
|
+
*/
|
|
18
23
|
createDbUserBundleDir: string;
|
|
19
|
-
|
|
24
|
+
/** ORM framework used by the create-db-user Lambda. */
|
|
25
|
+
framework: 'prisma' | 'sqlmodel';
|
|
26
|
+
/** Local Docker tag for the Python create-db-user Lambda image. */
|
|
27
|
+
createDbUserDockerImageTag?: string;
|
|
28
|
+
/** Local Docker tag for the migration Lambda image. */
|
|
29
|
+
migrationDockerImageTag: string;
|
|
20
30
|
containerEngine: Containers;
|
|
21
31
|
}
|
|
22
32
|
export declare const addRdbInfra: (tree: Tree, options: AddRdbConstructOptions & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../packages/nx-plugin/src/utils/rdb-constructs/rdb-constructs.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport {\n generateFiles,\n joinPathFragments,\n OverwriteStrategy,\n type ProjectConfiguration,\n type Tree,\n updateJson,\n} from '@nx/devkit';\nimport { addStarExport } from '../ast';\nimport type { Containers } from '../containers';\nimport type { Iac } from '../iac';\nimport { esmVars } from '../module-format';\nimport { addDependencyToTargetIfNotPresent } from '../nx';\nimport {\n PACKAGES_DIR,\n SHARED_CONSTRUCTS_DIR,\n SHARED_TERRAFORM_DIR,\n} from '../shared-constructs-constants';\nimport { terraformProviderVersions } from '../versions';\n\nexport interface AddRdbConstructOptions {\n projectName: string;\n projectRoot: string;\n nameClassName: string;\n nameKebabCase: string;\n databasePackageAlias: string;\n databaseName: string;\n adminUser: string;\n engine: 'postgres' | 'mysql';\n migrationBundleDir: string;\n createDbUserBundleDir: string;\n
|
|
1
|
+
{"version":3,"sources":["../../../../../../packages/nx-plugin/src/utils/rdb-constructs/rdb-constructs.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport {\n generateFiles,\n joinPathFragments,\n OverwriteStrategy,\n type ProjectConfiguration,\n type Tree,\n updateJson,\n} from '@nx/devkit';\nimport { addStarExport } from '../ast';\nimport type { Containers } from '../containers';\nimport type { Iac } from '../iac';\nimport { esmVars } from '../module-format';\nimport { addDependencyToTargetIfNotPresent } from '../nx';\nimport {\n PACKAGES_DIR,\n SHARED_CONSTRUCTS_DIR,\n SHARED_TERRAFORM_DIR,\n} from '../shared-constructs-constants';\nimport { terraformProviderVersions } from '../versions';\n\nexport interface AddRdbConstructOptions {\n projectName: string;\n projectRoot: string;\n nameClassName: string;\n nameKebabCase: string;\n databasePackageAlias: string;\n databaseName: string;\n adminUser: string;\n engine: 'postgres' | 'mysql';\n migrationBundleDir: string;\n /**\n * Node.js zip bundle directory for the create-db-user Lambda (ts#rdb).\n * When absent the migration Docker image is reused with the\n * `create_db_user_handler.handler` command (py#rdb).\n */\n createDbUserBundleDir: string;\n /** ORM framework used by the create-db-user Lambda. */\n framework: 'prisma' | 'sqlmodel';\n /** Local Docker tag for the Python create-db-user Lambda image. */\n createDbUserDockerImageTag?: string;\n /** Local Docker tag for the migration Lambda image. */\n migrationDockerImageTag: string;\n containerEngine: Containers;\n}\n\nexport const addRdbInfra = async (\n tree: Tree,\n options: AddRdbConstructOptions & { iac: Iac },\n) => {\n if (options.iac === 'cdk') {\n await addRdbCdkConstructs(tree, options);\n } else if (options.iac === 'terraform') {\n addRdbTerraformModules(tree, options);\n } else {\n throw new Error(`Unsupported iac ${options.iac}`);\n }\n\n updateJson(\n tree,\n joinPathFragments(\n PACKAGES_DIR,\n options.iac === 'cdk' ? SHARED_CONSTRUCTS_DIR : SHARED_TERRAFORM_DIR,\n 'project.json',\n ),\n (config: ProjectConfiguration) => {\n addDependencyToTargetIfNotPresent(\n config,\n 'build',\n `${options.projectName}:build`,\n );\n return config;\n },\n );\n};\n\nexport const addRdbCdkConstructs = async (\n tree: Tree,\n options: AddRdbConstructOptions,\n) => {\n generateFiles(\n tree,\n joinPathFragments(import.meta.dirname, 'files', 'cdk', 'core', 'rdb'),\n joinPathFragments(\n PACKAGES_DIR,\n SHARED_CONSTRUCTS_DIR,\n 'src',\n 'core',\n 'rdb',\n ),\n { ...options, ...esmVars(tree) },\n {\n overwriteStrategy: OverwriteStrategy.KeepExisting,\n },\n );\n\n generateFiles(\n tree,\n joinPathFragments(import.meta.dirname, 'files', 'cdk', 'app', 'dbs'),\n joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR, 'src', 'app', 'dbs'),\n { ...options, ...esmVars(tree) },\n {\n overwriteStrategy: OverwriteStrategy.KeepExisting,\n },\n );\n\n await addStarExport(\n tree,\n joinPathFragments(\n PACKAGES_DIR,\n SHARED_CONSTRUCTS_DIR,\n 'src',\n 'core',\n 'index.ts',\n ),\n './rdb/aurora.js',\n );\n await addStarExport(\n tree,\n joinPathFragments(\n PACKAGES_DIR,\n SHARED_CONSTRUCTS_DIR,\n 'src',\n 'app',\n 'dbs',\n 'index.ts',\n ),\n `./${options.nameKebabCase}.js`,\n );\n await addStarExport(\n tree,\n joinPathFragments(\n PACKAGES_DIR,\n SHARED_CONSTRUCTS_DIR,\n 'src',\n 'app',\n 'index.ts',\n ),\n './dbs/index.js',\n );\n};\n\nexport const addRdbTerraformModules = (\n tree: Tree,\n options: AddRdbConstructOptions,\n) => {\n generateFiles(\n tree,\n joinPathFragments(import.meta.dirname, 'files', 'terraform', 'core', 'rdb'),\n joinPathFragments(PACKAGES_DIR, SHARED_TERRAFORM_DIR, 'src', 'core', 'rdb'),\n { ...terraformProviderVersions() },\n {\n overwriteStrategy: OverwriteStrategy.KeepExisting,\n },\n );\n\n generateFiles(\n tree,\n joinPathFragments(import.meta.dirname, 'files', 'terraform', 'app', 'dbs'),\n joinPathFragments(PACKAGES_DIR, SHARED_TERRAFORM_DIR, 'src', 'app', 'dbs'),\n { ...options, ...terraformProviderVersions() },\n {\n overwriteStrategy: OverwriteStrategy.KeepExisting,\n },\n );\n};\n"],"names":["generateFiles","joinPathFragments","OverwriteStrategy","updateJson","addStarExport","esmVars","addDependencyToTargetIfNotPresent","PACKAGES_DIR","SHARED_CONSTRUCTS_DIR","SHARED_TERRAFORM_DIR","terraformProviderVersions","addRdbInfra","tree","options","iac","addRdbCdkConstructs","addRdbTerraformModules","Error","config","projectName","dirname","overwriteStrategy","KeepExisting","nameKebabCase"],"mappings":"AAAA;;;CAGC,GACD,SACEA,aAAa,EACbC,iBAAiB,EACjBC,iBAAiB,EAGjBC,UAAU,QACL,aAAa;AACpB,SAASC,aAAa,QAAQ,YAAS;AAGvC,SAASC,OAAO,QAAQ,sBAAmB;AAC3C,SAASC,iCAAiC,QAAQ,WAAQ;AAC1D,SACEC,YAAY,EACZC,qBAAqB,EACrBC,oBAAoB,QACf,oCAAiC;AACxC,SAASC,yBAAyB,QAAQ,iBAAc;AA2BxD,OAAO,MAAMC,cAAc,OACzBC,MACAC;IAEA,IAAIA,QAAQC,GAAG,KAAK,OAAO;QACzB,MAAMC,oBAAoBH,MAAMC;IAClC,OAAO,IAAIA,QAAQC,GAAG,KAAK,aAAa;QACtCE,uBAAuBJ,MAAMC;IAC/B,OAAO;QACL,MAAM,IAAII,MAAM,CAAC,gBAAgB,EAAEJ,QAAQC,GAAG,EAAE;IAClD;IAEAX,WACES,MACAX,kBACEM,cACAM,QAAQC,GAAG,KAAK,QAAQN,wBAAwBC,sBAChD,iBAEF,CAACS;QACCZ,kCACEY,QACA,SACA,GAAGL,QAAQM,WAAW,CAAC,MAAM,CAAC;QAEhC,OAAOD;IACT;AAEJ,EAAE;AAEF,OAAO,MAAMH,sBAAsB,OACjCH,MACAC;IAEAb,cACEY,MACAX,kBAAkB,YAAYmB,OAAO,EAAE,SAAS,OAAO,QAAQ,QAC/DnB,kBACEM,cACAC,uBACA,OACA,QACA,QAEF;QAAE,GAAGK,OAAO;QAAE,GAAGR,QAAQO,KAAK;IAAC,GAC/B;QACES,mBAAmBnB,kBAAkBoB,YAAY;IACnD;IAGFtB,cACEY,MACAX,kBAAkB,YAAYmB,OAAO,EAAE,SAAS,OAAO,OAAO,QAC9DnB,kBAAkBM,cAAcC,uBAAuB,OAAO,OAAO,QACrE;QAAE,GAAGK,OAAO;QAAE,GAAGR,QAAQO,KAAK;IAAC,GAC/B;QACES,mBAAmBnB,kBAAkBoB,YAAY;IACnD;IAGF,MAAMlB,cACJQ,MACAX,kBACEM,cACAC,uBACA,OACA,QACA,aAEF;IAEF,MAAMJ,cACJQ,MACAX,kBACEM,cACAC,uBACA,OACA,OACA,OACA,aAEF,CAAC,EAAE,EAAEK,QAAQU,aAAa,CAAC,GAAG,CAAC;IAEjC,MAAMnB,cACJQ,MACAX,kBACEM,cACAC,uBACA,OACA,OACA,aAEF;AAEJ,EAAE;AAEF,OAAO,MAAMQ,yBAAyB,CACpCJ,MACAC;IAEAb,cACEY,MACAX,kBAAkB,YAAYmB,OAAO,EAAE,SAAS,aAAa,QAAQ,QACrEnB,kBAAkBM,cAAcE,sBAAsB,OAAO,QAAQ,QACrE;QAAE,GAAGC,2BAA2B;IAAC,GACjC;QACEW,mBAAmBnB,kBAAkBoB,YAAY;IACnD;IAGFtB,cACEY,MACAX,kBAAkB,YAAYmB,OAAO,EAAE,SAAS,aAAa,OAAO,QACpEnB,kBAAkBM,cAAcE,sBAAsB,OAAO,OAAO,QACpE;QAAE,GAAGI,OAAO;QAAE,GAAGH,2BAA2B;IAAC,GAC7C;QACEW,mBAAmBnB,kBAAkBoB,YAAY;IACnD;AAEJ,EAAE"}
|
|
@@ -56,27 +56,18 @@ export async function sharedConstructsGenerator(tree, options) {
|
|
|
56
56
|
directory: joinPathFragments(PACKAGES_DIR, 'common'),
|
|
57
57
|
type: 'library'
|
|
58
58
|
});
|
|
59
|
-
//
|
|
60
|
-
//
|
|
61
|
-
//
|
|
62
|
-
//
|
|
59
|
+
// `build` is a no-op orchestration target that produces no files of its
|
|
60
|
+
// own. Terraform writes runtime-config entries into
|
|
61
|
+
// `dist/{projectRoot}/runtime-config` at apply time, and other terraform
|
|
62
|
+
// projects contribute their own entries to the same directory. Without
|
|
63
|
+
// explicit outputs, Nx infers `dist/{projectRoot}` as this target's
|
|
64
|
+
// cached output and, on a cache hit, restores the cached copy over the
|
|
65
|
+
// freshly-applied config — wiping the very values consumers read. Declare
|
|
66
|
+
// no outputs so Nx never treats runtime config as a cacheable artifact.
|
|
63
67
|
updateJson(tree, joinPathFragments(PACKAGES_DIR, SHARED_TERRAFORM_DIR, 'project.json'), (projectConfig)=>{
|
|
64
68
|
projectConfig.targets ??= {};
|
|
65
|
-
projectConfig.targets['reset-runtime-config'] = {
|
|
66
|
-
executor: 'nx:run-commands',
|
|
67
|
-
options: {
|
|
68
|
-
command: 'tsx scripts/reset-runtime-config.ts',
|
|
69
|
-
cwd: '{projectRoot}',
|
|
70
|
-
env: {
|
|
71
|
-
DIST_DIR: '{workspaceRoot}/dist/{projectRoot}'
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
};
|
|
75
69
|
projectConfig.targets.build ??= {};
|
|
76
|
-
projectConfig.targets.build.
|
|
77
|
-
...(projectConfig.targets.build.dependsOn ?? []).filter((t)=>t !== 'reset-runtime-config'),
|
|
78
|
-
'reset-runtime-config'
|
|
79
|
-
];
|
|
70
|
+
projectConfig.targets.build.outputs = [];
|
|
80
71
|
return projectConfig;
|
|
81
72
|
});
|
|
82
73
|
tree.delete(joinPathFragments(terraformLibPath, 'src', 'main.tf'));
|
|
@@ -86,9 +77,6 @@ export async function sharedConstructsGenerator(tree, options) {
|
|
|
86
77
|
}, {
|
|
87
78
|
overwriteStrategy: OverwriteStrategy.KeepExisting
|
|
88
79
|
});
|
|
89
|
-
addDependenciesToPackageJson(tree, {}, withVersions([
|
|
90
|
-
'tsx'
|
|
91
|
-
]));
|
|
92
80
|
await formatFilesInSubtree(tree);
|
|
93
81
|
}
|
|
94
82
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../packages/nx-plugin/src/utils/shared-constructs.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport {\n addDependenciesToPackageJson,\n generateFiles,\n joinPathFragments,\n OverwriteStrategy,\n type ProjectConfiguration,\n type Tree,\n updateJson,\n} from '@nx/devkit';\nimport terraformProjectGenerator from '../terraform/project/generator';\nimport tsProjectGenerator from '../ts/lib/generator';\nimport { readAwsNxPluginConfig } from './config/utils';\nimport { formatFilesInSubtree } from './format';\nimport type { Iac } from './iac';\nimport { esmVars } from './module-format';\nimport { getNpmScopePrefix, toScopeAlias } from './npm-scope';\nimport { getPackageManagerDisplayCommands } from './pkg-manager';\nimport {\n PACKAGES_DIR,\n SHARED_CONSTRUCTS_DIR,\n SHARED_CONSTRUCTS_NAME,\n SHARED_TERRAFORM_DIR,\n SHARED_TERRAFORM_NAME,\n} from './shared-constructs-constants';\nimport { terraformProviderVersions, withVersions } from './versions';\n\nexport interface SharedConstructsGeneratorOptions {\n iac: Iac;\n}\n\nexport async function sharedConstructsGenerator(\n tree: Tree,\n options: SharedConstructsGeneratorOptions,\n) {\n const { iac } = options;\n const npmScopePrefix = getNpmScopePrefix(tree);\n updateGitignore(tree);\n\n if (iac === 'cdk') {\n if (\n !tree.exists(\n joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR, 'project.json'),\n )\n ) {\n await tsProjectGenerator(tree, {\n name: SHARED_CONSTRUCTS_NAME,\n directory: PACKAGES_DIR,\n subDirectory: SHARED_CONSTRUCTS_DIR,\n });\n tree.delete(\n joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR, 'src'),\n );\n generateFiles(\n tree,\n joinPathFragments(\n import.meta.dirname,\n 'files',\n SHARED_CONSTRUCTS_DIR,\n 'src',\n ),\n joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR, 'src'),\n {\n npmScopePrefix,\n scopeAlias: toScopeAlias(npmScopePrefix),\n tags: (await readAwsNxPluginConfig(tree))?.tags ?? [],\n ...esmVars(tree),\n },\n {\n overwriteStrategy: OverwriteStrategy.KeepExisting,\n },\n );\n generateFiles(\n tree,\n joinPathFragments(import.meta.dirname, 'files', 'common', 'readme'),\n joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR),\n {\n fullyQualifiedName: `${npmScopePrefix}${SHARED_CONSTRUCTS_NAME}`,\n name: SHARED_CONSTRUCTS_NAME,\n pkgMgrCmd: getPackageManagerDisplayCommands().exec,\n },\n {\n overwriteStrategy: OverwriteStrategy.Overwrite,\n },\n );\n addDependenciesToPackageJson(\n tree,\n withVersions(['constructs', 'aws-cdk-lib']),\n withVersions(['@types/node']),\n );\n await formatFilesInSubtree(tree);\n }\n }\n\n // Handle Terraform provider\n if (iac === 'terraform') {\n const terraformLibPath = joinPathFragments(\n PACKAGES_DIR,\n SHARED_TERRAFORM_DIR,\n );\n if (!tree.exists(joinPathFragments(terraformLibPath, 'project.json'))) {\n await terraformProjectGenerator(tree, {\n name: SHARED_TERRAFORM_NAME,\n directory: joinPathFragments(PACKAGES_DIR, 'common'),\n type: 'library',\n });\n\n //
|
|
1
|
+
{"version":3,"sources":["../../../../../packages/nx-plugin/src/utils/shared-constructs.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport {\n addDependenciesToPackageJson,\n generateFiles,\n joinPathFragments,\n OverwriteStrategy,\n type ProjectConfiguration,\n type Tree,\n updateJson,\n} from '@nx/devkit';\nimport terraformProjectGenerator from '../terraform/project/generator';\nimport tsProjectGenerator from '../ts/lib/generator';\nimport { readAwsNxPluginConfig } from './config/utils';\nimport { formatFilesInSubtree } from './format';\nimport type { Iac } from './iac';\nimport { esmVars } from './module-format';\nimport { getNpmScopePrefix, toScopeAlias } from './npm-scope';\nimport { getPackageManagerDisplayCommands } from './pkg-manager';\nimport {\n PACKAGES_DIR,\n SHARED_CONSTRUCTS_DIR,\n SHARED_CONSTRUCTS_NAME,\n SHARED_TERRAFORM_DIR,\n SHARED_TERRAFORM_NAME,\n} from './shared-constructs-constants';\nimport { terraformProviderVersions, withVersions } from './versions';\n\nexport interface SharedConstructsGeneratorOptions {\n iac: Iac;\n}\n\nexport async function sharedConstructsGenerator(\n tree: Tree,\n options: SharedConstructsGeneratorOptions,\n) {\n const { iac } = options;\n const npmScopePrefix = getNpmScopePrefix(tree);\n updateGitignore(tree);\n\n if (iac === 'cdk') {\n if (\n !tree.exists(\n joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR, 'project.json'),\n )\n ) {\n await tsProjectGenerator(tree, {\n name: SHARED_CONSTRUCTS_NAME,\n directory: PACKAGES_DIR,\n subDirectory: SHARED_CONSTRUCTS_DIR,\n });\n tree.delete(\n joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR, 'src'),\n );\n generateFiles(\n tree,\n joinPathFragments(\n import.meta.dirname,\n 'files',\n SHARED_CONSTRUCTS_DIR,\n 'src',\n ),\n joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR, 'src'),\n {\n npmScopePrefix,\n scopeAlias: toScopeAlias(npmScopePrefix),\n tags: (await readAwsNxPluginConfig(tree))?.tags ?? [],\n ...esmVars(tree),\n },\n {\n overwriteStrategy: OverwriteStrategy.KeepExisting,\n },\n );\n generateFiles(\n tree,\n joinPathFragments(import.meta.dirname, 'files', 'common', 'readme'),\n joinPathFragments(PACKAGES_DIR, SHARED_CONSTRUCTS_DIR),\n {\n fullyQualifiedName: `${npmScopePrefix}${SHARED_CONSTRUCTS_NAME}`,\n name: SHARED_CONSTRUCTS_NAME,\n pkgMgrCmd: getPackageManagerDisplayCommands().exec,\n },\n {\n overwriteStrategy: OverwriteStrategy.Overwrite,\n },\n );\n addDependenciesToPackageJson(\n tree,\n withVersions(['constructs', 'aws-cdk-lib']),\n withVersions(['@types/node']),\n );\n await formatFilesInSubtree(tree);\n }\n }\n\n // Handle Terraform provider\n if (iac === 'terraform') {\n const terraformLibPath = joinPathFragments(\n PACKAGES_DIR,\n SHARED_TERRAFORM_DIR,\n );\n if (!tree.exists(joinPathFragments(terraformLibPath, 'project.json'))) {\n await terraformProjectGenerator(tree, {\n name: SHARED_TERRAFORM_NAME,\n directory: joinPathFragments(PACKAGES_DIR, 'common'),\n type: 'library',\n });\n\n // `build` is a no-op orchestration target that produces no files of its\n // own. Terraform writes runtime-config entries into\n // `dist/{projectRoot}/runtime-config` at apply time, and other terraform\n // projects contribute their own entries to the same directory. Without\n // explicit outputs, Nx infers `dist/{projectRoot}` as this target's\n // cached output and, on a cache hit, restores the cached copy over the\n // freshly-applied config — wiping the very values consumers read. Declare\n // no outputs so Nx never treats runtime config as a cacheable artifact.\n updateJson(\n tree,\n joinPathFragments(PACKAGES_DIR, SHARED_TERRAFORM_DIR, 'project.json'),\n (projectConfig: ProjectConfiguration) => {\n projectConfig.targets ??= {};\n projectConfig.targets.build ??= {};\n projectConfig.targets.build.outputs = [];\n return projectConfig;\n },\n );\n\n tree.delete(joinPathFragments(terraformLibPath, 'src', 'main.tf'));\n\n // Create the metrics.tf file with empty initial values\n generateFiles(\n tree,\n joinPathFragments(import.meta.dirname, 'files', 'terraform'),\n terraformLibPath,\n { ...terraformProviderVersions() },\n {\n overwriteStrategy: OverwriteStrategy.KeepExisting,\n },\n );\n\n await formatFilesInSubtree(tree);\n }\n }\n}\n\nconst updateGitignore = (tree: Tree) => {\n const gitignore = tree.exists('.gitignore')\n ? tree.read('.gitignore', 'utf-8')\n : '';\n const regex = /runtime-config.json/gm;\n const hasRuntimeConfig = regex.test(gitignore ?? '');\n if (hasRuntimeConfig) {\n return;\n }\n tree.write('.gitignore', `${gitignore}\\n\\nruntime-config.json`);\n};\n"],"names":["addDependenciesToPackageJson","generateFiles","joinPathFragments","OverwriteStrategy","updateJson","terraformProjectGenerator","tsProjectGenerator","readAwsNxPluginConfig","formatFilesInSubtree","esmVars","getNpmScopePrefix","toScopeAlias","getPackageManagerDisplayCommands","PACKAGES_DIR","SHARED_CONSTRUCTS_DIR","SHARED_CONSTRUCTS_NAME","SHARED_TERRAFORM_DIR","SHARED_TERRAFORM_NAME","terraformProviderVersions","withVersions","sharedConstructsGenerator","tree","options","iac","npmScopePrefix","updateGitignore","exists","name","directory","subDirectory","delete","dirname","scopeAlias","tags","overwriteStrategy","KeepExisting","fullyQualifiedName","pkgMgrCmd","exec","Overwrite","terraformLibPath","type","projectConfig","targets","build","outputs","gitignore","read","regex","hasRuntimeConfig","test","write"],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
3
|
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
-
*/ import { generateFiles, joinPathFragments, OverwriteStrategy } from "@nx/devkit";
|
|
4
|
+
*/ import { addDependenciesToPackageJson, generateFiles, joinPathFragments, OverwriteStrategy } from "@nx/devkit";
|
|
5
5
|
import { PACKAGES_DIR, SHARED_SCRIPTS_DIR } from "./shared-constructs-constants.js";
|
|
6
6
|
import { ensureSharedScriptsProject } from "./shared-scripts.js";
|
|
7
|
+
import { withVersions } from "./versions.js";
|
|
7
8
|
/**
|
|
8
9
|
* Ensures the shared scripts package exists and adds RDB local-dev scripts
|
|
9
10
|
* to packages/common/scripts/src/rdb/. Used by ts#rdb.
|
|
@@ -23,6 +24,9 @@ import { ensureSharedScriptsProject } from "./shared-scripts.js";
|
|
|
23
24
|
generateFiles(tree, joinPathFragments(rdbScriptsDir, engine), targetDir, {}, {
|
|
24
25
|
overwriteStrategy: OverwriteStrategy.KeepExisting
|
|
25
26
|
});
|
|
27
|
+
addDependenciesToPackageJson(tree, {}, withVersions([
|
|
28
|
+
'tsx'
|
|
29
|
+
]));
|
|
26
30
|
}
|
|
27
31
|
|
|
28
32
|
//# sourceMappingURL=shared-rdb-scripts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../packages/nx-plugin/src/utils/shared-rdb-scripts.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport {\n generateFiles,\n joinPathFragments,\n OverwriteStrategy,\n type Tree,\n} from '@nx/devkit';\nimport {\n PACKAGES_DIR,\n SHARED_SCRIPTS_DIR,\n} from './shared-constructs-constants';\nimport { ensureSharedScriptsProject } from './shared-scripts';\n\n/**\n * Ensures the shared scripts package exists and adds RDB local-dev scripts\n * to packages/common/scripts/src/rdb/. Used by ts#rdb.\n *\n * Engine-agnostic scripts (pull-image, start-container) are always vended.\n * Only the wait-for-db script for the requested engine is vended so that\n * projects do not reference database client packages they don't install.\n * The engine-specific file names allow postgres and mysql projects to\n * coexist in the same workspace.\n */\nexport async function sharedRdbScriptsGenerator(\n tree: Tree,\n engine: 'postgres' | 'mysql',\n): Promise<void> {\n await ensureSharedScriptsProject(tree);\n\n const rdbScriptsDir = joinPathFragments(\n import.meta.dirname,\n 'files',\n SHARED_SCRIPTS_DIR,\n 'src',\n 'rdb',\n );\n const targetDir = joinPathFragments(\n PACKAGES_DIR,\n SHARED_SCRIPTS_DIR,\n 'src',\n 'rdb',\n );\n\n generateFiles(\n tree,\n joinPathFragments(rdbScriptsDir, 'shared'),\n targetDir,\n {},\n { overwriteStrategy: OverwriteStrategy.KeepExisting },\n );\n generateFiles(\n tree,\n joinPathFragments(rdbScriptsDir, engine),\n targetDir,\n {},\n { overwriteStrategy: OverwriteStrategy.KeepExisting },\n );\n}\n"],"names":["generateFiles","joinPathFragments","OverwriteStrategy","PACKAGES_DIR","SHARED_SCRIPTS_DIR","ensureSharedScriptsProject","sharedRdbScriptsGenerator","tree","engine","rdbScriptsDir","dirname","targetDir","overwriteStrategy","KeepExisting"],"mappings":"AAAA;;;CAGC,GACD,SACEA,aAAa,EACbC,iBAAiB,EACjBC,iBAAiB,QAEZ,aAAa;AACpB,SACEC,YAAY,EACZC,kBAAkB,QACb,mCAAgC;AACvC,SAASC,0BAA0B,QAAQ,sBAAmB;
|
|
1
|
+
{"version":3,"sources":["../../../../../packages/nx-plugin/src/utils/shared-rdb-scripts.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport {\n addDependenciesToPackageJson,\n generateFiles,\n joinPathFragments,\n OverwriteStrategy,\n type Tree,\n} from '@nx/devkit';\nimport {\n PACKAGES_DIR,\n SHARED_SCRIPTS_DIR,\n} from './shared-constructs-constants';\nimport { ensureSharedScriptsProject } from './shared-scripts';\nimport { withVersions } from './versions';\n\n/**\n * Ensures the shared scripts package exists and adds RDB local-dev scripts\n * to packages/common/scripts/src/rdb/. Used by ts#rdb.\n *\n * Engine-agnostic scripts (pull-image, start-container) are always vended.\n * Only the wait-for-db script for the requested engine is vended so that\n * projects do not reference database client packages they don't install.\n * The engine-specific file names allow postgres and mysql projects to\n * coexist in the same workspace.\n */\nexport async function sharedRdbScriptsGenerator(\n tree: Tree,\n engine: 'postgres' | 'mysql',\n): Promise<void> {\n await ensureSharedScriptsProject(tree);\n\n const rdbScriptsDir = joinPathFragments(\n import.meta.dirname,\n 'files',\n SHARED_SCRIPTS_DIR,\n 'src',\n 'rdb',\n );\n const targetDir = joinPathFragments(\n PACKAGES_DIR,\n SHARED_SCRIPTS_DIR,\n 'src',\n 'rdb',\n );\n\n generateFiles(\n tree,\n joinPathFragments(rdbScriptsDir, 'shared'),\n targetDir,\n {},\n { overwriteStrategy: OverwriteStrategy.KeepExisting },\n );\n generateFiles(\n tree,\n joinPathFragments(rdbScriptsDir, engine),\n targetDir,\n {},\n { overwriteStrategy: OverwriteStrategy.KeepExisting },\n );\n\n addDependenciesToPackageJson(tree, {}, withVersions(['tsx']));\n}\n"],"names":["addDependenciesToPackageJson","generateFiles","joinPathFragments","OverwriteStrategy","PACKAGES_DIR","SHARED_SCRIPTS_DIR","ensureSharedScriptsProject","withVersions","sharedRdbScriptsGenerator","tree","engine","rdbScriptsDir","dirname","targetDir","overwriteStrategy","KeepExisting"],"mappings":"AAAA;;;CAGC,GACD,SACEA,4BAA4B,EAC5BC,aAAa,EACbC,iBAAiB,EACjBC,iBAAiB,QAEZ,aAAa;AACpB,SACEC,YAAY,EACZC,kBAAkB,QACb,mCAAgC;AACvC,SAASC,0BAA0B,QAAQ,sBAAmB;AAC9D,SAASC,YAAY,QAAQ,gBAAa;AAE1C;;;;;;;;;CASC,GACD,OAAO,eAAeC,0BACpBC,IAAU,EACVC,MAA4B;IAE5B,MAAMJ,2BAA2BG;IAEjC,MAAME,gBAAgBT,kBACpB,YAAYU,OAAO,EACnB,SACAP,oBACA,OACA;IAEF,MAAMQ,YAAYX,kBAChBE,cACAC,oBACA,OACA;IAGFJ,cACEQ,MACAP,kBAAkBS,eAAe,WACjCE,WACA,CAAC,GACD;QAAEC,mBAAmBX,kBAAkBY,YAAY;IAAC;IAEtDd,cACEQ,MACAP,kBAAkBS,eAAeD,SACjCG,WACA,CAAC,GACD;QAAEC,mBAAmBX,kBAAkBY,YAAY;IAAC;IAGtDf,6BAA6BS,MAAM,CAAC,GAAGF,aAAa;QAAC;KAAM;AAC7D"}
|
package/src/utils/versions.d.ts
CHANGED
|
@@ -8,32 +8,32 @@
|
|
|
8
8
|
export declare const TS_VERSIONS: {
|
|
9
9
|
readonly '@a2a-js/sdk': "0.3.14";
|
|
10
10
|
readonly '@aws/aws-distro-opentelemetry-node-autoinstrumentation': "0.12.0";
|
|
11
|
-
readonly '@aws-sdk/client-dynamodb': "3.
|
|
12
|
-
readonly '@aws-sdk/client-bedrock-runtime': "3.
|
|
13
|
-
readonly '@aws-sdk/client-s3': "3.
|
|
14
|
-
readonly '@aws-sdk/client-sts': "3.
|
|
15
|
-
readonly '@aws-sdk/credential-providers': "3.
|
|
11
|
+
readonly '@aws-sdk/client-dynamodb': "3.1085.0";
|
|
12
|
+
readonly '@aws-sdk/client-bedrock-runtime': "3.1085.0";
|
|
13
|
+
readonly '@aws-sdk/client-s3': "3.1085.0";
|
|
14
|
+
readonly '@aws-sdk/client-sts': "3.1085.0";
|
|
15
|
+
readonly '@aws-sdk/credential-providers': "3.1085.0";
|
|
16
16
|
readonly '@aws-sdk/credential-provider-cognito-identity': "3.972.56";
|
|
17
|
-
readonly '@aws-sdk/client-secrets-manager': "3.
|
|
18
|
-
readonly '@aws-sdk/rds-signer': "3.
|
|
17
|
+
readonly '@aws-sdk/client-secrets-manager': "3.1085.0";
|
|
18
|
+
readonly '@aws-sdk/rds-signer': "3.1085.0";
|
|
19
19
|
readonly '@aws-smithy/server-apigateway': "1.0.0-alpha.10";
|
|
20
20
|
readonly '@aws-smithy/server-node': "1.0.0-alpha.10";
|
|
21
|
-
readonly '@aws-lambda-powertools/logger': "2.
|
|
22
|
-
readonly '@aws-lambda-powertools/metrics': "2.
|
|
23
|
-
readonly '@aws-lambda-powertools/parameters': "2.
|
|
24
|
-
readonly '@aws-lambda-powertools/tracer': "2.
|
|
25
|
-
readonly '@aws-lambda-powertools/parser': "2.
|
|
26
|
-
readonly '@aws-sdk/client-appconfigdata': "3.
|
|
21
|
+
readonly '@aws-lambda-powertools/logger': "2.34.0";
|
|
22
|
+
readonly '@aws-lambda-powertools/metrics': "2.34.0";
|
|
23
|
+
readonly '@aws-lambda-powertools/parameters': "2.34.0";
|
|
24
|
+
readonly '@aws-lambda-powertools/tracer': "2.34.0";
|
|
25
|
+
readonly '@aws-lambda-powertools/parser': "2.34.0";
|
|
26
|
+
readonly '@aws-sdk/client-appconfigdata': "3.1085.0";
|
|
27
27
|
readonly '@middy/core': "7.7.0";
|
|
28
28
|
readonly '@nxlv/python': "22.2.1";
|
|
29
29
|
readonly '@nx-extend/terraform': "10.3.0";
|
|
30
|
-
readonly '@nx/devkit': "23.0.
|
|
31
|
-
readonly '@nx/react': "23.0.
|
|
32
|
-
readonly 'create-nx-workspace': "23.0.
|
|
30
|
+
readonly '@nx/devkit': "23.0.2";
|
|
31
|
+
readonly '@nx/react': "23.0.2";
|
|
32
|
+
readonly 'create-nx-workspace': "23.0.2";
|
|
33
33
|
readonly '@swc-node/register': "1.11.1";
|
|
34
34
|
readonly '@swc/core': "1.15.43";
|
|
35
35
|
readonly '@modelcontextprotocol/sdk': "1.29.0";
|
|
36
|
-
readonly '@modelcontextprotocol/inspector': "0.
|
|
36
|
+
readonly '@modelcontextprotocol/inspector': "0.22.0";
|
|
37
37
|
readonly '@ag-ui/aws-strands': "0.2.3";
|
|
38
38
|
readonly '@ag-ui/client': "0.0.57";
|
|
39
39
|
readonly '@ag-ui/core': "0.0.57";
|
|
@@ -41,15 +41,15 @@ export declare const TS_VERSIONS: {
|
|
|
41
41
|
readonly 'agent-chat-cli': "0.3.0";
|
|
42
42
|
readonly '@copilotkit/react-core': "1.62.3";
|
|
43
43
|
readonly rxjs: "7.8.2";
|
|
44
|
-
readonly '@strands-agents/sdk': "1.
|
|
44
|
+
readonly '@strands-agents/sdk': "1.9.0";
|
|
45
45
|
readonly '@tanstack/react-router': "1.170.17";
|
|
46
46
|
readonly '@tanstack/router-plugin': "1.168.19";
|
|
47
47
|
readonly '@tanstack/router-generator': "1.167.18";
|
|
48
48
|
readonly '@tanstack/virtual-file-routes': "1.162.0";
|
|
49
49
|
readonly '@tanstack/router-utils': "1.162.2";
|
|
50
|
-
readonly '@cloudscape-design/board-components': "3.0.
|
|
51
|
-
readonly '@cloudscape-design/chat-components': "1.0.
|
|
52
|
-
readonly '@cloudscape-design/components': "3.0.
|
|
50
|
+
readonly '@cloudscape-design/board-components': "3.0.201";
|
|
51
|
+
readonly '@cloudscape-design/chat-components': "1.0.149";
|
|
52
|
+
readonly '@cloudscape-design/components': "3.0.1325";
|
|
53
53
|
readonly '@cloudscape-design/global-styles': "1.0.62";
|
|
54
54
|
readonly '@tanstack/react-query': "5.101.2";
|
|
55
55
|
readonly '@tanstack/react-query-devtools': "5.101.2";
|
|
@@ -62,17 +62,17 @@ export declare const TS_VERSIONS: {
|
|
|
62
62
|
readonly '@types/pg': "8.20.0";
|
|
63
63
|
readonly '@types/ws': "8.18.1";
|
|
64
64
|
readonly '@types/express': "5.0.6";
|
|
65
|
-
readonly '@smithy/config-resolver': "4.6.
|
|
66
|
-
readonly '@smithy/node-config-provider': "4.5.
|
|
67
|
-
readonly '@smithy/node-http-handler': "4.9.
|
|
68
|
-
readonly '@smithy/types': "4.16.
|
|
65
|
+
readonly '@smithy/config-resolver': "4.6.8";
|
|
66
|
+
readonly '@smithy/node-config-provider': "4.5.8";
|
|
67
|
+
readonly '@smithy/node-http-handler': "4.9.5";
|
|
68
|
+
readonly '@smithy/types': "4.16.1";
|
|
69
69
|
readonly '@vitest/coverage-v8': "4.1.10";
|
|
70
70
|
readonly '@vitest/ui': "4.1.10";
|
|
71
71
|
readonly '@astrojs/react': "6.0.1";
|
|
72
72
|
readonly '@astrojs/starlight': "0.41.3";
|
|
73
73
|
readonly astro: "7.0.7";
|
|
74
74
|
readonly aws4fetch: "1.0.20";
|
|
75
|
-
readonly 'aws-cdk': "2.
|
|
75
|
+
readonly 'aws-cdk': "2.1130.0";
|
|
76
76
|
readonly 'aws-cdk-lib': "2.261.0";
|
|
77
77
|
readonly 'aws-xray-sdk-core': "3.12.0";
|
|
78
78
|
readonly constructs: "10.6.0";
|
|
@@ -110,7 +110,7 @@ export declare const TS_VERSIONS: {
|
|
|
110
110
|
readonly rolldown: "1.1.5";
|
|
111
111
|
readonly 'simple-git': "3.36.0";
|
|
112
112
|
readonly 'source-map-support': "0.5.21";
|
|
113
|
-
readonly 'starlight-blog': "0.
|
|
113
|
+
readonly 'starlight-blog': "0.28.0";
|
|
114
114
|
readonly tailwindcss: "4.3.2";
|
|
115
115
|
readonly '@tailwindcss/vite': "4.3.2";
|
|
116
116
|
readonly tsx: "4.23.0";
|
|
@@ -130,7 +130,7 @@ export type ITsDepVersion = keyof typeof TS_VERSIONS;
|
|
|
130
130
|
* Add versions to the given dependencies
|
|
131
131
|
*/
|
|
132
132
|
export declare const withVersions: (deps: ITsDepVersion[]) => {
|
|
133
|
-
[k: string]: "0.3.14" | "0.12.0" | "3.
|
|
133
|
+
[k: string]: "0.3.14" | "0.12.0" | "3.1085.0" | "3.972.56" | "1.0.0-alpha.10" | "2.34.0" | "7.7.0" | "22.2.1" | "10.3.0" | "23.0.2" | "1.11.1" | "1.15.43" | "1.29.0" | "0.22.0" | "0.2.3" | "0.0.57" | "0.3.0" | "1.62.3" | "7.8.2" | "1.9.0" | "1.170.17" | "1.168.19" | "1.167.18" | "1.162.0" | "1.162.2" | "3.0.201" | "1.0.149" | "3.0.1325" | "1.0.62" | "5.101.2" | "11.18.0" | "26.1.1" | "8.10.162" | "2.8.19" | "8.20.0" | "8.18.1" | "5.0.6" | "4.6.8" | "4.5.8" | "4.9.5" | "4.16.1" | "4.1.10" | "6.0.1" | "0.41.3" | "7.0.7" | "1.0.20" | "2.1130.0" | "2.261.0" | "3.12.0" | "10.6.0" | "2.8.6" | "5.6.2" | "0.7.1" | "2.1.1" | "15.0.0" | "3.9.1" | "0.28.1" | "1.0.31" | "1.0.5" | "2.5.3" | "7.8.0" | "3.1.5" | "5.2.1" | "3.3.3" | "9.1.7" | "11.3.6" | "11.0.4" | "4.0.0" | "3.5.3" | "2.0.0" | "22.2.9" | "3.5.0" | "8.22.0" | "3.3.1" | "19.2.7" | "6.1.3" | "1.1.5" | "3.36.0" | "0.5.21" | "0.28.0" | "4.3.2" | "4.23.0" | "1.24.0" | "1.6.2" | "4.13.0" | "1.4.0" | "3.6.0" | "8.1.4" | "6.0.3" | "4.4.3" | "8.21.0";
|
|
134
134
|
};
|
|
135
135
|
/**
|
|
136
136
|
* Versions for Python dependencies added by generators
|
|
@@ -150,7 +150,7 @@ export declare const PY_VERSIONS: {
|
|
|
150
150
|
readonly fastapi: "==0.139.0";
|
|
151
151
|
readonly 'fastapi[standard]': "==0.139.0";
|
|
152
152
|
readonly httpx: "==0.28.1";
|
|
153
|
-
readonly langchain: "==1.3.
|
|
153
|
+
readonly langchain: "==1.3.13";
|
|
154
154
|
readonly 'langchain-aws': "==1.6.2";
|
|
155
155
|
readonly 'langchain-mcp-adapters': "==0.3.0";
|
|
156
156
|
readonly langgraph: "==1.2.9";
|
|
@@ -160,9 +160,13 @@ export declare const PY_VERSIONS: {
|
|
|
160
160
|
readonly 'strands-agents': "==1.47.0";
|
|
161
161
|
readonly 'strands-agents[a2a]': "==1.47.0";
|
|
162
162
|
readonly 'strands-agents-tools': "==0.8.3";
|
|
163
|
-
readonly ty: "==0.0.
|
|
163
|
+
readonly ty: "==0.0.59";
|
|
164
164
|
readonly pynamodb: "==6.1.0";
|
|
165
165
|
readonly uvicorn: "==0.51.0";
|
|
166
|
+
readonly sqlmodel: "==0.0.38";
|
|
167
|
+
readonly alembic: "==1.18.4";
|
|
168
|
+
readonly aiomysql: "==0.3.2";
|
|
169
|
+
readonly asyncpg: "==0.31.0";
|
|
166
170
|
};
|
|
167
171
|
export type IPyDepVersion = keyof typeof PY_VERSIONS;
|
|
168
172
|
/**
|