sst 3.0.0 → 3.0.1-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (457) hide show
  1. package/package.json +7 -139
  2. package/src/index.ts +1 -0
  3. package/src/resource.ts +15 -0
  4. package/tsconfig.json +11 -0
  5. package/LICENSE +0 -21
  6. package/README.md +0 -43
  7. package/bootstrap.d.ts +0 -5
  8. package/bootstrap.js +0 -318
  9. package/bus.d.ts +0 -20
  10. package/bus.js +0 -52
  11. package/cache.d.ts +0 -4
  12. package/cache.js +0 -31
  13. package/cdk/deploy-stack.d.ts +0 -223
  14. package/cdk/deploy-stack.js +0 -562
  15. package/cdk/deployments-wrapper.d.ts +0 -3
  16. package/cdk/deployments-wrapper.js +0 -135
  17. package/cdk/deployments.d.ts +0 -327
  18. package/cdk/deployments.js +0 -360
  19. package/cdk/util.d.ts +0 -1
  20. package/cdk/util.js +0 -17
  21. package/cli/ci-info.d.ts +0 -4
  22. package/cli/ci-info.js +0 -8
  23. package/cli/colors.d.ts +0 -17
  24. package/cli/colors.js +0 -27
  25. package/cli/commands/bind.d.ts +0 -19
  26. package/cli/commands/bind.js +0 -360
  27. package/cli/commands/bootstrap.d.ts +0 -15
  28. package/cli/commands/bootstrap.js +0 -11
  29. package/cli/commands/build.d.ts +0 -17
  30. package/cli/commands/build.js +0 -25
  31. package/cli/commands/connect.d.ts +0 -17
  32. package/cli/commands/connect.js +0 -55
  33. package/cli/commands/console.d.ts +0 -15
  34. package/cli/commands/console.js +0 -22
  35. package/cli/commands/deploy.d.ts +0 -19
  36. package/cli/commands/deploy.js +0 -112
  37. package/cli/commands/dev.d.ts +0 -25
  38. package/cli/commands/dev.js +0 -351
  39. package/cli/commands/diff.d.ts +0 -19
  40. package/cli/commands/diff.js +0 -89
  41. package/cli/commands/plugins/kysely.d.ts +0 -1
  42. package/cli/commands/plugins/kysely.js +0 -87
  43. package/cli/commands/plugins/pothos.d.ts +0 -1
  44. package/cli/commands/plugins/pothos.js +0 -58
  45. package/cli/commands/plugins/warmer.d.ts +0 -1
  46. package/cli/commands/plugins/warmer.js +0 -33
  47. package/cli/commands/remove.d.ts +0 -19
  48. package/cli/commands/remove.js +0 -62
  49. package/cli/commands/secrets/get.d.ts +0 -19
  50. package/cli/commands/secrets/get.js +0 -27
  51. package/cli/commands/secrets/list.d.ts +0 -19
  52. package/cli/commands/secrets/list.js +0 -69
  53. package/cli/commands/secrets/load.d.ts +0 -17
  54. package/cli/commands/secrets/load.js +0 -47
  55. package/cli/commands/secrets/remove.d.ts +0 -19
  56. package/cli/commands/secrets/remove.js +0 -27
  57. package/cli/commands/secrets/secrets.d.ts +0 -2
  58. package/cli/commands/secrets/secrets.js +0 -16
  59. package/cli/commands/secrets/set.d.ts +0 -21
  60. package/cli/commands/secrets/set.js +0 -54
  61. package/cli/commands/telemetry.d.ts +0 -17
  62. package/cli/commands/telemetry.js +0 -24
  63. package/cli/commands/transform.d.ts +0 -17
  64. package/cli/commands/transform.js +0 -62
  65. package/cli/commands/types.d.ts +0 -15
  66. package/cli/commands/types.js +0 -25
  67. package/cli/commands/update.d.ts +0 -17
  68. package/cli/commands/update.js +0 -116
  69. package/cli/commands/version.d.ts +0 -15
  70. package/cli/commands/version.js +0 -15
  71. package/cli/local/router.d.ts +0 -44
  72. package/cli/local/router.js +0 -43
  73. package/cli/local/server.d.ts +0 -22
  74. package/cli/local/server.js +0 -319
  75. package/cli/program.d.ts +0 -19
  76. package/cli/program.js +0 -87
  77. package/cli/spinner.d.ts +0 -3
  78. package/cli/spinner.js +0 -14
  79. package/cli/sst.d.ts +0 -2
  80. package/cli/sst.js +0 -74
  81. package/cli/telemetry/environment.d.ts +0 -15
  82. package/cli/telemetry/environment.js +0 -27
  83. package/cli/telemetry/post-payload.d.ts +0 -1
  84. package/cli/telemetry/post-payload.js +0 -27
  85. package/cli/telemetry/project-id.d.ts +0 -2
  86. package/cli/telemetry/project-id.js +0 -47
  87. package/cli/telemetry/telemetry.d.ts +0 -19
  88. package/cli/telemetry/telemetry.js +0 -103
  89. package/cli/terminal.d.ts +0 -1
  90. package/cli/terminal.js +0 -8
  91. package/cli/ui/deploy.d.ts +0 -10
  92. package/cli/ui/deploy.js +0 -172
  93. package/cli/ui/functions.d.ts +0 -2
  94. package/cli/ui/functions.js +0 -130
  95. package/cli/ui/header.d.ts +0 -5
  96. package/cli/ui/header.js +0 -16
  97. package/cli/ui/stack.d.ts +0 -1
  98. package/cli/ui/stack.js +0 -6
  99. package/config.d.ts +0 -56
  100. package/config.js +0 -244
  101. package/constructs/Api.d.ts +0 -814
  102. package/constructs/Api.js +0 -743
  103. package/constructs/ApiGatewayV1Api.d.ts +0 -642
  104. package/constructs/ApiGatewayV1Api.js +0 -767
  105. package/constructs/App.d.ts +0 -168
  106. package/constructs/App.js +0 -493
  107. package/constructs/AppSyncApi.d.ts +0 -550
  108. package/constructs/AppSyncApi.js +0 -493
  109. package/constructs/AstroSite.d.ts +0 -39
  110. package/constructs/AstroSite.js +0 -78
  111. package/constructs/AstroSite.tsdoc.d.ts +0 -2
  112. package/constructs/AstroSite.tsdoc.js +0 -2
  113. package/constructs/Auth.d.ts +0 -100
  114. package/constructs/Auth.js +0 -177
  115. package/constructs/BaseSite.d.ts +0 -29
  116. package/constructs/BaseSite.js +0 -43
  117. package/constructs/Bucket.d.ts +0 -364
  118. package/constructs/Bucket.js +0 -327
  119. package/constructs/Cognito.d.ts +0 -232
  120. package/constructs/Cognito.js +0 -370
  121. package/constructs/Config.d.ts +0 -3
  122. package/constructs/Config.js +0 -3
  123. package/constructs/Construct.d.ts +0 -23
  124. package/constructs/Construct.js +0 -46
  125. package/constructs/Cron.d.ts +0 -164
  126. package/constructs/Cron.js +0 -114
  127. package/constructs/Distribution.d.ts +0 -143
  128. package/constructs/Distribution.js +0 -260
  129. package/constructs/EdgeFunction.d.ts +0 -49
  130. package/constructs/EdgeFunction.js +0 -442
  131. package/constructs/EventBus.d.ts +0 -444
  132. package/constructs/EventBus.js +0 -440
  133. package/constructs/Function.d.ts +0 -690
  134. package/constructs/Function.js +0 -583
  135. package/constructs/FunctionalStack.d.ts +0 -13
  136. package/constructs/FunctionalStack.js +0 -62
  137. package/constructs/Job.d.ts +0 -337
  138. package/constructs/Job.js +0 -404
  139. package/constructs/KinesisStream.d.ts +0 -224
  140. package/constructs/KinesisStream.js +0 -207
  141. package/constructs/Metadata.d.ts +0 -60
  142. package/constructs/Metadata.js +0 -1
  143. package/constructs/NextjsSite.d.ts +0 -104
  144. package/constructs/NextjsSite.js +0 -308
  145. package/constructs/Parameter.d.ts +0 -37
  146. package/constructs/Parameter.js +0 -53
  147. package/constructs/Queue.d.ts +0 -194
  148. package/constructs/Queue.js +0 -204
  149. package/constructs/RDS.d.ts +0 -221
  150. package/constructs/RDS.js +0 -363
  151. package/constructs/RemixSite.d.ts +0 -42
  152. package/constructs/RemixSite.js +0 -158
  153. package/constructs/RemixSite.tsdoc.d.ts +0 -2
  154. package/constructs/RemixSite.tsdoc.js +0 -2
  155. package/constructs/Script.d.ts +0 -160
  156. package/constructs/Script.js +0 -179
  157. package/constructs/Secret.d.ts +0 -30
  158. package/constructs/Secret.js +0 -59
  159. package/constructs/Service.d.ts +0 -487
  160. package/constructs/Service.js +0 -655
  161. package/constructs/SolidStartSite.d.ts +0 -37
  162. package/constructs/SolidStartSite.js +0 -66
  163. package/constructs/SolidStartSite.tsdoc.d.ts +0 -2
  164. package/constructs/SolidStartSite.tsdoc.js +0 -2
  165. package/constructs/SsrFunction.d.ts +0 -60
  166. package/constructs/SsrFunction.js +0 -226
  167. package/constructs/SsrSite.d.ts +0 -407
  168. package/constructs/SsrSite.js +0 -850
  169. package/constructs/Stack.d.ts +0 -127
  170. package/constructs/Stack.js +0 -243
  171. package/constructs/StaticSite.d.ts +0 -348
  172. package/constructs/StaticSite.js +0 -468
  173. package/constructs/SvelteKitSite.d.ts +0 -40
  174. package/constructs/SvelteKitSite.js +0 -106
  175. package/constructs/SvelteKitSite.tsdoc.d.ts +0 -2
  176. package/constructs/SvelteKitSite.tsdoc.js +0 -2
  177. package/constructs/Table.d.ts +0 -410
  178. package/constructs/Table.js +0 -425
  179. package/constructs/Topic.d.ts +0 -257
  180. package/constructs/Topic.js +0 -273
  181. package/constructs/WebSocketApi.d.ts +0 -355
  182. package/constructs/WebSocketApi.js +0 -404
  183. package/constructs/cdk/HttpAwsIntegration.d.ts +0 -32
  184. package/constructs/cdk/HttpAwsIntegration.js +0 -24
  185. package/constructs/cdk/certificate-base.d.ts +0 -18
  186. package/constructs/cdk/certificate-base.js +0 -26
  187. package/constructs/cdk/dns-validated-certificate.d.ts +0 -77
  188. package/constructs/cdk/dns-validated-certificate.js +0 -125
  189. package/constructs/cdk/website-redirect.d.ts +0 -53
  190. package/constructs/cdk/website-redirect.js +0 -77
  191. package/constructs/context.d.ts +0 -3
  192. package/constructs/context.js +0 -27
  193. package/constructs/deferred_task.d.ts +0 -6
  194. package/constructs/deferred_task.js +0 -45
  195. package/constructs/deprecated/NextjsSite.d.ts +0 -309
  196. package/constructs/deprecated/NextjsSite.js +0 -1074
  197. package/constructs/deprecated/cross-region-helper.d.ts +0 -7
  198. package/constructs/deprecated/cross-region-helper.js +0 -152
  199. package/constructs/deprecated/index.d.ts +0 -1
  200. package/constructs/deprecated/index.js +0 -1
  201. package/constructs/future/Auth.d.ts +0 -80
  202. package/constructs/future/Auth.js +0 -122
  203. package/constructs/future/index.d.ts +0 -1
  204. package/constructs/future/index.js +0 -1
  205. package/constructs/index.d.ts +0 -32
  206. package/constructs/index.js +0 -32
  207. package/constructs/static-file-list.d.ts +0 -1
  208. package/constructs/static-file-list.js +0 -51
  209. package/constructs/util/apiGatewayV1AccessLog.d.ts +0 -15
  210. package/constructs/util/apiGatewayV1AccessLog.js +0 -76
  211. package/constructs/util/apiGatewayV2AccessLog.d.ts +0 -10
  212. package/constructs/util/apiGatewayV2AccessLog.js +0 -107
  213. package/constructs/util/apiGatewayV2Cors.d.ts +0 -67
  214. package/constructs/util/apiGatewayV2Cors.js +0 -21
  215. package/constructs/util/apiGatewayV2Domain.d.ts +0 -47
  216. package/constructs/util/apiGatewayV2Domain.js +0 -208
  217. package/constructs/util/appSyncApiDomain.d.ts +0 -41
  218. package/constructs/util/appSyncApiDomain.js +0 -176
  219. package/constructs/util/builder.d.ts +0 -3
  220. package/constructs/util/builder.js +0 -9
  221. package/constructs/util/duration.d.ts +0 -3
  222. package/constructs/util/duration.js +0 -19
  223. package/constructs/util/functionBinding.d.ts +0 -31
  224. package/constructs/util/functionBinding.js +0 -104
  225. package/constructs/util/functionUrlCors.d.ts +0 -67
  226. package/constructs/util/functionUrlCors.js +0 -23
  227. package/constructs/util/permission.d.ts +0 -8
  228. package/constructs/util/permission.js +0 -228
  229. package/constructs/util/size.d.ts +0 -3
  230. package/constructs/util/size.js +0 -12
  231. package/constructs/util/warning.d.ts +0 -11
  232. package/constructs/util/warning.js +0 -21
  233. package/context/context.d.ts +0 -13
  234. package/context/context.js +0 -69
  235. package/context/context2.d.ts +0 -16
  236. package/context/context2.js +0 -108
  237. package/context/handler.d.ts +0 -25
  238. package/context/handler.js +0 -21
  239. package/context/index.d.ts +0 -2
  240. package/context/index.js +0 -2
  241. package/credentials.d.ts +0 -9
  242. package/credentials.js +0 -145
  243. package/error.d.ts +0 -6
  244. package/error.js +0 -10
  245. package/index.d.ts +0 -1
  246. package/index.js +0 -1
  247. package/iot.d.ts +0 -6
  248. package/iot.js +0 -163
  249. package/logger.d.ts +0 -3
  250. package/logger.js +0 -32
  251. package/node/actor/index.d.ts +0 -29
  252. package/node/actor/index.js +0 -17
  253. package/node/api/index.d.ts +0 -64
  254. package/node/api/index.js +0 -179
  255. package/node/auth/adapter/adapter.d.ts +0 -3
  256. package/node/auth/adapter/adapter.js +0 -3
  257. package/node/auth/adapter/facebook.d.ts +0 -2
  258. package/node/auth/adapter/facebook.js +0 -26
  259. package/node/auth/adapter/github.d.ts +0 -2
  260. package/node/auth/adapter/github.js +0 -21
  261. package/node/auth/adapter/google.d.ts +0 -9
  262. package/node/auth/adapter/google.js +0 -18
  263. package/node/auth/adapter/link.d.ts +0 -8
  264. package/node/auth/adapter/link.js +0 -39
  265. package/node/auth/adapter/oauth.d.ts +0 -25
  266. package/node/auth/adapter/oauth.js +0 -52
  267. package/node/auth/adapter/oidc.d.ts +0 -17
  268. package/node/auth/adapter/oidc.js +0 -50
  269. package/node/auth/adapter/twitch.d.ts +0 -2
  270. package/node/auth/adapter/twitch.js +0 -11
  271. package/node/auth/auth.d.ts +0 -24
  272. package/node/auth/auth.js +0 -74
  273. package/node/auth/index.d.ts +0 -13
  274. package/node/auth/index.js +0 -12
  275. package/node/auth/session.d.ts +0 -76
  276. package/node/auth/session.js +0 -121
  277. package/node/bucket/index.d.ts +0 -3
  278. package/node/bucket/index.js +0 -2
  279. package/node/config/index.d.ts +0 -13
  280. package/node/config/index.js +0 -22
  281. package/node/event-bus/index.d.ts +0 -51
  282. package/node/event-bus/index.js +0 -76
  283. package/node/function/index.d.ts +0 -3
  284. package/node/function/index.js +0 -3
  285. package/node/future/auth/adapter/adapter.d.ts +0 -10
  286. package/node/future/auth/adapter/adapter.js +0 -1
  287. package/node/future/auth/adapter/code.d.ts +0 -17
  288. package/node/future/auth/adapter/code.js +0 -68
  289. package/node/future/auth/adapter/facebook.d.ts +0 -16
  290. package/node/future/auth/adapter/facebook.js +0 -27
  291. package/node/future/auth/adapter/github.d.ts +0 -23
  292. package/node/future/auth/adapter/github.js +0 -23
  293. package/node/future/auth/adapter/google.d.ts +0 -28
  294. package/node/future/auth/adapter/google.js +0 -22
  295. package/node/future/auth/adapter/link.d.ts +0 -13
  296. package/node/future/auth/adapter/link.js +0 -47
  297. package/node/future/auth/adapter/microsoft.d.ts +0 -22
  298. package/node/future/auth/adapter/microsoft.js +0 -16
  299. package/node/future/auth/adapter/oauth.d.ts +0 -41
  300. package/node/future/auth/adapter/oauth.js +0 -67
  301. package/node/future/auth/adapter/oidc.d.ts +0 -30
  302. package/node/future/auth/adapter/oidc.js +0 -63
  303. package/node/future/auth/adapter/spotify.d.ts +0 -23
  304. package/node/future/auth/adapter/spotify.js +0 -22
  305. package/node/future/auth/encryption.d.ts +0 -2
  306. package/node/future/auth/encryption.js +0 -30
  307. package/node/future/auth/handler.d.ts +0 -46
  308. package/node/future/auth/handler.js +0 -280
  309. package/node/future/auth/index.d.ts +0 -17
  310. package/node/future/auth/index.js +0 -15
  311. package/node/future/auth/session.d.ts +0 -71
  312. package/node/future/auth/session.js +0 -146
  313. package/node/graphql/index.d.ts +0 -15
  314. package/node/graphql/index.js +0 -32
  315. package/node/job/index.d.ts +0 -37
  316. package/node/job/index.js +0 -64
  317. package/node/kinesis-stream/index.d.ts +0 -3
  318. package/node/kinesis-stream/index.js +0 -3
  319. package/node/queue/index.d.ts +0 -3
  320. package/node/queue/index.js +0 -2
  321. package/node/rds/index.d.ts +0 -3
  322. package/node/rds/index.js +0 -2
  323. package/node/service/index.d.ts +0 -3
  324. package/node/service/index.js +0 -4
  325. package/node/site/index.d.ts +0 -18
  326. package/node/site/index.js +0 -18
  327. package/node/table/index.d.ts +0 -3
  328. package/node/table/index.js +0 -4
  329. package/node/topic/index.d.ts +0 -3
  330. package/node/topic/index.js +0 -4
  331. package/node/util/index.d.ts +0 -2
  332. package/node/util/index.js +0 -196
  333. package/node/util/loader.d.ts +0 -2
  334. package/node/util/loader.js +0 -51
  335. package/node/websocket-api/index.d.ts +0 -23
  336. package/node/websocket-api/index.js +0 -48
  337. package/pothos.d.ts +0 -7
  338. package/pothos.js +0 -160
  339. package/project.d.ts +0 -75
  340. package/project.js +0 -188
  341. package/runtime/handlers/container.d.ts +0 -2
  342. package/runtime/handlers/container.js +0 -263
  343. package/runtime/handlers/dotnet.d.ts +0 -2
  344. package/runtime/handlers/dotnet.js +0 -115
  345. package/runtime/handlers/go.d.ts +0 -2
  346. package/runtime/handlers/go.js +0 -126
  347. package/runtime/handlers/java.d.ts +0 -2
  348. package/runtime/handlers/java.js +0 -103
  349. package/runtime/handlers/node.d.ts +0 -2
  350. package/runtime/handlers/node.js +0 -269
  351. package/runtime/handlers/python.d.ts +0 -2
  352. package/runtime/handlers/python.js +0 -141
  353. package/runtime/handlers/pythonBundling.d.ts +0 -82
  354. package/runtime/handlers/pythonBundling.js +0 -80
  355. package/runtime/handlers/rust.d.ts +0 -2
  356. package/runtime/handlers/rust.js +0 -110
  357. package/runtime/handlers.d.ts +0 -74
  358. package/runtime/handlers.js +0 -151
  359. package/runtime/iot.d.ts +0 -1
  360. package/runtime/iot.js +0 -17
  361. package/runtime/runtime.d.ts +0 -32
  362. package/runtime/runtime.js +0 -1
  363. package/runtime/server.d.ts +0 -6
  364. package/runtime/server.js +0 -150
  365. package/runtime/workers.d.ts +0 -37
  366. package/runtime/workers.js +0 -85
  367. package/stacks/app-metadata.d.ts +0 -7
  368. package/stacks/app-metadata.js +0 -75
  369. package/stacks/assembly.d.ts +0 -1
  370. package/stacks/assembly.js +0 -4
  371. package/stacks/build.d.ts +0 -9
  372. package/stacks/build.js +0 -110
  373. package/stacks/deploy.d.ts +0 -9
  374. package/stacks/deploy.js +0 -240
  375. package/stacks/diff.d.ts +0 -8
  376. package/stacks/diff.js +0 -62
  377. package/stacks/index.d.ts +0 -10
  378. package/stacks/index.js +0 -10
  379. package/stacks/metadata.d.ts +0 -11
  380. package/stacks/metadata.js +0 -83
  381. package/stacks/monitor.d.ts +0 -32
  382. package/stacks/monitor.js +0 -151
  383. package/stacks/remove.d.ts +0 -8
  384. package/stacks/remove.js +0 -76
  385. package/stacks/synth.d.ts +0 -12
  386. package/stacks/synth.js +0 -94
  387. package/support/base-site-archiver.mjs +0 -99
  388. package/support/base-site-custom-resource/s3-handler.py +0 -195
  389. package/support/base-site-custom-resource/s3-upload.py +0 -89
  390. package/support/bootstrap-metadata-function/index.mjs +0 -58011
  391. package/support/bridge/Dockerfile +0 -3
  392. package/support/bridge/bridge.mjs +0 -146
  393. package/support/certificate-requestor/index.js +0 -549
  394. package/support/custom-resources/index.mjs +0 -180627
  395. package/support/dotnet31-bootstrap/Program.cs +0 -17
  396. package/support/dotnet31-bootstrap/dotnet-bootstrap.csproj +0 -12
  397. package/support/dotnet31-bootstrap/release/Amazon.Lambda.Core.dll +0 -0
  398. package/support/dotnet31-bootstrap/release/Amazon.Lambda.RuntimeSupport.dll +0 -0
  399. package/support/dotnet31-bootstrap/release/System.Runtime.CompilerServices.Unsafe.dll +0 -0
  400. package/support/dotnet31-bootstrap/release/System.Text.Encodings.Web.dll +0 -0
  401. package/support/dotnet31-bootstrap/release/System.Text.Json.dll +0 -0
  402. package/support/dotnet31-bootstrap/release/dotnet-bootstrap +0 -0
  403. package/support/dotnet31-bootstrap/release/dotnet-bootstrap.deps.json +0 -230
  404. package/support/dotnet31-bootstrap/release/dotnet-bootstrap.dll +0 -0
  405. package/support/dotnet31-bootstrap/release/dotnet-bootstrap.pdb +0 -0
  406. package/support/dotnet31-bootstrap/release/dotnet-bootstrap.runtimeconfig.json +0 -9
  407. package/support/dotnet6-bootstrap/Program.cs +0 -17
  408. package/support/dotnet6-bootstrap/dotnet-bootstrap.csproj +0 -12
  409. package/support/dotnet6-bootstrap/release/Amazon.Lambda.Core.dll +0 -0
  410. package/support/dotnet6-bootstrap/release/Amazon.Lambda.RuntimeSupport.dll +0 -0
  411. package/support/dotnet6-bootstrap/release/dotnet-bootstrap +0 -0
  412. package/support/dotnet6-bootstrap/release/dotnet-bootstrap.deps.json +0 -59
  413. package/support/dotnet6-bootstrap/release/dotnet-bootstrap.dll +0 -0
  414. package/support/dotnet6-bootstrap/release/dotnet-bootstrap.pdb +0 -0
  415. package/support/dotnet6-bootstrap/release/dotnet-bootstrap.runtimeconfig.json +0 -12
  416. package/support/edge-function/edge-lambda-version.mjs +0 -3
  417. package/support/edge-function/edge-lambda.mjs +0 -3
  418. package/support/edge-function/s3-bucket.mjs +0 -3
  419. package/support/event-bus-retrier/index.mjs +0 -75
  420. package/support/java-runtime/install.sh +0 -25
  421. package/support/java-runtime/pom.xml +0 -39
  422. package/support/java-runtime/release/aws-lambda-java-core-1.2.0.jar +0 -0
  423. package/support/java-runtime/release/aws-lambda-java-runtime-interface-client-1.1.0.jar +0 -0
  424. package/support/java-runtime/release/aws-lambda-java-serialization-1.0.0.jar +0 -0
  425. package/support/job-manager/index.mjs +0 -57679
  426. package/support/nixpacks/Dockerfile +0 -6
  427. package/support/nodejs-runtime/index.mjs +0 -169
  428. package/support/python-runtime/Dockerfile +0 -9
  429. package/support/python-runtime/Dockerfile.custom +0 -21
  430. package/support/python-runtime/Dockerfile.dependencies +0 -26
  431. package/support/python-runtime/runtime.py +0 -127
  432. package/support/rds-migrator/index.mjs +0 -49
  433. package/support/remix-site-function/edge-server.js +0 -161
  434. package/support/remix-site-function/polyfill.js +0 -24
  435. package/support/remix-site-function/regional-server.js +0 -164
  436. package/support/script-function/index.mjs +0 -48760
  437. package/support/service-dev-function/index.js +0 -1
  438. package/support/signing-function/index.mjs +0 -3769
  439. package/support/sls-nextjs-site-build-helper/build.cjs +0 -91
  440. package/support/sls-nextjs-site-build-helper/index-wrapper.js +0 -19
  441. package/support/sls-nextjs-site-function-code-replacer/lambda-code-updater.py +0 -156
  442. package/support/sls-nextjs-site-stub/index.html +0 -99
  443. package/support/ssr-site-function-archiver.mjs +0 -96
  444. package/support/ssr-site-function-stub/index.js +0 -5
  445. package/support/ssr-warmer/index.mjs +0 -34235
  446. package/util/error.d.ts +0 -3
  447. package/util/error.js +0 -6
  448. package/util/fs.d.ts +0 -4
  449. package/util/fs.js +0 -46
  450. package/util/lazy.d.ts +0 -1
  451. package/util/lazy.js +0 -11
  452. package/util/module.d.ts +0 -1
  453. package/util/module.js +0 -5
  454. package/util/process.d.ts +0 -2
  455. package/util/process.js +0 -3
  456. package/watcher.d.ts +0 -14
  457. package/watcher.js +0 -35
package/constructs/RDS.js DELETED
@@ -1,363 +0,0 @@
1
- import path from "path";
2
- import glob from "glob";
3
- import fs from "fs";
4
- import url from "url";
5
- import * as crypto from "crypto";
6
- import { Construct } from "constructs";
7
- import { Duration as CDKDuration, CustomResource } from "aws-cdk-lib/core";
8
- import { SubnetType, Vpc } from "aws-cdk-lib/aws-ec2";
9
- import { AuroraCapacityUnit, AuroraEngineVersion, AuroraMysqlEngineVersion, AuroraPostgresEngineVersion, DatabaseClusterEngine, ServerlessCluster, } from "aws-cdk-lib/aws-rds";
10
- import { Code, Function, Runtime } from "aws-cdk-lib/aws-lambda";
11
- import { PolicyStatement } from "aws-cdk-lib/aws-iam";
12
- import { Stack } from "./Stack.js";
13
- import { getFunctionRef, isCDKConstruct } from "./Construct.js";
14
- import { Function as Fn } from "./Function.js";
15
- const __dirname = url.fileURLToPath(new URL(".", import.meta.url));
16
- /////////////////////
17
- // Construct
18
- /////////////////////
19
- /**
20
- * The `RDS` construct is a higher level CDK construct that makes it easy to create an [RDS Serverless Cluster](https://aws.amazon.com/rds/).
21
- *
22
- * @example
23
- *
24
- * ```js
25
- * import { RDS } from "sst/constructs";
26
- *
27
- * new RDS(stack, "Database", {
28
- * engine: "postgresql11.13",
29
- * defaultDatabaseName: "my_database",
30
- * });
31
- * ```
32
- */
33
- export class RDS extends Construct {
34
- id;
35
- cdk;
36
- /**
37
- * The ARN of the internally created CDK ServerlessCluster instance.
38
- */
39
- migratorFunction;
40
- props;
41
- secret;
42
- constructor(scope, id, props) {
43
- super(scope, props.cdk?.id || id);
44
- this.validateRequiredProps(props);
45
- this.id = id;
46
- this.cdk = {};
47
- this.props = props || {};
48
- let { migrations, cdk } = this.props;
49
- // Create the cluster
50
- if (cdk && isCDKConstruct(cdk.cluster)) {
51
- this.validateCDKPropWhenIsConstruct();
52
- this.cdk.cluster = this.importCluster();
53
- this.secret = cdk.secret;
54
- }
55
- else {
56
- this.validateCDKPropWhenIsClusterProps();
57
- this.cdk.cluster = this.createCluster();
58
- this.secret = this.cdk.cluster.secret;
59
- }
60
- // Create the migrator function
61
- if (migrations) {
62
- this.validateMigrationsFileExists(migrations);
63
- this.createMigrationsFunction(migrations);
64
- this.createMigrationCustomResource(migrations);
65
- }
66
- }
67
- /**
68
- * The ARN of the internally created RDS Serverless Cluster.
69
- */
70
- get clusterArn() {
71
- return this.cdk.cluster.clusterArn;
72
- }
73
- /**
74
- * The ARN of the internally created RDS Serverless Cluster.
75
- */
76
- get clusterIdentifier() {
77
- return this.cdk.cluster.clusterIdentifier;
78
- }
79
- /**
80
- * The ARN of the internally created RDS Serverless Cluster.
81
- */
82
- get clusterEndpoint() {
83
- return this.cdk.cluster.clusterEndpoint;
84
- }
85
- /**
86
- * The default database name of the RDS Serverless Cluster.
87
- */
88
- get defaultDatabaseName() {
89
- return this.props.defaultDatabaseName;
90
- }
91
- /**
92
- * The ARN of the internally created Secrets Manager Secret.
93
- */
94
- get secretArn() {
95
- return this.secret.secretArn;
96
- }
97
- getConstructMetadata() {
98
- const { engine, defaultDatabaseName, types } = this.props;
99
- return {
100
- type: "RDS",
101
- data: {
102
- engine,
103
- secretArn: this.secretArn,
104
- types: typeof types === "string"
105
- ? {
106
- path: types,
107
- }
108
- : types,
109
- clusterArn: this.clusterArn,
110
- clusterIdentifier: this.clusterIdentifier,
111
- defaultDatabaseName,
112
- migrator: this.migratorFunction && getFunctionRef(this.migratorFunction),
113
- },
114
- };
115
- }
116
- /** @internal */
117
- getFunctionBinding() {
118
- return {
119
- clientPackage: "rds",
120
- variables: {
121
- clusterArn: {
122
- type: "plain",
123
- value: this.clusterArn,
124
- },
125
- secretArn: {
126
- type: "plain",
127
- value: this.secretArn,
128
- },
129
- defaultDatabaseName: {
130
- type: "plain",
131
- value: this.defaultDatabaseName,
132
- },
133
- },
134
- permissions: {
135
- "rds-data:*": [this.clusterArn],
136
- "secretsmanager:GetSecretValue": [
137
- this.secret.secretFullArn || `${this.secret.secretArn}*`,
138
- ],
139
- "secretsmanager:DescribeSecret": [
140
- this.secret.secretFullArn || `${this.secret.secretArn}*`,
141
- ],
142
- // grant permission to the "encryptionkey" if set
143
- ...(this.secret.encryptionKey
144
- ? {
145
- "kms:Decrypt": [this.secret.encryptionKey.keyArn],
146
- }
147
- : {}),
148
- },
149
- };
150
- }
151
- validateRequiredProps(props) {
152
- if (!props.engine) {
153
- throw new Error(`Missing "engine" in the "${this.node.id}" RDS`);
154
- }
155
- if (!props.defaultDatabaseName) {
156
- throw new Error(`Missing "defaultDatabaseName" in the "${this.node.id}" RDS`);
157
- }
158
- }
159
- validateCDKPropWhenIsConstruct() {
160
- const { cdk } = this.props;
161
- if (!cdk?.secret) {
162
- throw new Error(`Missing "cdk.secret" in the "${this.node.id}" RDS. You must provide a secret to import an existing RDS Serverless Cluster.`);
163
- }
164
- }
165
- validateCDKPropWhenIsClusterProps() {
166
- const { cdk } = this.props;
167
- const props = (cdk?.cluster || {});
168
- // Validate "engine" is passed in from the top level
169
- if (props.engine) {
170
- throw new Error(`Use "engine" instead of "cdk.cluster.engine" to configure the RDS database engine.`);
171
- }
172
- // Validate "defaultDatabaseName" is passed in from the top level
173
- if (props.defaultDatabaseName) {
174
- throw new Error(`Use "defaultDatabaseName" instead of "cdk.cluster.defaultDatabaseName" to configure the RDS database engine.`);
175
- }
176
- // Validate "scaling" is passed in from the top level
177
- if (props.scaling) {
178
- throw new Error(`Use "scaling" instead of "cdk.cluster.scaling" to configure the RDS database auto-scaling.`);
179
- }
180
- // Validate "enableDataApi" is not passed in
181
- if (props.enableDataApi === false) {
182
- throw new Error(`Do not configure the "cdk.cluster.enableDataApi". Data API is always enabled for this construct.`);
183
- }
184
- // Validate Secrets Manager is used for "credentials" not password
185
- if (props.credentials?.password) {
186
- throw new Error(`Only credentials managed by SecretManager are supported for the "cdk.cluster.credentials".`);
187
- }
188
- return props;
189
- }
190
- validateMigrationsFileExists(migrations) {
191
- if (!fs.existsSync(migrations))
192
- throw new Error(`Cannot find the migrations in "${path.resolve(migrations)}".`);
193
- }
194
- getEngine(engine) {
195
- if (engine === "mysql5.6") {
196
- return DatabaseClusterEngine.aurora({
197
- version: AuroraEngineVersion.VER_10A,
198
- });
199
- }
200
- else if (engine === "mysql5.7") {
201
- return DatabaseClusterEngine.auroraMysql({
202
- version: AuroraMysqlEngineVersion.VER_2_07_1,
203
- });
204
- }
205
- else if (engine === "postgresql11.13") {
206
- return DatabaseClusterEngine.auroraPostgres({
207
- version: AuroraPostgresEngineVersion.VER_11_13,
208
- });
209
- }
210
- else if (engine === "postgresql11.16") {
211
- return DatabaseClusterEngine.auroraPostgres({
212
- version: AuroraPostgresEngineVersion.VER_11_16,
213
- });
214
- }
215
- else if (engine === "postgresql13.9") {
216
- return DatabaseClusterEngine.auroraPostgres({
217
- version: AuroraPostgresEngineVersion.VER_13_9,
218
- });
219
- }
220
- throw new Error(`The specified "engine" is not supported for sst.RDS. Only mysql5.6, mysql5.7, postgresql11.13, postgresql11.16, and postgres13.9 engines are currently supported.`);
221
- }
222
- getScaling(scaling) {
223
- return {
224
- autoPause: scaling?.autoPause === false
225
- ? CDKDuration.minutes(0)
226
- : scaling?.autoPause === true || scaling?.autoPause === undefined
227
- ? CDKDuration.minutes(5)
228
- : CDKDuration.minutes(scaling?.autoPause),
229
- minCapacity: AuroraCapacityUnit[scaling?.minCapacity || "ACU_2"],
230
- maxCapacity: AuroraCapacityUnit[scaling?.maxCapacity || "ACU_16"],
231
- };
232
- }
233
- getVpc(props) {
234
- if (props.vpc) {
235
- return props.vpc;
236
- }
237
- return new Vpc(this, "vpc", {
238
- natGateways: 0,
239
- });
240
- }
241
- getVpcSubnets(props) {
242
- if (props.vpc) {
243
- return props.vpcSubnets;
244
- }
245
- return {
246
- subnetType: SubnetType.PRIVATE_ISOLATED,
247
- };
248
- }
249
- createCluster() {
250
- const { engine, defaultDatabaseName, scaling, cdk } = this.props;
251
- const app = this.node.root;
252
- const clusterProps = (cdk?.cluster || {});
253
- return new ServerlessCluster(this, "Cluster", {
254
- clusterIdentifier: app.logicalPrefixedName(this.node.id),
255
- ...clusterProps,
256
- defaultDatabaseName: defaultDatabaseName,
257
- enableDataApi: true,
258
- engine: this.getEngine(engine),
259
- scaling: this.getScaling(scaling),
260
- vpc: this.getVpc(clusterProps),
261
- vpcSubnets: this.getVpcSubnets(clusterProps),
262
- });
263
- }
264
- importCluster() {
265
- const { cdk } = this.props;
266
- return cdk.cluster;
267
- }
268
- createMigrationsFunction(migrations) {
269
- const { engine, defaultDatabaseName } = this.props;
270
- const app = this.node.root;
271
- // path to migration scripts inside the Lambda function
272
- const migrationsDestination = "sst_rds_migration_scripts";
273
- // fullpath of the migrator Lambda function
274
- // Note:
275
- // - when invoked from `sst build`, __dirname is `resources/dist`
276
- // - when running resources tests, __dirname is `resources/src`
277
- // For now we will do `__dirname/../dist` to make both cases work.
278
- const fn = new Fn(this, "MigrationFunction", {
279
- handler: path.resolve(path.join(__dirname, "../support/rds-migrator/index.handler")),
280
- runtime: "nodejs16.x",
281
- timeout: 900,
282
- memorySize: 1024,
283
- environment: {
284
- RDS_ARN: this.cdk.cluster.clusterArn,
285
- RDS_SECRET: this.cdk.cluster.secret.secretArn,
286
- RDS_DATABASE: defaultDatabaseName,
287
- RDS_ENGINE_MODE: engine.includes("postgres") ? "postgres" : "mysql",
288
- // for live development, perserve the migrations path so the migrator
289
- // can locate the migration files
290
- RDS_MIGRATIONS_PATH: app.mode === "dev" ? migrations : migrationsDestination,
291
- },
292
- // Note that we need to generate a relative path of the migrations off the
293
- // srcPath because sst.Function internally builds the copy "from" path by
294
- // joining the srcPath and the from path.
295
- copyFiles: [
296
- {
297
- from: migrations,
298
- to: migrationsDestination,
299
- },
300
- ],
301
- nodejs: {
302
- install: ["kysely", "kysely-data-api"],
303
- format: "esm",
304
- },
305
- });
306
- fn._doNotAllowOthersToBind = true;
307
- fn.attachPermissions([this.cdk.cluster]);
308
- this.migratorFunction = fn;
309
- }
310
- createMigrationCustomResource(migrations) {
311
- const app = this.node.root;
312
- // Create custom resource handler
313
- const handler = new Function(this, "MigrationHandler", {
314
- code: Code.fromAsset(path.join(__dirname, "../support/script-function")),
315
- runtime: Runtime.NODEJS_16_X,
316
- handler: "index.handler",
317
- timeout: CDKDuration.minutes(15),
318
- memorySize: 1024,
319
- initialPolicy: [
320
- new PolicyStatement({
321
- actions: ["cloudformation:DescribeStacks"],
322
- resources: [Stack.of(this).stackId],
323
- }),
324
- ],
325
- });
326
- this.migratorFunction?.grantInvoke(handler);
327
- // Note: "MigrationsHash" is generated to ensure the Custom Resource function
328
- // is only run when migration files change.
329
- //
330
- // Do not use the hash in Live mode, b/c we want the custom resource
331
- // to remain the same in CloudFormation template when rebuilding
332
- // infrastructure. Otherwise, there will always be a change when
333
- // rebuilding infrastructure b/c the "BuildAt" property changes on
334
- // each build.
335
- const hash = app.mode === "dev" ? 0 : this.generateMigrationsHash(migrations);
336
- new CustomResource(this, "MigrationResource", {
337
- serviceToken: handler.functionArn,
338
- resourceType: "Custom::SSTScript",
339
- properties: {
340
- UserCreateFunction: app.mode === "dev" ? undefined : this.migratorFunction?.functionName,
341
- UserUpdateFunction: app.mode === "dev" ? undefined : this.migratorFunction?.functionName,
342
- UserParams: JSON.stringify({}),
343
- MigrationsHash: hash,
344
- },
345
- });
346
- }
347
- generateMigrationsHash(migrations) {
348
- // Get all files inside the migrations folder
349
- const files = glob.sync("**", {
350
- dot: true,
351
- nodir: true,
352
- follow: true,
353
- cwd: migrations,
354
- });
355
- // Calculate hash of all files content
356
- return crypto
357
- .createHash("md5")
358
- .update(files
359
- .map((file) => fs.readFileSync(path.join(migrations, file)))
360
- .join(""))
361
- .digest("hex");
362
- }
363
- }
@@ -1,42 +0,0 @@
1
- import { SsrSite } from "./SsrSite.js";
2
- import { SsrFunction } from "./SsrFunction.js";
3
- import { EdgeFunction } from "./EdgeFunction.js";
4
- /**
5
- * The `RemixSite` construct is a higher level CDK construct that makes it easy to create a Remix app.
6
- *
7
- * @example
8
- *
9
- * Deploys a Remix app in the `my-remix-app` directory.
10
- *
11
- * ```js
12
- * new RemixSite(stack, "web", {
13
- * path: "my-remix-app/",
14
- * });
15
- * ```
16
- */
17
- export declare class RemixSite extends SsrSite {
18
- private serverModuleFormat;
19
- protected initBuildConfig(): {
20
- typesPath: string;
21
- serverBuildOutputFile: string;
22
- clientBuildOutputDir: string;
23
- clientBuildVersionedSubDir: string;
24
- clientCFFunctionInjection: string;
25
- };
26
- private createServerLambdaBundle;
27
- protected createFunctionForRegional(): SsrFunction;
28
- protected createFunctionForEdge(): EdgeFunction;
29
- getConstructMetadata(): {
30
- data: {
31
- mode: "placeholder" | "deployed";
32
- path: string;
33
- runtime: "nodejs14.x" | "nodejs16.x" | "nodejs18.x";
34
- customDomainUrl: string | undefined;
35
- url: string | undefined;
36
- edge: boolean | undefined;
37
- server: string;
38
- secrets: string[];
39
- };
40
- type: "RemixSite";
41
- };
42
- }
@@ -1,158 +0,0 @@
1
- import fs from "fs";
2
- import url from "url";
3
- import path from "path";
4
- import { createRequire } from "module";
5
- const require = createRequire(import.meta.url);
6
- import { SsrSite } from "./SsrSite.js";
7
- import { SsrFunction } from "./SsrFunction.js";
8
- import { EdgeFunction } from "./EdgeFunction.js";
9
- import { VisibleError } from "../error.js";
10
- import { useWarning } from "./util/warning.js";
11
- const __dirname = url.fileURLToPath(new URL(".", import.meta.url));
12
- /**
13
- * The `RemixSite` construct is a higher level CDK construct that makes it easy to create a Remix app.
14
- *
15
- * @example
16
- *
17
- * Deploys a Remix app in the `my-remix-app` directory.
18
- *
19
- * ```js
20
- * new RemixSite(stack, "web", {
21
- * path: "my-remix-app/",
22
- * });
23
- * ```
24
- */
25
- export class RemixSite extends SsrSite {
26
- serverModuleFormat = "cjs";
27
- initBuildConfig() {
28
- const { path: sitePath } = this.props;
29
- const configDefaults = {
30
- assetsBuildDirectory: "public/build",
31
- publicPath: "/build/",
32
- serverBuildPath: "build/index.js",
33
- serverPlatform: "node",
34
- };
35
- // Validate config path
36
- const configPath = path.resolve(sitePath, "remix.config.js");
37
- if (!fs.existsSync(configPath)) {
38
- throw new VisibleError(`In the "${this.node.id}" Site, could not find "remix.config.js" at expected path "${configPath}".`);
39
- }
40
- // Load config
41
- const userConfig = require(configPath);
42
- this.serverModuleFormat = userConfig.serverModuleFormat ?? "cjs";
43
- if (userConfig.serverModuleFormat !== "esm") {
44
- useWarning().add("remix.cjs");
45
- }
46
- // Validate config
47
- const config = {
48
- ...configDefaults,
49
- ...userConfig,
50
- };
51
- Object.keys(configDefaults).forEach((key) => {
52
- const k = key;
53
- if (config[k] !== configDefaults[k]) {
54
- throw new VisibleError(`In the "${this.node.id}" Site, remix.config.js "${key}" must be "${configDefaults[k]}".`);
55
- }
56
- });
57
- return {
58
- typesPath: ".",
59
- serverBuildOutputFile: "build/index.js",
60
- clientBuildOutputDir: "public",
61
- clientBuildVersionedSubDir: "build",
62
- // Note: When using libraries like remix-flat-routes the file can
63
- // contains special characters like "+". It needs to be encoded.
64
- clientCFFunctionInjection: `
65
- request.uri = request.uri.split('/').map(encodeURIComponent).join('/');
66
- `,
67
- };
68
- }
69
- createServerLambdaBundle(wrapperFile) {
70
- // Create a Lambda@Edge handler for the Remix server bundle.
71
- //
72
- // Note: Remix does perform their own internal ESBuild process, but it
73
- // doesn't bundle 3rd party dependencies by default. In the interest of
74
- // keeping deployments seamless for users we will create a server bundle
75
- // with all dependencies included. We will still need to consider how to
76
- // address any need for external dependencies, although I think we should
77
- // possibly consider this at a later date.
78
- // In this path we are assuming that the Remix build only outputs the
79
- // "core server build". We can safely assume this as we have guarded the
80
- // remix.config.js to ensure it matches our expectations for the build
81
- // configuration.
82
- // We need to ensure that the "core server build" is wrapped with an
83
- // appropriate Lambda@Edge handler. We will utilise an internal asset
84
- // template to create this wrapper within the "core server build" output
85
- // directory.
86
- // Ensure build directory exists
87
- const buildPath = path.join(this.props.path, "build");
88
- fs.mkdirSync(buildPath, { recursive: true });
89
- // Copy the server lambda handler
90
- fs.copyFileSync(path.resolve(__dirname, `../support/remix-site-function/${wrapperFile}`), path.join(buildPath, "server.js"));
91
- // Copy the Remix polyfil to the server build directory
92
- //
93
- // Note: We need to ensure that the polyfills are injected above other code that
94
- // will depend on them. Importing them within the top of the lambda code
95
- // doesn't appear to guarantee this, we therefore leverage ESBUild's
96
- // `inject` option to ensure that the polyfills are injected at the top of
97
- // the bundle.
98
- const polyfillDest = path.join(buildPath, "polyfill.js");
99
- fs.copyFileSync(path.resolve(__dirname, "../support/remix-site-function/polyfill.js"), polyfillDest);
100
- return {
101
- handler: path.join(buildPath, "server.handler"),
102
- esbuild: { inject: [polyfillDest] },
103
- };
104
- }
105
- createFunctionForRegional() {
106
- const { runtime, timeout, memorySize, permissions, environment, bind, nodejs, cdk, } = this.props;
107
- const { handler, esbuild } = this.createServerLambdaBundle("regional-server.js");
108
- return new SsrFunction(this, `ServerFunction`, {
109
- description: "Server handler for Remix",
110
- handler,
111
- runtime,
112
- memorySize,
113
- timeout,
114
- nodejs: {
115
- format: this.serverModuleFormat,
116
- ...nodejs,
117
- esbuild: {
118
- ...esbuild,
119
- ...nodejs?.esbuild,
120
- inject: [...(nodejs?.esbuild?.inject || []), ...esbuild.inject],
121
- },
122
- },
123
- bind,
124
- environment,
125
- permissions,
126
- ...cdk?.server,
127
- });
128
- }
129
- createFunctionForEdge() {
130
- const { runtime, timeout, memorySize, bind, permissions, environment, nodejs, } = this.props;
131
- const { handler, esbuild } = this.createServerLambdaBundle("edge-server.js");
132
- return new EdgeFunction(this, `Server`, {
133
- scopeOverride: this,
134
- handler,
135
- runtime,
136
- timeout,
137
- memorySize,
138
- bind,
139
- environment,
140
- permissions,
141
- nodejs: {
142
- format: this.serverModuleFormat,
143
- ...nodejs,
144
- esbuild: {
145
- ...esbuild,
146
- ...nodejs?.esbuild,
147
- inject: [...(nodejs?.esbuild?.inject || []), ...esbuild.inject],
148
- },
149
- },
150
- });
151
- }
152
- getConstructMetadata() {
153
- return {
154
- type: "RemixSite",
155
- ...this.getConstructMetadataBase(),
156
- };
157
- }
158
- }
@@ -1,2 +0,0 @@
1
- export * from "./RemixSite.js";
2
- export * from "./SsrSite.js";
@@ -1,2 +0,0 @@
1
- export * from "./RemixSite.js";
2
- export * from "./SsrSite.js";