stacktape 3.5.7 → 3.6.0-beta.0
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/.tsconfig.bun-build.json +1 -0
- package/ai-docs/cli-ref/aws-profile-create.md +22 -0
- package/ai-docs/cli-ref/aws-profile-delete.md +22 -0
- package/ai-docs/cli-ref/aws-profile-list.md +20 -0
- package/ai-docs/cli-ref/aws-profile-update.md +22 -0
- package/ai-docs/cli-ref/bastion-session.md +29 -0
- package/ai-docs/cli-ref/bastion-tunnel.md +30 -0
- package/ai-docs/cli-ref/bucket-sync.md +30 -0
- package/ai-docs/cli-ref/cf-module-update.md +26 -0
- package/ai-docs/cli-ref/cf-rollback.md +28 -0
- package/ai-docs/cli-ref/codebuild-deploy.md +34 -0
- package/ai-docs/cli-ref/compile-template.md +25 -0
- package/ai-docs/cli-ref/container-session.md +30 -0
- package/ai-docs/cli-ref/debug-alarms.md +28 -0
- package/ai-docs/cli-ref/debug-aws-sdk.md +33 -0
- package/ai-docs/cli-ref/debug-container-exec.md +36 -0
- package/ai-docs/cli-ref/debug-dynamodb.md +35 -0
- package/ai-docs/cli-ref/debug-logs.md +34 -0
- package/ai-docs/cli-ref/debug-metrics.md +33 -0
- package/ai-docs/cli-ref/debug-opensearch.md +35 -0
- package/ai-docs/cli-ref/debug-redis.md +36 -0
- package/ai-docs/cli-ref/debug-sql.md +35 -0
- package/ai-docs/cli-ref/defaults-configure.md +29 -0
- package/ai-docs/cli-ref/defaults-list.md +20 -0
- package/ai-docs/cli-ref/delete.md +24 -0
- package/ai-docs/cli-ref/deploy.md +25 -0
- package/ai-docs/cli-ref/deployment-script-run.md +28 -0
- package/ai-docs/cli-ref/dev-stop.md +26 -0
- package/ai-docs/cli-ref/dev.md +45 -0
- package/ai-docs/cli-ref/domain-add.md +26 -0
- package/ai-docs/cli-ref/help.md +18 -0
- package/ai-docs/cli-ref/info-operations.md +22 -0
- package/ai-docs/cli-ref/info-stack.md +30 -0
- package/ai-docs/cli-ref/info-stacks.md +26 -0
- package/ai-docs/cli-ref/info-whoami.md +22 -0
- package/ai-docs/cli-ref/init.md +30 -0
- package/ai-docs/cli-ref/login.md +20 -0
- package/ai-docs/cli-ref/logout.md +18 -0
- package/ai-docs/cli-ref/mcp-add.md +22 -0
- package/ai-docs/cli-ref/mcp.md +20 -0
- package/ai-docs/cli-ref/org-create.md +24 -0
- package/ai-docs/cli-ref/org-delete.md +24 -0
- package/ai-docs/cli-ref/org-list.md +22 -0
- package/ai-docs/cli-ref/package-workloads.md +25 -0
- package/ai-docs/cli-ref/param-get.md +26 -0
- package/ai-docs/cli-ref/preview-changes.md +23 -0
- package/ai-docs/cli-ref/project-create.md +22 -0
- package/ai-docs/cli-ref/projects-list.md +22 -0
- package/ai-docs/cli-ref/rollback.md +28 -0
- package/ai-docs/cli-ref/script-run.md +29 -0
- package/ai-docs/cli-ref/secret-create.md +28 -0
- package/ai-docs/cli-ref/secret-delete.md +26 -0
- package/ai-docs/cli-ref/secret-get.md +26 -0
- package/ai-docs/cli-ref/upgrade.md +20 -0
- package/ai-docs/cli-ref/version.md +18 -0
- package/ai-docs/concept/connecting-resources.md +369 -0
- package/ai-docs/concept/directives.md +371 -0
- package/ai-docs/concept/extending-cloudformation.md +315 -0
- package/ai-docs/concept/overrides-and-transforms.md +352 -0
- package/ai-docs/concept/stages-and-environments.md +347 -0
- package/ai-docs/concept/typescript-config.md +447 -0
- package/ai-docs/concept/yaml-config.md +338 -0
- package/ai-docs/config-ref/_root.md +142 -0
- package/ai-docs/config-ref/application-load-balancer.md +1109 -0
- package/ai-docs/config-ref/astro-web.md +115 -0
- package/ai-docs/config-ref/aws-cdk-construct.md +68 -0
- package/ai-docs/config-ref/bastion.md +93 -0
- package/ai-docs/config-ref/batch-job.md +179 -0
- package/ai-docs/config-ref/bucket.md +348 -0
- package/ai-docs/config-ref/cdn.md +496 -0
- package/ai-docs/config-ref/custom-resource.md +80 -0
- package/ai-docs/config-ref/deployment-script.md +79 -0
- package/ai-docs/config-ref/dynamo-db-table.md +202 -0
- package/ai-docs/config-ref/edge-lambda-function.md +87 -0
- package/ai-docs/config-ref/efs-filesystem.md +72 -0
- package/ai-docs/config-ref/event-bus.md +63 -0
- package/ai-docs/config-ref/function.md +409 -0
- package/ai-docs/config-ref/hosting-bucket.md +171 -0
- package/ai-docs/config-ref/http-api-gateway.md +149 -0
- package/ai-docs/config-ref/http-endpoint.md +92 -0
- package/ai-docs/config-ref/kinesis-stream.md +97 -0
- package/ai-docs/config-ref/mongo-db-atlas-cluster.md +254 -0
- package/ai-docs/config-ref/multi-container-workload.md +399 -0
- package/ai-docs/config-ref/network-load-balancer.md +118 -0
- package/ai-docs/config-ref/nextjs-web.md +147 -0
- package/ai-docs/config-ref/nuxt-web.md +81 -0
- package/ai-docs/config-ref/open-search.md +206 -0
- package/ai-docs/config-ref/private-service.md +75 -0
- package/ai-docs/config-ref/redis-cluster.md +223 -0
- package/ai-docs/config-ref/relational-database.md +525 -0
- package/ai-docs/config-ref/remix-web.md +74 -0
- package/ai-docs/config-ref/sns-topic.md +69 -0
- package/ai-docs/config-ref/solidstart-web.md +75 -0
- package/ai-docs/config-ref/sqs-queue-not-empty.md +405 -0
- package/ai-docs/config-ref/sqs-queue.md +232 -0
- package/ai-docs/config-ref/state-machine.md +235 -0
- package/ai-docs/config-ref/sveltekit-web.md +81 -0
- package/ai-docs/config-ref/tanstack-web.md +75 -0
- package/ai-docs/config-ref/upstash-redis.md +59 -0
- package/ai-docs/config-ref/user-auth-pool.md +876 -0
- package/ai-docs/config-ref/web-app-firewall.md +212 -0
- package/ai-docs/config-ref/web-service.md +178 -0
- package/ai-docs/config-ref/worker-service.md +41 -0
- package/ai-docs/getting-started/console.md +232 -0
- package/ai-docs/getting-started/deployment.md +434 -0
- package/ai-docs/getting-started/dev-mode.md +118 -0
- package/ai-docs/getting-started/how-it-works.md +119 -0
- package/ai-docs/getting-started/intro.md +157 -0
- package/ai-docs/getting-started/using-with-ai.md +228 -0
- package/ai-docs/getting-started/workflow.md +197 -0
- package/ai-docs/index.json +1514 -0
- package/ai-docs/recipe/background-jobs.md +183 -0
- package/ai-docs/recipe/database-migrations.md +240 -0
- package/ai-docs/recipe/graphql-api.md +211 -0
- package/ai-docs/recipe/monorepo-setup.md +183 -0
- package/ai-docs/recipe/nextjs-full-stack.md +188 -0
- package/ai-docs/recipe/rest-api-with-database.md +156 -0
- package/ai-docs/recipe/scheduled-tasks.md +186 -0
- package/ai-docs/recipe/static-website.md +241 -0
- package/ai-docs/troubleshooting/cloudformation-stack-states.md +189 -0
- package/bin/stacktape.js +206 -41
- package/package.json +1 -1
- package/plain.d.ts +309 -54
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
---
|
|
2
|
+
docType: config-ref
|
|
3
|
+
title: State Machine
|
|
4
|
+
resourceType: state-machine
|
|
5
|
+
tags:
|
|
6
|
+
- state-machine
|
|
7
|
+
- step-functions
|
|
8
|
+
- stepfunctions
|
|
9
|
+
- workflow
|
|
10
|
+
source: types/stacktape-config/state-machines.d.ts
|
|
11
|
+
priority: 1
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# State Machine
|
|
15
|
+
|
|
16
|
+
Visual workflow engine for orchestrating Lambda functions, API calls, and other AWS services.
|
|
17
|
+
|
|
18
|
+
Define multi-step workflows with branching, retries, parallel execution, and error handling —
|
|
19
|
+
all without writing orchestration code. Pay per state transition (~$0.025/1,000 transitions).
|
|
20
|
+
Defined using [Amazon States Language (ASL)](https://states-language.net/spec.html).
|
|
21
|
+
|
|
22
|
+
Resource type: `state-machine`
|
|
23
|
+
|
|
24
|
+
## TypeScript Definition
|
|
25
|
+
|
|
26
|
+
```typescript
|
|
27
|
+
/**
|
|
28
|
+
* #### Visual workflow engine for orchestrating Lambda functions, API calls, and other AWS services.
|
|
29
|
+
*
|
|
30
|
+
* ---
|
|
31
|
+
*
|
|
32
|
+
* Define multi-step workflows with branching, retries, parallel execution, and error handling —
|
|
33
|
+
* all without writing orchestration code. Pay per state transition (~$0.025/1,000 transitions).
|
|
34
|
+
* Defined using [Amazon States Language (ASL)](https://states-language.net/spec.html).
|
|
35
|
+
*/
|
|
36
|
+
interface StateMachine {
|
|
37
|
+
type: 'state-machine';
|
|
38
|
+
properties: StateMachineProps;
|
|
39
|
+
overrides?: ResourceOverrides;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
interface StateMachineProps {
|
|
43
|
+
/**
|
|
44
|
+
* #### The workflow definition in [Amazon States Language (ASL)](https://states-language.net/spec.html).
|
|
45
|
+
*/
|
|
46
|
+
definition: StateMachineDefinition;
|
|
47
|
+
}
|
|
48
|
+
interface StateMachineDefinition {
|
|
49
|
+
/**
|
|
50
|
+
* #### A human-readable description of the state machine.
|
|
51
|
+
*/
|
|
52
|
+
Comment?: string;
|
|
53
|
+
/**
|
|
54
|
+
* #### The name of the state to start the execution at.
|
|
55
|
+
*/
|
|
56
|
+
StartAt: string;
|
|
57
|
+
/**
|
|
58
|
+
* #### An object containing the states of the state machine.
|
|
59
|
+
*/
|
|
60
|
+
States: {
|
|
61
|
+
[k: string]: State;
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* #### The version of the Amazon States Language.
|
|
65
|
+
*/
|
|
66
|
+
Version?: string;
|
|
67
|
+
/**
|
|
68
|
+
* #### The maximum time, in seconds, that a state machine can run.
|
|
69
|
+
*/
|
|
70
|
+
TimeoutSeconds?: number;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
interface Choice {
|
|
74
|
+
Type: string;
|
|
75
|
+
Next?: string;
|
|
76
|
+
End?: true;
|
|
77
|
+
Comment?: string;
|
|
78
|
+
OutputPath?: string | null;
|
|
79
|
+
InputPath?: string | null;
|
|
80
|
+
Choices: Operator[];
|
|
81
|
+
Default?: string;
|
|
82
|
+
}
|
|
83
|
+
interface Operator {
|
|
84
|
+
Variable?: string;
|
|
85
|
+
Next?: string;
|
|
86
|
+
And?: Operator[];
|
|
87
|
+
Or?: Operator[];
|
|
88
|
+
Not?: Operator;
|
|
89
|
+
BooleanEquals?: boolean;
|
|
90
|
+
NumericEquals?: number;
|
|
91
|
+
NumericGreaterThan?: number;
|
|
92
|
+
NumericGreaterThanEquals?: number;
|
|
93
|
+
NumericLessThan?: number;
|
|
94
|
+
NumericLessThanEquals?: number;
|
|
95
|
+
StringEquals?: string;
|
|
96
|
+
StringGreaterThan?: string;
|
|
97
|
+
StringGreaterThanEquals?: string;
|
|
98
|
+
StringLessThan?: string;
|
|
99
|
+
StringLessThanEquals?: string;
|
|
100
|
+
TimestampEquals?: string;
|
|
101
|
+
TimestampGreaterThan?: string;
|
|
102
|
+
TimestampGreaterThanEquals?: string;
|
|
103
|
+
TimestampLessThan?: string;
|
|
104
|
+
TimestampLessThanEquals?: string;
|
|
105
|
+
[k: string]: any;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
interface Fail {
|
|
109
|
+
Type: string;
|
|
110
|
+
Comment?: string;
|
|
111
|
+
OutputPath?: string | null;
|
|
112
|
+
InputPath?: string | null;
|
|
113
|
+
Cause?: string;
|
|
114
|
+
Error?: string;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
interface StateMachineMap {
|
|
118
|
+
Type: string;
|
|
119
|
+
Next?: string;
|
|
120
|
+
End?: true;
|
|
121
|
+
Comment?: string;
|
|
122
|
+
OutputPath?: string | null;
|
|
123
|
+
InputPath?: string | null;
|
|
124
|
+
ResultPath?: string | null;
|
|
125
|
+
ItemsPath?: string | null;
|
|
126
|
+
MaxConcurrency?: number;
|
|
127
|
+
Iterator: StpStateMachine;
|
|
128
|
+
Parameters?: {
|
|
129
|
+
[k: string]: any;
|
|
130
|
+
};
|
|
131
|
+
Retry?: {
|
|
132
|
+
ErrorEquals: string[];
|
|
133
|
+
IntervalSeconds?: number;
|
|
134
|
+
MaxAttempts?: number;
|
|
135
|
+
BackoffRate?: number;
|
|
136
|
+
[k: string]: any;
|
|
137
|
+
}[];
|
|
138
|
+
Catch?: {
|
|
139
|
+
ErrorEquals: string[];
|
|
140
|
+
Next: string;
|
|
141
|
+
[k: string]: any;
|
|
142
|
+
}[];
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
interface Parallel {
|
|
146
|
+
Type: string;
|
|
147
|
+
Next?: string;
|
|
148
|
+
End?: true;
|
|
149
|
+
Comment?: string;
|
|
150
|
+
OutputPath?: string | null;
|
|
151
|
+
InputPath?: string | null;
|
|
152
|
+
ResultPath?: string | null;
|
|
153
|
+
Branches: StpStateMachine[];
|
|
154
|
+
Retry?: {
|
|
155
|
+
ErrorEquals: string[];
|
|
156
|
+
IntervalSeconds?: number;
|
|
157
|
+
MaxAttempts?: number;
|
|
158
|
+
BackoffRate?: number;
|
|
159
|
+
[k: string]: any;
|
|
160
|
+
}[];
|
|
161
|
+
Catch?: {
|
|
162
|
+
ErrorEquals: string[];
|
|
163
|
+
Next: string;
|
|
164
|
+
[k: string]: any;
|
|
165
|
+
}[];
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
interface Pass {
|
|
169
|
+
Type: string;
|
|
170
|
+
Next?: string;
|
|
171
|
+
End?: true;
|
|
172
|
+
Comment?: string;
|
|
173
|
+
OutputPath?: string | null;
|
|
174
|
+
InputPath?: string | null;
|
|
175
|
+
ResultPath?: string;
|
|
176
|
+
Parameters?: {
|
|
177
|
+
[k: string]: any;
|
|
178
|
+
};
|
|
179
|
+
Result?: any;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
type State = Choice | Fail | Parallel | Pass | Succeed | Task | Wait | StateMachineMap;
|
|
183
|
+
|
|
184
|
+
interface Succeed {
|
|
185
|
+
Type: string;
|
|
186
|
+
Comment?: string;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
interface Task {
|
|
190
|
+
Type: string;
|
|
191
|
+
Next?: string;
|
|
192
|
+
End?: true;
|
|
193
|
+
Comment?: string;
|
|
194
|
+
OutputPath?: string | null;
|
|
195
|
+
InputPath?: string | null;
|
|
196
|
+
Resource:
|
|
197
|
+
| string
|
|
198
|
+
| {
|
|
199
|
+
[k: string]: any;
|
|
200
|
+
};
|
|
201
|
+
ResultPath?: string | null;
|
|
202
|
+
Retry?: {
|
|
203
|
+
ErrorEquals: string[];
|
|
204
|
+
IntervalSeconds?: number;
|
|
205
|
+
MaxAttempts?: number;
|
|
206
|
+
BackoffRate?: number;
|
|
207
|
+
[k: string]: any;
|
|
208
|
+
}[];
|
|
209
|
+
Catch?: {
|
|
210
|
+
ErrorEquals: string[];
|
|
211
|
+
Next: string;
|
|
212
|
+
[k: string]: any;
|
|
213
|
+
}[];
|
|
214
|
+
TimeoutSeconds?: number;
|
|
215
|
+
HeartbeatSeconds?: number;
|
|
216
|
+
Parameters?: {
|
|
217
|
+
[k: string]: any;
|
|
218
|
+
};
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
interface Wait {
|
|
222
|
+
Type: string;
|
|
223
|
+
Next?: string;
|
|
224
|
+
End?: true;
|
|
225
|
+
Comment?: string;
|
|
226
|
+
OutputPath?: string | null;
|
|
227
|
+
InputPath?: string | null;
|
|
228
|
+
Seconds?: number;
|
|
229
|
+
Timestamp?: string;
|
|
230
|
+
SecondsPath?: string | null;
|
|
231
|
+
TimestampPath?: string | null;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
type StateMachineReferencableParam = 'arn' | 'name';
|
|
235
|
+
```
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
---
|
|
2
|
+
docType: config-ref
|
|
3
|
+
title: Svelte Kit Web
|
|
4
|
+
resourceType: sveltekit-web
|
|
5
|
+
tags:
|
|
6
|
+
- sveltekit-web
|
|
7
|
+
- sveltekit
|
|
8
|
+
- svelte
|
|
9
|
+
source: types/stacktape-config/sveltekit-web.d.ts
|
|
10
|
+
priority: 1
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Svelte Kit Web
|
|
14
|
+
|
|
15
|
+
Deploy a SvelteKit SSR app with Lambda (AWS adapter), S3 for static assets, and CloudFront CDN.
|
|
16
|
+
|
|
17
|
+
For static-only SvelteKit sites, use `hosting-bucket` with `hostingContentType: 'sveltekit-static-website'` instead.
|
|
18
|
+
|
|
19
|
+
Resource type: `sveltekit-web`
|
|
20
|
+
|
|
21
|
+
## TypeScript Definition
|
|
22
|
+
|
|
23
|
+
```typescript
|
|
24
|
+
/**
|
|
25
|
+
* #### Deploy a SvelteKit SSR app with Lambda (AWS adapter), S3 for static assets, and CloudFront CDN.
|
|
26
|
+
*
|
|
27
|
+
* ---
|
|
28
|
+
*
|
|
29
|
+
* For static-only SvelteKit sites, use `hosting-bucket` with `hostingContentType: 'sveltekit-static-website'` instead.
|
|
30
|
+
*/
|
|
31
|
+
interface SvelteKitWeb {
|
|
32
|
+
type: 'sveltekit-web';
|
|
33
|
+
properties: SvelteKitWebProps;
|
|
34
|
+
overrides?: ResourceOverrides;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
interface SvelteKitWebProps extends ResourceAccessProps {
|
|
38
|
+
/**
|
|
39
|
+
* #### Directory containing your `svelte.config.js`. For monorepos, point to the SvelteKit workspace.
|
|
40
|
+
*
|
|
41
|
+
* @default "."
|
|
42
|
+
*/
|
|
43
|
+
appDirectory?: string;
|
|
44
|
+
/**
|
|
45
|
+
* #### Override the default `vite build` command.
|
|
46
|
+
*/
|
|
47
|
+
buildCommand?: string;
|
|
48
|
+
/**
|
|
49
|
+
* #### Environment variables for the SSR function. Use `$ResourceParam()` or `$Secret()` for dynamic values.
|
|
50
|
+
*/
|
|
51
|
+
environment?: EnvironmentVar[];
|
|
52
|
+
/**
|
|
53
|
+
* #### Attach custom domains with auto-managed DNS records and TLS certificates.
|
|
54
|
+
*
|
|
55
|
+
* ---
|
|
56
|
+
*
|
|
57
|
+
* **Prerequisite:** A Route 53 hosted zone for your domain must exist in your AWS account.
|
|
58
|
+
*/
|
|
59
|
+
customDomains?: DomainConfiguration[];
|
|
60
|
+
/**
|
|
61
|
+
* #### Customize the SSR Lambda function (memory, timeout, VPC, logging).
|
|
62
|
+
*/
|
|
63
|
+
serverLambda?: SsrWebServerLambdaConfig;
|
|
64
|
+
/**
|
|
65
|
+
* #### Name of a `web-app-firewall` resource to protect this app. Firewall `scope` must be `cdn`.
|
|
66
|
+
*/
|
|
67
|
+
useFirewall?: string;
|
|
68
|
+
/**
|
|
69
|
+
* #### Dev server config for `stacktape dev`. Defaults to `vite dev`.
|
|
70
|
+
*/
|
|
71
|
+
dev?: SsrWebDevConfig;
|
|
72
|
+
/**
|
|
73
|
+
* #### Set custom headers (e.g., `Cache-Control`) for static files matching a pattern.
|
|
74
|
+
*/
|
|
75
|
+
fileOptions?: DirectoryUploadFilter[];
|
|
76
|
+
/**
|
|
77
|
+
* #### CDN cache controls for SSR routes and specific path patterns.
|
|
78
|
+
*/
|
|
79
|
+
cdn?: SsrWebCdnConfig;
|
|
80
|
+
}
|
|
81
|
+
```
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
---
|
|
2
|
+
docType: config-ref
|
|
3
|
+
title: Tan Stack Web
|
|
4
|
+
resourceType: tanstack-web
|
|
5
|
+
tags:
|
|
6
|
+
- tanstack-web
|
|
7
|
+
- tanstack
|
|
8
|
+
- tanstack-start
|
|
9
|
+
source: types/stacktape-config/tanstack-web.d.ts
|
|
10
|
+
priority: 1
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Tan Stack Web
|
|
14
|
+
|
|
15
|
+
Deploy a TanStack Start SSR app with Lambda (Nitro aws-lambda preset), S3 for static assets, and CloudFront CDN.
|
|
16
|
+
|
|
17
|
+
Resource type: `tanstack-web`
|
|
18
|
+
|
|
19
|
+
## TypeScript Definition
|
|
20
|
+
|
|
21
|
+
```typescript
|
|
22
|
+
/**
|
|
23
|
+
* #### Deploy a TanStack Start SSR app with Lambda (Nitro aws-lambda preset), S3 for static assets, and CloudFront CDN.
|
|
24
|
+
*/
|
|
25
|
+
interface TanStackWeb {
|
|
26
|
+
type: 'tanstack-web';
|
|
27
|
+
properties: TanStackWebProps;
|
|
28
|
+
overrides?: ResourceOverrides;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
interface TanStackWebProps extends ResourceAccessProps {
|
|
32
|
+
/**
|
|
33
|
+
* #### Directory containing your `app.config.ts`. For monorepos, point to the TanStack Start workspace.
|
|
34
|
+
*
|
|
35
|
+
* @default "."
|
|
36
|
+
*/
|
|
37
|
+
appDirectory?: string;
|
|
38
|
+
/**
|
|
39
|
+
* #### Override the default `vinxi build` command.
|
|
40
|
+
*/
|
|
41
|
+
buildCommand?: string;
|
|
42
|
+
/**
|
|
43
|
+
* #### Environment variables for the SSR function. Use `$ResourceParam()` or `$Secret()` for dynamic values.
|
|
44
|
+
*/
|
|
45
|
+
environment?: EnvironmentVar[];
|
|
46
|
+
/**
|
|
47
|
+
* #### Attach custom domains with auto-managed DNS records and TLS certificates.
|
|
48
|
+
*
|
|
49
|
+
* ---
|
|
50
|
+
*
|
|
51
|
+
* **Prerequisite:** A Route 53 hosted zone for your domain must exist in your AWS account.
|
|
52
|
+
*/
|
|
53
|
+
customDomains?: DomainConfiguration[];
|
|
54
|
+
/**
|
|
55
|
+
* #### Customize the SSR Lambda function (memory, timeout, VPC, logging).
|
|
56
|
+
*/
|
|
57
|
+
serverLambda?: SsrWebServerLambdaConfig;
|
|
58
|
+
/**
|
|
59
|
+
* #### Name of a `web-app-firewall` resource to protect this app. Firewall `scope` must be `cdn`.
|
|
60
|
+
*/
|
|
61
|
+
useFirewall?: string;
|
|
62
|
+
/**
|
|
63
|
+
* #### Dev server config for `stacktape dev`. Defaults to `vinxi dev`.
|
|
64
|
+
*/
|
|
65
|
+
dev?: SsrWebDevConfig;
|
|
66
|
+
/**
|
|
67
|
+
* #### Set custom headers (e.g., `Cache-Control`) for static files matching a pattern.
|
|
68
|
+
*/
|
|
69
|
+
fileOptions?: DirectoryUploadFilter[];
|
|
70
|
+
/**
|
|
71
|
+
* #### CDN cache controls for SSR routes and specific path patterns.
|
|
72
|
+
*/
|
|
73
|
+
cdn?: SsrWebCdnConfig;
|
|
74
|
+
}
|
|
75
|
+
```
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
---
|
|
2
|
+
docType: config-ref
|
|
3
|
+
title: Upstash Redis
|
|
4
|
+
resourceType: upstash-redis
|
|
5
|
+
tags:
|
|
6
|
+
- upstash-redis
|
|
7
|
+
- upstash
|
|
8
|
+
source: types/stacktape-config/upstash-redis.d.ts
|
|
9
|
+
priority: 1
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Upstash Redis
|
|
13
|
+
|
|
14
|
+
Serverless Redis by Upstash — pay-per-request with no idle costs.
|
|
15
|
+
|
|
16
|
+
Perfect for Lambda-based apps where a traditional Redis cluster would be wasteful.
|
|
17
|
+
Accessible over HTTPS (REST API) or standard Redis protocol. Great for caching, sessions, rate limiting.
|
|
18
|
+
|
|
19
|
+
Resource type: `upstash-redis`
|
|
20
|
+
|
|
21
|
+
## TypeScript Definition
|
|
22
|
+
|
|
23
|
+
```typescript
|
|
24
|
+
/**
|
|
25
|
+
* #### Serverless Redis by Upstash — pay-per-request with no idle costs.
|
|
26
|
+
*
|
|
27
|
+
* ---
|
|
28
|
+
*
|
|
29
|
+
* Perfect for Lambda-based apps where a traditional Redis cluster would be wasteful.
|
|
30
|
+
* Accessible over HTTPS (REST API) or standard Redis protocol. Great for caching, sessions, rate limiting.
|
|
31
|
+
*/
|
|
32
|
+
interface UpstashRedis {
|
|
33
|
+
type: 'upstash-redis';
|
|
34
|
+
properties?: UpstashRedisProps;
|
|
35
|
+
overrides?: ResourceOverrides;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
interface UpstashRedisProps {
|
|
39
|
+
/**
|
|
40
|
+
* #### Auto-remove old keys when memory is full. Prioritizes keys with TTL set. Enable for cache use cases.
|
|
41
|
+
*
|
|
42
|
+
* ---
|
|
43
|
+
*
|
|
44
|
+
* Without eviction, writes fail once the memory limit is reached. Enable this for caching workloads.
|
|
45
|
+
*
|
|
46
|
+
* @default false
|
|
47
|
+
*/
|
|
48
|
+
enableEviction?: boolean;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
type UpstashRedisReferencableParam =
|
|
52
|
+
| 'host'
|
|
53
|
+
| 'port'
|
|
54
|
+
| 'password'
|
|
55
|
+
| 'restToken'
|
|
56
|
+
| 'readOnlyRestToken'
|
|
57
|
+
| 'restUrl'
|
|
58
|
+
| 'redisUrl';
|
|
59
|
+
```
|