sst 3.0.0 → 3.0.1-2
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/package.json +8 -139
- package/src/index.ts +1 -0
- package/src/resource.ts +15 -0
- package/tsconfig.json +11 -0
- package/LICENSE +0 -21
- package/README.md +0 -43
- package/bootstrap.d.ts +0 -5
- package/bootstrap.js +0 -318
- package/bus.d.ts +0 -20
- package/bus.js +0 -52
- package/cache.d.ts +0 -4
- package/cache.js +0 -31
- package/cdk/deploy-stack.d.ts +0 -223
- package/cdk/deploy-stack.js +0 -562
- package/cdk/deployments-wrapper.d.ts +0 -3
- package/cdk/deployments-wrapper.js +0 -135
- package/cdk/deployments.d.ts +0 -327
- package/cdk/deployments.js +0 -360
- package/cdk/util.d.ts +0 -1
- package/cdk/util.js +0 -17
- package/cli/ci-info.d.ts +0 -4
- package/cli/ci-info.js +0 -8
- package/cli/colors.d.ts +0 -17
- package/cli/colors.js +0 -27
- package/cli/commands/bind.d.ts +0 -19
- package/cli/commands/bind.js +0 -360
- package/cli/commands/bootstrap.d.ts +0 -15
- package/cli/commands/bootstrap.js +0 -11
- package/cli/commands/build.d.ts +0 -17
- package/cli/commands/build.js +0 -25
- package/cli/commands/connect.d.ts +0 -17
- package/cli/commands/connect.js +0 -55
- package/cli/commands/console.d.ts +0 -15
- package/cli/commands/console.js +0 -22
- package/cli/commands/deploy.d.ts +0 -19
- package/cli/commands/deploy.js +0 -112
- package/cli/commands/dev.d.ts +0 -25
- package/cli/commands/dev.js +0 -351
- package/cli/commands/diff.d.ts +0 -19
- package/cli/commands/diff.js +0 -89
- package/cli/commands/plugins/kysely.d.ts +0 -1
- package/cli/commands/plugins/kysely.js +0 -87
- package/cli/commands/plugins/pothos.d.ts +0 -1
- package/cli/commands/plugins/pothos.js +0 -58
- package/cli/commands/plugins/warmer.d.ts +0 -1
- package/cli/commands/plugins/warmer.js +0 -33
- package/cli/commands/remove.d.ts +0 -19
- package/cli/commands/remove.js +0 -62
- package/cli/commands/secrets/get.d.ts +0 -19
- package/cli/commands/secrets/get.js +0 -27
- package/cli/commands/secrets/list.d.ts +0 -19
- package/cli/commands/secrets/list.js +0 -69
- package/cli/commands/secrets/load.d.ts +0 -17
- package/cli/commands/secrets/load.js +0 -47
- package/cli/commands/secrets/remove.d.ts +0 -19
- package/cli/commands/secrets/remove.js +0 -27
- package/cli/commands/secrets/secrets.d.ts +0 -2
- package/cli/commands/secrets/secrets.js +0 -16
- package/cli/commands/secrets/set.d.ts +0 -21
- package/cli/commands/secrets/set.js +0 -54
- package/cli/commands/telemetry.d.ts +0 -17
- package/cli/commands/telemetry.js +0 -24
- package/cli/commands/transform.d.ts +0 -17
- package/cli/commands/transform.js +0 -62
- package/cli/commands/types.d.ts +0 -15
- package/cli/commands/types.js +0 -25
- package/cli/commands/update.d.ts +0 -17
- package/cli/commands/update.js +0 -116
- package/cli/commands/version.d.ts +0 -15
- package/cli/commands/version.js +0 -15
- package/cli/local/router.d.ts +0 -44
- package/cli/local/router.js +0 -43
- package/cli/local/server.d.ts +0 -22
- package/cli/local/server.js +0 -319
- package/cli/program.d.ts +0 -19
- package/cli/program.js +0 -87
- package/cli/spinner.d.ts +0 -3
- package/cli/spinner.js +0 -14
- package/cli/sst.d.ts +0 -2
- package/cli/sst.js +0 -74
- package/cli/telemetry/environment.d.ts +0 -15
- package/cli/telemetry/environment.js +0 -27
- package/cli/telemetry/post-payload.d.ts +0 -1
- package/cli/telemetry/post-payload.js +0 -27
- package/cli/telemetry/project-id.d.ts +0 -2
- package/cli/telemetry/project-id.js +0 -47
- package/cli/telemetry/telemetry.d.ts +0 -19
- package/cli/telemetry/telemetry.js +0 -103
- package/cli/terminal.d.ts +0 -1
- package/cli/terminal.js +0 -8
- package/cli/ui/deploy.d.ts +0 -10
- package/cli/ui/deploy.js +0 -172
- package/cli/ui/functions.d.ts +0 -2
- package/cli/ui/functions.js +0 -130
- package/cli/ui/header.d.ts +0 -5
- package/cli/ui/header.js +0 -16
- package/cli/ui/stack.d.ts +0 -1
- package/cli/ui/stack.js +0 -6
- package/config.d.ts +0 -56
- package/config.js +0 -244
- package/constructs/Api.d.ts +0 -814
- package/constructs/Api.js +0 -743
- package/constructs/ApiGatewayV1Api.d.ts +0 -642
- package/constructs/ApiGatewayV1Api.js +0 -767
- package/constructs/App.d.ts +0 -168
- package/constructs/App.js +0 -493
- package/constructs/AppSyncApi.d.ts +0 -550
- package/constructs/AppSyncApi.js +0 -493
- package/constructs/AstroSite.d.ts +0 -39
- package/constructs/AstroSite.js +0 -78
- package/constructs/AstroSite.tsdoc.d.ts +0 -2
- package/constructs/AstroSite.tsdoc.js +0 -2
- package/constructs/Auth.d.ts +0 -100
- package/constructs/Auth.js +0 -177
- package/constructs/BaseSite.d.ts +0 -29
- package/constructs/BaseSite.js +0 -43
- package/constructs/Bucket.d.ts +0 -364
- package/constructs/Bucket.js +0 -327
- package/constructs/Cognito.d.ts +0 -232
- package/constructs/Cognito.js +0 -370
- package/constructs/Config.d.ts +0 -3
- package/constructs/Config.js +0 -3
- package/constructs/Construct.d.ts +0 -23
- package/constructs/Construct.js +0 -46
- package/constructs/Cron.d.ts +0 -164
- package/constructs/Cron.js +0 -114
- package/constructs/Distribution.d.ts +0 -143
- package/constructs/Distribution.js +0 -260
- package/constructs/EdgeFunction.d.ts +0 -49
- package/constructs/EdgeFunction.js +0 -442
- package/constructs/EventBus.d.ts +0 -444
- package/constructs/EventBus.js +0 -440
- package/constructs/Function.d.ts +0 -690
- package/constructs/Function.js +0 -583
- package/constructs/FunctionalStack.d.ts +0 -13
- package/constructs/FunctionalStack.js +0 -62
- package/constructs/Job.d.ts +0 -337
- package/constructs/Job.js +0 -404
- package/constructs/KinesisStream.d.ts +0 -224
- package/constructs/KinesisStream.js +0 -207
- package/constructs/Metadata.d.ts +0 -60
- package/constructs/Metadata.js +0 -1
- package/constructs/NextjsSite.d.ts +0 -104
- package/constructs/NextjsSite.js +0 -308
- package/constructs/Parameter.d.ts +0 -37
- package/constructs/Parameter.js +0 -53
- package/constructs/Queue.d.ts +0 -194
- package/constructs/Queue.js +0 -204
- package/constructs/RDS.d.ts +0 -221
- package/constructs/RDS.js +0 -363
- package/constructs/RemixSite.d.ts +0 -42
- package/constructs/RemixSite.js +0 -158
- package/constructs/RemixSite.tsdoc.d.ts +0 -2
- package/constructs/RemixSite.tsdoc.js +0 -2
- package/constructs/Script.d.ts +0 -160
- package/constructs/Script.js +0 -179
- package/constructs/Secret.d.ts +0 -30
- package/constructs/Secret.js +0 -59
- package/constructs/Service.d.ts +0 -487
- package/constructs/Service.js +0 -655
- package/constructs/SolidStartSite.d.ts +0 -37
- package/constructs/SolidStartSite.js +0 -66
- package/constructs/SolidStartSite.tsdoc.d.ts +0 -2
- package/constructs/SolidStartSite.tsdoc.js +0 -2
- package/constructs/SsrFunction.d.ts +0 -60
- package/constructs/SsrFunction.js +0 -226
- package/constructs/SsrSite.d.ts +0 -407
- package/constructs/SsrSite.js +0 -850
- package/constructs/Stack.d.ts +0 -127
- package/constructs/Stack.js +0 -243
- package/constructs/StaticSite.d.ts +0 -348
- package/constructs/StaticSite.js +0 -468
- package/constructs/SvelteKitSite.d.ts +0 -40
- package/constructs/SvelteKitSite.js +0 -106
- package/constructs/SvelteKitSite.tsdoc.d.ts +0 -2
- package/constructs/SvelteKitSite.tsdoc.js +0 -2
- package/constructs/Table.d.ts +0 -410
- package/constructs/Table.js +0 -425
- package/constructs/Topic.d.ts +0 -257
- package/constructs/Topic.js +0 -273
- package/constructs/WebSocketApi.d.ts +0 -355
- package/constructs/WebSocketApi.js +0 -404
- package/constructs/cdk/HttpAwsIntegration.d.ts +0 -32
- package/constructs/cdk/HttpAwsIntegration.js +0 -24
- package/constructs/cdk/certificate-base.d.ts +0 -18
- package/constructs/cdk/certificate-base.js +0 -26
- package/constructs/cdk/dns-validated-certificate.d.ts +0 -77
- package/constructs/cdk/dns-validated-certificate.js +0 -125
- package/constructs/cdk/website-redirect.d.ts +0 -53
- package/constructs/cdk/website-redirect.js +0 -77
- package/constructs/context.d.ts +0 -3
- package/constructs/context.js +0 -27
- package/constructs/deferred_task.d.ts +0 -6
- package/constructs/deferred_task.js +0 -45
- package/constructs/deprecated/NextjsSite.d.ts +0 -309
- package/constructs/deprecated/NextjsSite.js +0 -1074
- package/constructs/deprecated/cross-region-helper.d.ts +0 -7
- package/constructs/deprecated/cross-region-helper.js +0 -152
- package/constructs/deprecated/index.d.ts +0 -1
- package/constructs/deprecated/index.js +0 -1
- package/constructs/future/Auth.d.ts +0 -80
- package/constructs/future/Auth.js +0 -122
- package/constructs/future/index.d.ts +0 -1
- package/constructs/future/index.js +0 -1
- package/constructs/index.d.ts +0 -32
- package/constructs/index.js +0 -32
- package/constructs/static-file-list.d.ts +0 -1
- package/constructs/static-file-list.js +0 -51
- package/constructs/util/apiGatewayV1AccessLog.d.ts +0 -15
- package/constructs/util/apiGatewayV1AccessLog.js +0 -76
- package/constructs/util/apiGatewayV2AccessLog.d.ts +0 -10
- package/constructs/util/apiGatewayV2AccessLog.js +0 -107
- package/constructs/util/apiGatewayV2Cors.d.ts +0 -67
- package/constructs/util/apiGatewayV2Cors.js +0 -21
- package/constructs/util/apiGatewayV2Domain.d.ts +0 -47
- package/constructs/util/apiGatewayV2Domain.js +0 -208
- package/constructs/util/appSyncApiDomain.d.ts +0 -41
- package/constructs/util/appSyncApiDomain.js +0 -176
- package/constructs/util/builder.d.ts +0 -3
- package/constructs/util/builder.js +0 -9
- package/constructs/util/duration.d.ts +0 -3
- package/constructs/util/duration.js +0 -19
- package/constructs/util/functionBinding.d.ts +0 -31
- package/constructs/util/functionBinding.js +0 -104
- package/constructs/util/functionUrlCors.d.ts +0 -67
- package/constructs/util/functionUrlCors.js +0 -23
- package/constructs/util/permission.d.ts +0 -8
- package/constructs/util/permission.js +0 -228
- package/constructs/util/size.d.ts +0 -3
- package/constructs/util/size.js +0 -12
- package/constructs/util/warning.d.ts +0 -11
- package/constructs/util/warning.js +0 -21
- package/context/context.d.ts +0 -13
- package/context/context.js +0 -69
- package/context/context2.d.ts +0 -16
- package/context/context2.js +0 -108
- package/context/handler.d.ts +0 -25
- package/context/handler.js +0 -21
- package/context/index.d.ts +0 -2
- package/context/index.js +0 -2
- package/credentials.d.ts +0 -9
- package/credentials.js +0 -145
- package/error.d.ts +0 -6
- package/error.js +0 -10
- package/index.d.ts +0 -1
- package/index.js +0 -1
- package/iot.d.ts +0 -6
- package/iot.js +0 -163
- package/logger.d.ts +0 -3
- package/logger.js +0 -32
- package/node/actor/index.d.ts +0 -29
- package/node/actor/index.js +0 -17
- package/node/api/index.d.ts +0 -64
- package/node/api/index.js +0 -179
- package/node/auth/adapter/adapter.d.ts +0 -3
- package/node/auth/adapter/adapter.js +0 -3
- package/node/auth/adapter/facebook.d.ts +0 -2
- package/node/auth/adapter/facebook.js +0 -26
- package/node/auth/adapter/github.d.ts +0 -2
- package/node/auth/adapter/github.js +0 -21
- package/node/auth/adapter/google.d.ts +0 -9
- package/node/auth/adapter/google.js +0 -18
- package/node/auth/adapter/link.d.ts +0 -8
- package/node/auth/adapter/link.js +0 -39
- package/node/auth/adapter/oauth.d.ts +0 -25
- package/node/auth/adapter/oauth.js +0 -52
- package/node/auth/adapter/oidc.d.ts +0 -17
- package/node/auth/adapter/oidc.js +0 -50
- package/node/auth/adapter/twitch.d.ts +0 -2
- package/node/auth/adapter/twitch.js +0 -11
- package/node/auth/auth.d.ts +0 -24
- package/node/auth/auth.js +0 -74
- package/node/auth/index.d.ts +0 -13
- package/node/auth/index.js +0 -12
- package/node/auth/session.d.ts +0 -76
- package/node/auth/session.js +0 -121
- package/node/bucket/index.d.ts +0 -3
- package/node/bucket/index.js +0 -2
- package/node/config/index.d.ts +0 -13
- package/node/config/index.js +0 -22
- package/node/event-bus/index.d.ts +0 -51
- package/node/event-bus/index.js +0 -76
- package/node/function/index.d.ts +0 -3
- package/node/function/index.js +0 -3
- package/node/future/auth/adapter/adapter.d.ts +0 -10
- package/node/future/auth/adapter/adapter.js +0 -1
- package/node/future/auth/adapter/code.d.ts +0 -17
- package/node/future/auth/adapter/code.js +0 -68
- package/node/future/auth/adapter/facebook.d.ts +0 -16
- package/node/future/auth/adapter/facebook.js +0 -27
- package/node/future/auth/adapter/github.d.ts +0 -23
- package/node/future/auth/adapter/github.js +0 -23
- package/node/future/auth/adapter/google.d.ts +0 -28
- package/node/future/auth/adapter/google.js +0 -22
- package/node/future/auth/adapter/link.d.ts +0 -13
- package/node/future/auth/adapter/link.js +0 -47
- package/node/future/auth/adapter/microsoft.d.ts +0 -22
- package/node/future/auth/adapter/microsoft.js +0 -16
- package/node/future/auth/adapter/oauth.d.ts +0 -41
- package/node/future/auth/adapter/oauth.js +0 -67
- package/node/future/auth/adapter/oidc.d.ts +0 -30
- package/node/future/auth/adapter/oidc.js +0 -63
- package/node/future/auth/adapter/spotify.d.ts +0 -23
- package/node/future/auth/adapter/spotify.js +0 -22
- package/node/future/auth/encryption.d.ts +0 -2
- package/node/future/auth/encryption.js +0 -30
- package/node/future/auth/handler.d.ts +0 -46
- package/node/future/auth/handler.js +0 -280
- package/node/future/auth/index.d.ts +0 -17
- package/node/future/auth/index.js +0 -15
- package/node/future/auth/session.d.ts +0 -71
- package/node/future/auth/session.js +0 -146
- package/node/graphql/index.d.ts +0 -15
- package/node/graphql/index.js +0 -32
- package/node/job/index.d.ts +0 -37
- package/node/job/index.js +0 -64
- package/node/kinesis-stream/index.d.ts +0 -3
- package/node/kinesis-stream/index.js +0 -3
- package/node/queue/index.d.ts +0 -3
- package/node/queue/index.js +0 -2
- package/node/rds/index.d.ts +0 -3
- package/node/rds/index.js +0 -2
- package/node/service/index.d.ts +0 -3
- package/node/service/index.js +0 -4
- package/node/site/index.d.ts +0 -18
- package/node/site/index.js +0 -18
- package/node/table/index.d.ts +0 -3
- package/node/table/index.js +0 -4
- package/node/topic/index.d.ts +0 -3
- package/node/topic/index.js +0 -4
- package/node/util/index.d.ts +0 -2
- package/node/util/index.js +0 -196
- package/node/util/loader.d.ts +0 -2
- package/node/util/loader.js +0 -51
- package/node/websocket-api/index.d.ts +0 -23
- package/node/websocket-api/index.js +0 -48
- package/pothos.d.ts +0 -7
- package/pothos.js +0 -160
- package/project.d.ts +0 -75
- package/project.js +0 -188
- package/runtime/handlers/container.d.ts +0 -2
- package/runtime/handlers/container.js +0 -263
- package/runtime/handlers/dotnet.d.ts +0 -2
- package/runtime/handlers/dotnet.js +0 -115
- package/runtime/handlers/go.d.ts +0 -2
- package/runtime/handlers/go.js +0 -126
- package/runtime/handlers/java.d.ts +0 -2
- package/runtime/handlers/java.js +0 -103
- package/runtime/handlers/node.d.ts +0 -2
- package/runtime/handlers/node.js +0 -269
- package/runtime/handlers/python.d.ts +0 -2
- package/runtime/handlers/python.js +0 -141
- package/runtime/handlers/pythonBundling.d.ts +0 -82
- package/runtime/handlers/pythonBundling.js +0 -80
- package/runtime/handlers/rust.d.ts +0 -2
- package/runtime/handlers/rust.js +0 -110
- package/runtime/handlers.d.ts +0 -74
- package/runtime/handlers.js +0 -151
- package/runtime/iot.d.ts +0 -1
- package/runtime/iot.js +0 -17
- package/runtime/runtime.d.ts +0 -32
- package/runtime/runtime.js +0 -1
- package/runtime/server.d.ts +0 -6
- package/runtime/server.js +0 -150
- package/runtime/workers.d.ts +0 -37
- package/runtime/workers.js +0 -85
- package/stacks/app-metadata.d.ts +0 -7
- package/stacks/app-metadata.js +0 -75
- package/stacks/assembly.d.ts +0 -1
- package/stacks/assembly.js +0 -4
- package/stacks/build.d.ts +0 -9
- package/stacks/build.js +0 -110
- package/stacks/deploy.d.ts +0 -9
- package/stacks/deploy.js +0 -240
- package/stacks/diff.d.ts +0 -8
- package/stacks/diff.js +0 -62
- package/stacks/index.d.ts +0 -10
- package/stacks/index.js +0 -10
- package/stacks/metadata.d.ts +0 -11
- package/stacks/metadata.js +0 -83
- package/stacks/monitor.d.ts +0 -32
- package/stacks/monitor.js +0 -151
- package/stacks/remove.d.ts +0 -8
- package/stacks/remove.js +0 -76
- package/stacks/synth.d.ts +0 -12
- package/stacks/synth.js +0 -94
- package/support/base-site-archiver.mjs +0 -99
- package/support/base-site-custom-resource/s3-handler.py +0 -195
- package/support/base-site-custom-resource/s3-upload.py +0 -89
- package/support/bootstrap-metadata-function/index.mjs +0 -58011
- package/support/bridge/Dockerfile +0 -3
- package/support/bridge/bridge.mjs +0 -146
- package/support/certificate-requestor/index.js +0 -549
- package/support/custom-resources/index.mjs +0 -180627
- package/support/dotnet31-bootstrap/Program.cs +0 -17
- package/support/dotnet31-bootstrap/dotnet-bootstrap.csproj +0 -12
- package/support/dotnet31-bootstrap/release/Amazon.Lambda.Core.dll +0 -0
- package/support/dotnet31-bootstrap/release/Amazon.Lambda.RuntimeSupport.dll +0 -0
- package/support/dotnet31-bootstrap/release/System.Runtime.CompilerServices.Unsafe.dll +0 -0
- package/support/dotnet31-bootstrap/release/System.Text.Encodings.Web.dll +0 -0
- package/support/dotnet31-bootstrap/release/System.Text.Json.dll +0 -0
- package/support/dotnet31-bootstrap/release/dotnet-bootstrap +0 -0
- package/support/dotnet31-bootstrap/release/dotnet-bootstrap.deps.json +0 -230
- package/support/dotnet31-bootstrap/release/dotnet-bootstrap.dll +0 -0
- package/support/dotnet31-bootstrap/release/dotnet-bootstrap.pdb +0 -0
- package/support/dotnet31-bootstrap/release/dotnet-bootstrap.runtimeconfig.json +0 -9
- package/support/dotnet6-bootstrap/Program.cs +0 -17
- package/support/dotnet6-bootstrap/dotnet-bootstrap.csproj +0 -12
- package/support/dotnet6-bootstrap/release/Amazon.Lambda.Core.dll +0 -0
- package/support/dotnet6-bootstrap/release/Amazon.Lambda.RuntimeSupport.dll +0 -0
- package/support/dotnet6-bootstrap/release/dotnet-bootstrap +0 -0
- package/support/dotnet6-bootstrap/release/dotnet-bootstrap.deps.json +0 -59
- package/support/dotnet6-bootstrap/release/dotnet-bootstrap.dll +0 -0
- package/support/dotnet6-bootstrap/release/dotnet-bootstrap.pdb +0 -0
- package/support/dotnet6-bootstrap/release/dotnet-bootstrap.runtimeconfig.json +0 -12
- package/support/edge-function/edge-lambda-version.mjs +0 -3
- package/support/edge-function/edge-lambda.mjs +0 -3
- package/support/edge-function/s3-bucket.mjs +0 -3
- package/support/event-bus-retrier/index.mjs +0 -75
- package/support/java-runtime/install.sh +0 -25
- package/support/java-runtime/pom.xml +0 -39
- package/support/java-runtime/release/aws-lambda-java-core-1.2.0.jar +0 -0
- package/support/java-runtime/release/aws-lambda-java-runtime-interface-client-1.1.0.jar +0 -0
- package/support/java-runtime/release/aws-lambda-java-serialization-1.0.0.jar +0 -0
- package/support/job-manager/index.mjs +0 -57679
- package/support/nixpacks/Dockerfile +0 -6
- package/support/nodejs-runtime/index.mjs +0 -169
- package/support/python-runtime/Dockerfile +0 -9
- package/support/python-runtime/Dockerfile.custom +0 -21
- package/support/python-runtime/Dockerfile.dependencies +0 -26
- package/support/python-runtime/runtime.py +0 -127
- package/support/rds-migrator/index.mjs +0 -49
- package/support/remix-site-function/edge-server.js +0 -161
- package/support/remix-site-function/polyfill.js +0 -24
- package/support/remix-site-function/regional-server.js +0 -164
- package/support/script-function/index.mjs +0 -48760
- package/support/service-dev-function/index.js +0 -1
- package/support/signing-function/index.mjs +0 -3769
- package/support/sls-nextjs-site-build-helper/build.cjs +0 -91
- package/support/sls-nextjs-site-build-helper/index-wrapper.js +0 -19
- package/support/sls-nextjs-site-function-code-replacer/lambda-code-updater.py +0 -156
- package/support/sls-nextjs-site-stub/index.html +0 -99
- package/support/ssr-site-function-archiver.mjs +0 -96
- package/support/ssr-site-function-stub/index.js +0 -5
- package/support/ssr-warmer/index.mjs +0 -34235
- package/util/error.d.ts +0 -3
- package/util/error.js +0 -6
- package/util/fs.d.ts +0 -4
- package/util/fs.js +0 -46
- package/util/lazy.d.ts +0 -1
- package/util/lazy.js +0 -11
- package/util/module.d.ts +0 -1
- package/util/module.js +0 -5
- package/util/process.d.ts +0 -2
- package/util/process.js +0 -3
- package/watcher.d.ts +0 -14
- package/watcher.js +0 -35
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Construct } from "constructs";
|
|
2
|
-
import { SSTConstruct } from "./Construct.js";
|
|
3
|
-
import { FunctionBindingProps } from "./util/functionBinding.js";
|
|
4
|
-
export interface ParameterProps {
|
|
5
|
-
/**
|
|
6
|
-
* Value of the parameter
|
|
7
|
-
*/
|
|
8
|
-
value: string;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* The `Parameter` construct is a higher level CDK construct that makes it easy to manage app environment variables.
|
|
12
|
-
*
|
|
13
|
-
* @example
|
|
14
|
-
* ### Using the minimal config
|
|
15
|
-
*
|
|
16
|
-
* ```js
|
|
17
|
-
* import { Config } from "sst/constructs";
|
|
18
|
-
*
|
|
19
|
-
* new Config.Parameter(stack, "TABLE_NAME", table.tableName);
|
|
20
|
-
* ```
|
|
21
|
-
*/
|
|
22
|
-
export declare class Parameter extends Construct implements SSTConstruct {
|
|
23
|
-
readonly id: string;
|
|
24
|
-
readonly name: string;
|
|
25
|
-
readonly value: string;
|
|
26
|
-
constructor(scope: Construct, id: string, props: ParameterProps);
|
|
27
|
-
/** @internal */
|
|
28
|
-
getConstructMetadata(): {
|
|
29
|
-
type: "Parameter";
|
|
30
|
-
data: {
|
|
31
|
-
name: string;
|
|
32
|
-
};
|
|
33
|
-
};
|
|
34
|
-
/** @internal */
|
|
35
|
-
getFunctionBinding(): FunctionBindingProps;
|
|
36
|
-
static create<T extends Record<string, any>>(scope: Construct, parameters: T): { [key in keyof T]: Parameter; };
|
|
37
|
-
}
|
package/constructs/Parameter.js
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { Construct } from "constructs";
|
|
2
|
-
/**
|
|
3
|
-
* The `Parameter` construct is a higher level CDK construct that makes it easy to manage app environment variables.
|
|
4
|
-
*
|
|
5
|
-
* @example
|
|
6
|
-
* ### Using the minimal config
|
|
7
|
-
*
|
|
8
|
-
* ```js
|
|
9
|
-
* import { Config } from "sst/constructs";
|
|
10
|
-
*
|
|
11
|
-
* new Config.Parameter(stack, "TABLE_NAME", table.tableName);
|
|
12
|
-
* ```
|
|
13
|
-
*/
|
|
14
|
-
export class Parameter extends Construct {
|
|
15
|
-
id;
|
|
16
|
-
name;
|
|
17
|
-
value;
|
|
18
|
-
constructor(scope, id, props) {
|
|
19
|
-
super(scope, id);
|
|
20
|
-
this.id = id;
|
|
21
|
-
this.name = id;
|
|
22
|
-
this.value = props.value;
|
|
23
|
-
}
|
|
24
|
-
/** @internal */
|
|
25
|
-
getConstructMetadata() {
|
|
26
|
-
return {
|
|
27
|
-
type: "Parameter",
|
|
28
|
-
data: {
|
|
29
|
-
name: this.name,
|
|
30
|
-
},
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
/** @internal */
|
|
34
|
-
getFunctionBinding() {
|
|
35
|
-
return {
|
|
36
|
-
clientPackage: "config",
|
|
37
|
-
variables: {
|
|
38
|
-
value: {
|
|
39
|
-
type: "plain",
|
|
40
|
-
value: this.value,
|
|
41
|
-
},
|
|
42
|
-
},
|
|
43
|
-
permissions: {},
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
static create(scope, parameters) {
|
|
47
|
-
const result = {};
|
|
48
|
-
for (const [name, value] of Object.entries(parameters)) {
|
|
49
|
-
result[name] = new Parameter(scope, name, { value });
|
|
50
|
-
}
|
|
51
|
-
return result;
|
|
52
|
-
}
|
|
53
|
-
}
|
package/constructs/Queue.d.ts
DELETED
|
@@ -1,194 +0,0 @@
|
|
|
1
|
-
import { Construct } from "constructs";
|
|
2
|
-
import * as sqs from "aws-cdk-lib/aws-sqs";
|
|
3
|
-
import * as lambda from "aws-cdk-lib/aws-lambda";
|
|
4
|
-
import * as lambdaEventSources from "aws-cdk-lib/aws-lambda-event-sources";
|
|
5
|
-
import { SSTConstruct } from "./Construct.js";
|
|
6
|
-
import { Function as Fn, FunctionInlineDefinition, FunctionDefinition } from "./Function.js";
|
|
7
|
-
import { FunctionBindingProps } from "./util/functionBinding.js";
|
|
8
|
-
import { Permissions } from "./util/permission.js";
|
|
9
|
-
/**
|
|
10
|
-
* Used to define the consumer for the queue and invocation details
|
|
11
|
-
*/
|
|
12
|
-
export interface QueueConsumerProps {
|
|
13
|
-
/**
|
|
14
|
-
* Used to create the consumer function for the queue.
|
|
15
|
-
*
|
|
16
|
-
* @example
|
|
17
|
-
* ```js
|
|
18
|
-
* new Queue(stack, "Queue", {
|
|
19
|
-
* consumer: {
|
|
20
|
-
* function: {
|
|
21
|
-
* handler: "src/function.handler",
|
|
22
|
-
* timeout: 10,
|
|
23
|
-
* },
|
|
24
|
-
* },
|
|
25
|
-
* });
|
|
26
|
-
* ```
|
|
27
|
-
*/
|
|
28
|
-
function?: FunctionDefinition;
|
|
29
|
-
cdk?: {
|
|
30
|
-
/**
|
|
31
|
-
* This allows you to use an existing or imported Lambda function.
|
|
32
|
-
*
|
|
33
|
-
* @example
|
|
34
|
-
* ```js
|
|
35
|
-
* new Queue(stack, "Queue", {
|
|
36
|
-
* consumer: {
|
|
37
|
-
* cdk: {
|
|
38
|
-
* function: lambda.Function.fromFunctionAttributes(stack, "ImportedFn", {
|
|
39
|
-
* functionArn: "arn:aws:lambda:us-east-1:123456789:function:my-function",
|
|
40
|
-
* role: iam.Role.fromRoleArn(stack, "IRole", "arn:aws:iam::123456789:role/my-role"),
|
|
41
|
-
* }),
|
|
42
|
-
* },
|
|
43
|
-
* },
|
|
44
|
-
* });
|
|
45
|
-
* ```
|
|
46
|
-
*/
|
|
47
|
-
function?: lambda.IFunction;
|
|
48
|
-
/**
|
|
49
|
-
* This allows you to override the default settings this construct uses internally to create the consumer.
|
|
50
|
-
*
|
|
51
|
-
* @example
|
|
52
|
-
* ```js
|
|
53
|
-
* new Queue(stack, "Queue", {
|
|
54
|
-
* consumer: {
|
|
55
|
-
* function: "test/lambda.handler",
|
|
56
|
-
* cdk: {
|
|
57
|
-
* eventSource: {
|
|
58
|
-
* batchSize: 5,
|
|
59
|
-
* },
|
|
60
|
-
* },
|
|
61
|
-
* },
|
|
62
|
-
* });
|
|
63
|
-
* ```
|
|
64
|
-
*/
|
|
65
|
-
eventSource?: lambdaEventSources.SqsEventSourceProps;
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
export interface QueueProps {
|
|
69
|
-
/**
|
|
70
|
-
* Used to create the consumer for the queue.
|
|
71
|
-
*
|
|
72
|
-
* @example
|
|
73
|
-
* ```js
|
|
74
|
-
* new Queue(stack, "Queue", {
|
|
75
|
-
* consumer: "src/function.handler",
|
|
76
|
-
* })
|
|
77
|
-
* ```
|
|
78
|
-
*/
|
|
79
|
-
consumer?: FunctionInlineDefinition | QueueConsumerProps;
|
|
80
|
-
cdk?: {
|
|
81
|
-
/**
|
|
82
|
-
* Allows you to override default id for this construct.
|
|
83
|
-
*/
|
|
84
|
-
id?: string;
|
|
85
|
-
/**
|
|
86
|
-
* Override the default settings this construct uses internally to create the queue.
|
|
87
|
-
*
|
|
88
|
-
* @example
|
|
89
|
-
* ```js
|
|
90
|
-
* new Queue(stack, "Queue", {
|
|
91
|
-
* consumer: "src/function.handler",
|
|
92
|
-
* cdk: {
|
|
93
|
-
* queue: {
|
|
94
|
-
* fifo: true,
|
|
95
|
-
* },
|
|
96
|
-
* }
|
|
97
|
-
* });
|
|
98
|
-
* ```
|
|
99
|
-
*/
|
|
100
|
-
queue?: sqs.IQueue | sqs.QueueProps;
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* The `Queue` construct is a higher level CDK construct that makes it easy to create an SQS Queue and configure a consumer function.
|
|
105
|
-
*
|
|
106
|
-
* @example
|
|
107
|
-
*
|
|
108
|
-
* ```js
|
|
109
|
-
* import { Queue } from "sst/constructs";
|
|
110
|
-
*
|
|
111
|
-
* new Queue(stack, "Queue", {
|
|
112
|
-
* consumer: "src/queueConsumer.main",
|
|
113
|
-
* });
|
|
114
|
-
* ```
|
|
115
|
-
*/
|
|
116
|
-
export declare class Queue extends Construct implements SSTConstruct {
|
|
117
|
-
readonly id: string;
|
|
118
|
-
readonly cdk: {
|
|
119
|
-
/**
|
|
120
|
-
* The internally created CDK `Queue` instance.
|
|
121
|
-
*/
|
|
122
|
-
queue: sqs.IQueue;
|
|
123
|
-
};
|
|
124
|
-
/**
|
|
125
|
-
* The internally created consumer `Function` instance.
|
|
126
|
-
*/
|
|
127
|
-
consumerFunction?: Fn | lambda.IFunction;
|
|
128
|
-
private bindingForAllConsumers;
|
|
129
|
-
private permissionsAttachedForAllConsumers;
|
|
130
|
-
private props;
|
|
131
|
-
constructor(scope: Construct, id: string, props?: QueueProps);
|
|
132
|
-
/**
|
|
133
|
-
* The ARN of the SQS Queue
|
|
134
|
-
*/
|
|
135
|
-
get queueArn(): string;
|
|
136
|
-
/**
|
|
137
|
-
* The URL of the SQS Queue
|
|
138
|
-
*/
|
|
139
|
-
get queueUrl(): string;
|
|
140
|
-
/**
|
|
141
|
-
* The name of the SQS Queue
|
|
142
|
-
*/
|
|
143
|
-
get queueName(): string;
|
|
144
|
-
/**
|
|
145
|
-
* Adds a consumer after creating the queue. Note only one consumer can be added to a queue
|
|
146
|
-
*
|
|
147
|
-
* @example
|
|
148
|
-
* ```js {3}
|
|
149
|
-
* const queue = new Queue(stack, "Queue");
|
|
150
|
-
* queue.addConsumer(props.stack, "src/function.handler");
|
|
151
|
-
* ```
|
|
152
|
-
*/
|
|
153
|
-
addConsumer(scope: Construct, consumer: FunctionInlineDefinition | QueueConsumerProps): void;
|
|
154
|
-
private addCdkFunctionConsumer;
|
|
155
|
-
private addFunctionConsumer;
|
|
156
|
-
/**
|
|
157
|
-
* Binds the given list of resources to the consumer function
|
|
158
|
-
*
|
|
159
|
-
* @example
|
|
160
|
-
* ```js
|
|
161
|
-
* const queue = new Queue(stack, "Queue", {
|
|
162
|
-
* consumer: "src/function.handler",
|
|
163
|
-
* });
|
|
164
|
-
* queue.bind([STRIPE_KEY, bucket]);
|
|
165
|
-
* ```
|
|
166
|
-
*/
|
|
167
|
-
bind(constructs: SSTConstruct[]): void;
|
|
168
|
-
/**
|
|
169
|
-
* Attaches additional permissions to the consumer function
|
|
170
|
-
*
|
|
171
|
-
* @example
|
|
172
|
-
* ```js
|
|
173
|
-
* const queue = new Queue(stack, "Queue", {
|
|
174
|
-
* consumer: "src/function.handler",
|
|
175
|
-
* });
|
|
176
|
-
* queue.attachPermissions(["s3"]);
|
|
177
|
-
* ```
|
|
178
|
-
*/
|
|
179
|
-
attachPermissions(permissions: Permissions): void;
|
|
180
|
-
getConstructMetadata(): {
|
|
181
|
-
type: "Queue";
|
|
182
|
-
data: {
|
|
183
|
-
name: string;
|
|
184
|
-
url: string;
|
|
185
|
-
consumer: {
|
|
186
|
-
node: string;
|
|
187
|
-
stack: string;
|
|
188
|
-
} | undefined;
|
|
189
|
-
};
|
|
190
|
-
};
|
|
191
|
-
/** @internal */
|
|
192
|
-
getFunctionBinding(): FunctionBindingProps;
|
|
193
|
-
private createQueue;
|
|
194
|
-
}
|
package/constructs/Queue.js
DELETED
|
@@ -1,204 +0,0 @@
|
|
|
1
|
-
import { Construct } from "constructs";
|
|
2
|
-
import * as sqs from "aws-cdk-lib/aws-sqs";
|
|
3
|
-
import * as lambdaEventSources from "aws-cdk-lib/aws-lambda-event-sources";
|
|
4
|
-
import { getFunctionRef, isCDKConstruct } from "./Construct.js";
|
|
5
|
-
import { Function as Fn, } from "./Function.js";
|
|
6
|
-
import { toCdkDuration } from "./util/duration.js";
|
|
7
|
-
/////////////////////
|
|
8
|
-
// Construct
|
|
9
|
-
/////////////////////
|
|
10
|
-
/**
|
|
11
|
-
* The `Queue` construct is a higher level CDK construct that makes it easy to create an SQS Queue and configure a consumer function.
|
|
12
|
-
*
|
|
13
|
-
* @example
|
|
14
|
-
*
|
|
15
|
-
* ```js
|
|
16
|
-
* import { Queue } from "sst/constructs";
|
|
17
|
-
*
|
|
18
|
-
* new Queue(stack, "Queue", {
|
|
19
|
-
* consumer: "src/queueConsumer.main",
|
|
20
|
-
* });
|
|
21
|
-
* ```
|
|
22
|
-
*/
|
|
23
|
-
export class Queue extends Construct {
|
|
24
|
-
id;
|
|
25
|
-
cdk;
|
|
26
|
-
/**
|
|
27
|
-
* The internally created consumer `Function` instance.
|
|
28
|
-
*/
|
|
29
|
-
consumerFunction;
|
|
30
|
-
bindingForAllConsumers = [];
|
|
31
|
-
permissionsAttachedForAllConsumers = [];
|
|
32
|
-
props;
|
|
33
|
-
constructor(scope, id, props) {
|
|
34
|
-
super(scope, props?.cdk?.id || id);
|
|
35
|
-
this.id = id;
|
|
36
|
-
this.props = props || {};
|
|
37
|
-
this.cdk = {};
|
|
38
|
-
this.createQueue();
|
|
39
|
-
if (props?.consumer) {
|
|
40
|
-
this.addConsumer(this, props.consumer);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* The ARN of the SQS Queue
|
|
45
|
-
*/
|
|
46
|
-
get queueArn() {
|
|
47
|
-
return this.cdk.queue.queueArn;
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* The URL of the SQS Queue
|
|
51
|
-
*/
|
|
52
|
-
get queueUrl() {
|
|
53
|
-
return this.cdk.queue.queueUrl;
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* The name of the SQS Queue
|
|
57
|
-
*/
|
|
58
|
-
get queueName() {
|
|
59
|
-
return this.cdk.queue.queueName;
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Adds a consumer after creating the queue. Note only one consumer can be added to a queue
|
|
63
|
-
*
|
|
64
|
-
* @example
|
|
65
|
-
* ```js {3}
|
|
66
|
-
* const queue = new Queue(stack, "Queue");
|
|
67
|
-
* queue.addConsumer(props.stack, "src/function.handler");
|
|
68
|
-
* ```
|
|
69
|
-
*/
|
|
70
|
-
addConsumer(scope, consumer) {
|
|
71
|
-
if (this.consumerFunction) {
|
|
72
|
-
throw new Error("Cannot configure more than 1 consumer for a Queue");
|
|
73
|
-
}
|
|
74
|
-
if (consumer.cdk?.function) {
|
|
75
|
-
consumer = consumer;
|
|
76
|
-
this.addCdkFunctionConsumer(scope, consumer);
|
|
77
|
-
}
|
|
78
|
-
else {
|
|
79
|
-
consumer = consumer;
|
|
80
|
-
this.addFunctionConsumer(scope, consumer);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
addCdkFunctionConsumer(scope, consumer) {
|
|
84
|
-
// Parse target props
|
|
85
|
-
const eventSourceProps = consumer.cdk?.eventSource;
|
|
86
|
-
const fn = consumer.cdk.function;
|
|
87
|
-
// Create target
|
|
88
|
-
fn.addEventSource(new lambdaEventSources.SqsEventSource(this.cdk.queue, eventSourceProps));
|
|
89
|
-
this.consumerFunction = fn;
|
|
90
|
-
}
|
|
91
|
-
addFunctionConsumer(scope, consumer) {
|
|
92
|
-
// Parse consumer props
|
|
93
|
-
let eventSourceProps;
|
|
94
|
-
let functionDefinition;
|
|
95
|
-
if (consumer.function) {
|
|
96
|
-
consumer = consumer;
|
|
97
|
-
eventSourceProps = consumer.cdk?.eventSource;
|
|
98
|
-
functionDefinition = consumer.function;
|
|
99
|
-
}
|
|
100
|
-
else {
|
|
101
|
-
consumer = consumer;
|
|
102
|
-
functionDefinition = consumer;
|
|
103
|
-
}
|
|
104
|
-
// Create function
|
|
105
|
-
const fn = Fn.fromDefinition(scope, `Consumer_${this.node.id}`, functionDefinition);
|
|
106
|
-
fn.addEventSource(new lambdaEventSources.SqsEventSource(this.cdk.queue, eventSourceProps));
|
|
107
|
-
// Attach permissions
|
|
108
|
-
this.permissionsAttachedForAllConsumers.forEach((permissions) => {
|
|
109
|
-
fn.attachPermissions(permissions);
|
|
110
|
-
});
|
|
111
|
-
fn.bind(this.bindingForAllConsumers);
|
|
112
|
-
this.consumerFunction = fn;
|
|
113
|
-
}
|
|
114
|
-
/**
|
|
115
|
-
* Binds the given list of resources to the consumer function
|
|
116
|
-
*
|
|
117
|
-
* @example
|
|
118
|
-
* ```js
|
|
119
|
-
* const queue = new Queue(stack, "Queue", {
|
|
120
|
-
* consumer: "src/function.handler",
|
|
121
|
-
* });
|
|
122
|
-
* queue.bind([STRIPE_KEY, bucket]);
|
|
123
|
-
* ```
|
|
124
|
-
*/
|
|
125
|
-
bind(constructs) {
|
|
126
|
-
if (this.consumerFunction instanceof Fn) {
|
|
127
|
-
this.consumerFunction.bind(constructs);
|
|
128
|
-
}
|
|
129
|
-
this.bindingForAllConsumers.push(...constructs);
|
|
130
|
-
}
|
|
131
|
-
/**
|
|
132
|
-
* Attaches additional permissions to the consumer function
|
|
133
|
-
*
|
|
134
|
-
* @example
|
|
135
|
-
* ```js
|
|
136
|
-
* const queue = new Queue(stack, "Queue", {
|
|
137
|
-
* consumer: "src/function.handler",
|
|
138
|
-
* });
|
|
139
|
-
* queue.attachPermissions(["s3"]);
|
|
140
|
-
* ```
|
|
141
|
-
*/
|
|
142
|
-
attachPermissions(permissions) {
|
|
143
|
-
if (this.consumerFunction instanceof Fn) {
|
|
144
|
-
this.consumerFunction.attachPermissions(permissions);
|
|
145
|
-
}
|
|
146
|
-
this.permissionsAttachedForAllConsumers.push(permissions);
|
|
147
|
-
}
|
|
148
|
-
getConstructMetadata() {
|
|
149
|
-
return {
|
|
150
|
-
type: "Queue",
|
|
151
|
-
data: {
|
|
152
|
-
name: this.cdk.queue.queueName,
|
|
153
|
-
url: this.cdk.queue.queueUrl,
|
|
154
|
-
consumer: getFunctionRef(this.consumerFunction),
|
|
155
|
-
},
|
|
156
|
-
};
|
|
157
|
-
}
|
|
158
|
-
/** @internal */
|
|
159
|
-
getFunctionBinding() {
|
|
160
|
-
return {
|
|
161
|
-
clientPackage: "queue",
|
|
162
|
-
variables: {
|
|
163
|
-
queueUrl: {
|
|
164
|
-
type: "plain",
|
|
165
|
-
value: this.queueUrl,
|
|
166
|
-
},
|
|
167
|
-
},
|
|
168
|
-
permissions: {
|
|
169
|
-
"sqs:*": [this.queueArn],
|
|
170
|
-
},
|
|
171
|
-
};
|
|
172
|
-
}
|
|
173
|
-
createQueue() {
|
|
174
|
-
const { cdk } = this.props;
|
|
175
|
-
const root = this.node.root;
|
|
176
|
-
const id = this.node.id;
|
|
177
|
-
if (isCDKConstruct(cdk?.queue)) {
|
|
178
|
-
this.cdk.queue = cdk?.queue;
|
|
179
|
-
}
|
|
180
|
-
else {
|
|
181
|
-
const sqsQueueProps = cdk?.queue || {};
|
|
182
|
-
// If debugIncreaseTimeout is enabled (ie. sst start):
|
|
183
|
-
// - Set visibilityTimeout to > 900s. This is because Lambda timeout is
|
|
184
|
-
// set to 900s, and visibilityTimeout has to be greater or equal to it.
|
|
185
|
-
// This will give people more time to debug the function without timing
|
|
186
|
-
// out the request.
|
|
187
|
-
let debugOverrideProps;
|
|
188
|
-
if (root.debugIncreaseTimeout) {
|
|
189
|
-
if (!sqsQueueProps.visibilityTimeout ||
|
|
190
|
-
sqsQueueProps.visibilityTimeout.toSeconds() < 900) {
|
|
191
|
-
debugOverrideProps = {
|
|
192
|
-
visibilityTimeout: toCdkDuration("900 seconds"),
|
|
193
|
-
};
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
const name = root.logicalPrefixedName(id) + (sqsQueueProps.fifo ? ".fifo" : "");
|
|
197
|
-
this.cdk.queue = new sqs.Queue(this, "Queue", {
|
|
198
|
-
queueName: name,
|
|
199
|
-
...sqsQueueProps,
|
|
200
|
-
...debugOverrideProps,
|
|
201
|
-
});
|
|
202
|
-
}
|
|
203
|
-
}
|
|
204
|
-
}
|
package/constructs/RDS.d.ts
DELETED
|
@@ -1,221 +0,0 @@
|
|
|
1
|
-
import { Construct } from "constructs";
|
|
2
|
-
import { IVpc } from "aws-cdk-lib/aws-ec2";
|
|
3
|
-
import { AuroraCapacityUnit, Endpoint, IServerlessCluster, ServerlessCluster, ServerlessClusterProps } from "aws-cdk-lib/aws-rds";
|
|
4
|
-
import { ISecret } from "aws-cdk-lib/aws-secretsmanager";
|
|
5
|
-
import { SSTConstruct } from "./Construct.js";
|
|
6
|
-
import { Function as Fn } from "./Function.js";
|
|
7
|
-
import { FunctionBindingProps } from "./util/functionBinding.js";
|
|
8
|
-
export interface RDSTypes {
|
|
9
|
-
path: string;
|
|
10
|
-
camelCase?: boolean;
|
|
11
|
-
}
|
|
12
|
-
export interface RDSProps {
|
|
13
|
-
/**
|
|
14
|
-
* Database engine of the cluster. Cannot be changed once set.
|
|
15
|
-
*/
|
|
16
|
-
engine: "mysql5.6" | "mysql5.7" | "postgresql11.13" | "postgresql11.16" | "postgresql13.9";
|
|
17
|
-
/**
|
|
18
|
-
* Name of a database which is automatically created inside the cluster.
|
|
19
|
-
*/
|
|
20
|
-
defaultDatabaseName: string;
|
|
21
|
-
scaling?: {
|
|
22
|
-
/**
|
|
23
|
-
* The time before the cluster is paused.
|
|
24
|
-
*
|
|
25
|
-
* Pass in true to pause after 5 minutes of inactive. And pass in false to
|
|
26
|
-
* disable pausing.
|
|
27
|
-
*
|
|
28
|
-
* Or pass in the number of minutes to wait before the cluster is paused.
|
|
29
|
-
*
|
|
30
|
-
* @default true
|
|
31
|
-
*
|
|
32
|
-
* @example
|
|
33
|
-
* ```js
|
|
34
|
-
* new RDS(stack, "Database", {
|
|
35
|
-
* scaling: {
|
|
36
|
-
* autoPause: props.app.stage !== "prod"
|
|
37
|
-
* }
|
|
38
|
-
* })
|
|
39
|
-
* ```
|
|
40
|
-
*/
|
|
41
|
-
autoPause?: boolean | number;
|
|
42
|
-
/**
|
|
43
|
-
* The minimum capacity for the cluster.
|
|
44
|
-
*
|
|
45
|
-
* @default "ACU_2"
|
|
46
|
-
*/
|
|
47
|
-
minCapacity?: keyof typeof AuroraCapacityUnit;
|
|
48
|
-
/**
|
|
49
|
-
* The maximum capacity for the cluster.
|
|
50
|
-
*
|
|
51
|
-
* @default "ACU_16"
|
|
52
|
-
*/
|
|
53
|
-
maxCapacity?: keyof typeof AuroraCapacityUnit;
|
|
54
|
-
};
|
|
55
|
-
/**
|
|
56
|
-
* Path to the directory that contains the migration scripts. The `RDS` construct uses [Kysely](https://kysely-org.github.io/kysely/) to run and manage schema migrations. The `migrations` prop should point to the folder where your migration files are.
|
|
57
|
-
*
|
|
58
|
-
* @example
|
|
59
|
-
*
|
|
60
|
-
* ```js
|
|
61
|
-
* new RDS(stack, "Database", {
|
|
62
|
-
* engine: "postgresql11.13",
|
|
63
|
-
* defaultDatabaseName: "acme",
|
|
64
|
-
* migrations: "path/to/migration/scripts",
|
|
65
|
-
* });
|
|
66
|
-
* ```
|
|
67
|
-
*/
|
|
68
|
-
migrations?: string;
|
|
69
|
-
/**
|
|
70
|
-
* Path to place generated typescript types after running migrations
|
|
71
|
-
*
|
|
72
|
-
* @example
|
|
73
|
-
*
|
|
74
|
-
* ```js
|
|
75
|
-
* new RDS(stack, "Database", {
|
|
76
|
-
* engine: "postgresql11.13",
|
|
77
|
-
* defaultDatabaseName: "acme",
|
|
78
|
-
* migrations: "path/to/migration/scripts",
|
|
79
|
-
* types: "backend/core/sql/types.ts",
|
|
80
|
-
* });
|
|
81
|
-
* ```
|
|
82
|
-
* @example
|
|
83
|
-
* ```js
|
|
84
|
-
* new RDS(stack, "Database", {
|
|
85
|
-
* engine: "postgresql11.13",
|
|
86
|
-
* defaultDatabaseName: "acme",
|
|
87
|
-
* migrations: "path/to/migration/scripts",
|
|
88
|
-
* types: {
|
|
89
|
-
* path: "backend/core/sql/types.ts",
|
|
90
|
-
* camelCase: true
|
|
91
|
-
* }
|
|
92
|
-
* });
|
|
93
|
-
* ```
|
|
94
|
-
*/
|
|
95
|
-
types?: string | RDSTypes;
|
|
96
|
-
cdk?: {
|
|
97
|
-
/**
|
|
98
|
-
* Allows you to override default id for this construct.
|
|
99
|
-
*/
|
|
100
|
-
id?: string;
|
|
101
|
-
/**
|
|
102
|
-
* Configure the internallly created RDS cluster.
|
|
103
|
-
*
|
|
104
|
-
* @example
|
|
105
|
-
* ```js
|
|
106
|
-
* new RDS(stack, "Database", {
|
|
107
|
-
* cdk: {
|
|
108
|
-
* cluster: {
|
|
109
|
-
* clusterIdentifier: "my-cluster",
|
|
110
|
-
* }
|
|
111
|
-
* },
|
|
112
|
-
* });
|
|
113
|
-
* ```
|
|
114
|
-
*
|
|
115
|
-
* Alternatively, you can import an existing RDS Serverless v1 Cluster in your AWS account.
|
|
116
|
-
*
|
|
117
|
-
* @example
|
|
118
|
-
* ```js
|
|
119
|
-
* new RDS(stack, "Database", {
|
|
120
|
-
* cdk: {
|
|
121
|
-
* cluster: rds.ServerlessCluster.fromServerlessClusterAttributes(stack, "ICluster", {
|
|
122
|
-
* clusterIdentifier: "my-cluster",
|
|
123
|
-
* }),
|
|
124
|
-
* secret: secretsManager.Secret.fromSecretAttributes(stack, "ISecret", {
|
|
125
|
-
* secretPartialArn: "arn:aws:secretsmanager:us-east-1:123456789012:secret:my-secret",
|
|
126
|
-
* }),
|
|
127
|
-
* },
|
|
128
|
-
* });
|
|
129
|
-
* ```
|
|
130
|
-
*/
|
|
131
|
-
cluster?: IServerlessCluster | RDSCdkServerlessClusterProps;
|
|
132
|
-
/**
|
|
133
|
-
* Required when importing existing RDS Serverless v1 Cluster.
|
|
134
|
-
*/
|
|
135
|
-
secret?: ISecret;
|
|
136
|
-
};
|
|
137
|
-
}
|
|
138
|
-
export type RDSEngineType = RDSProps["engine"];
|
|
139
|
-
export interface RDSCdkServerlessClusterProps extends Omit<ServerlessClusterProps, "vpc" | "engine" | "defaultDatabaseName" | "scaling"> {
|
|
140
|
-
vpc?: IVpc;
|
|
141
|
-
}
|
|
142
|
-
/**
|
|
143
|
-
* The `RDS` construct is a higher level CDK construct that makes it easy to create an [RDS Serverless Cluster](https://aws.amazon.com/rds/).
|
|
144
|
-
*
|
|
145
|
-
* @example
|
|
146
|
-
*
|
|
147
|
-
* ```js
|
|
148
|
-
* import { RDS } from "sst/constructs";
|
|
149
|
-
*
|
|
150
|
-
* new RDS(stack, "Database", {
|
|
151
|
-
* engine: "postgresql11.13",
|
|
152
|
-
* defaultDatabaseName: "my_database",
|
|
153
|
-
* });
|
|
154
|
-
* ```
|
|
155
|
-
*/
|
|
156
|
-
export declare class RDS extends Construct implements SSTConstruct {
|
|
157
|
-
readonly id: string;
|
|
158
|
-
readonly cdk: {
|
|
159
|
-
/**
|
|
160
|
-
* The ARN of the internally created CDK ServerlessCluster instance.
|
|
161
|
-
*/
|
|
162
|
-
cluster: ServerlessCluster;
|
|
163
|
-
};
|
|
164
|
-
/**
|
|
165
|
-
* The ARN of the internally created CDK ServerlessCluster instance.
|
|
166
|
-
*/
|
|
167
|
-
migratorFunction?: Fn;
|
|
168
|
-
private props;
|
|
169
|
-
private secret;
|
|
170
|
-
constructor(scope: Construct, id: string, props: RDSProps);
|
|
171
|
-
/**
|
|
172
|
-
* The ARN of the internally created RDS Serverless Cluster.
|
|
173
|
-
*/
|
|
174
|
-
get clusterArn(): string;
|
|
175
|
-
/**
|
|
176
|
-
* The ARN of the internally created RDS Serverless Cluster.
|
|
177
|
-
*/
|
|
178
|
-
get clusterIdentifier(): string;
|
|
179
|
-
/**
|
|
180
|
-
* The ARN of the internally created RDS Serverless Cluster.
|
|
181
|
-
*/
|
|
182
|
-
get clusterEndpoint(): Endpoint;
|
|
183
|
-
/**
|
|
184
|
-
* The default database name of the RDS Serverless Cluster.
|
|
185
|
-
*/
|
|
186
|
-
get defaultDatabaseName(): string;
|
|
187
|
-
/**
|
|
188
|
-
* The ARN of the internally created Secrets Manager Secret.
|
|
189
|
-
*/
|
|
190
|
-
get secretArn(): string;
|
|
191
|
-
getConstructMetadata(): {
|
|
192
|
-
type: "RDS";
|
|
193
|
-
data: {
|
|
194
|
-
engine: "mysql5.6" | "mysql5.7" | "postgresql11.13" | "postgresql11.16" | "postgresql13.9";
|
|
195
|
-
secretArn: string;
|
|
196
|
-
types: RDSTypes | undefined;
|
|
197
|
-
clusterArn: string;
|
|
198
|
-
clusterIdentifier: string;
|
|
199
|
-
defaultDatabaseName: string;
|
|
200
|
-
migrator: {
|
|
201
|
-
node: string;
|
|
202
|
-
stack: string;
|
|
203
|
-
} | undefined;
|
|
204
|
-
};
|
|
205
|
-
};
|
|
206
|
-
/** @internal */
|
|
207
|
-
getFunctionBinding(): FunctionBindingProps;
|
|
208
|
-
private validateRequiredProps;
|
|
209
|
-
private validateCDKPropWhenIsConstruct;
|
|
210
|
-
private validateCDKPropWhenIsClusterProps;
|
|
211
|
-
private validateMigrationsFileExists;
|
|
212
|
-
private getEngine;
|
|
213
|
-
private getScaling;
|
|
214
|
-
private getVpc;
|
|
215
|
-
private getVpcSubnets;
|
|
216
|
-
private createCluster;
|
|
217
|
-
private importCluster;
|
|
218
|
-
private createMigrationsFunction;
|
|
219
|
-
private createMigrationCustomResource;
|
|
220
|
-
private generateMigrationsHash;
|
|
221
|
-
}
|