wrangler 0.0.0-e42f3207 → 0.0.0-e44afaf79

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.
@@ -1,216 +1,136 @@
1
1
  {
2
- "$ref": "#/definitions/RawConfig",
3
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$ref": "#/definitions/RawConfig",
4
4
  "definitions": {
5
- "CloudchamberConfig": {
5
+ "RawConfig": {
6
+ "type": "object",
6
7
  "additionalProperties": false,
7
- "description": "Configuration in wrangler for Cloudchamber",
8
8
  "properties": {
9
- "memory": {
9
+ "$schema": {
10
10
  "type": "string"
11
11
  },
12
- "vcpu": {
13
- "type": "number"
14
- }
15
- },
16
- "type": "object"
17
- },
18
- "ConfigModuleRuleType": {
19
- "description": "The possible types for a `Rule`.",
20
- "enum": [
21
- "ESModule",
22
- "CommonJS",
23
- "CompiledWasm",
24
- "Text",
25
- "Data",
26
- "PythonModule",
27
- "PythonRequirement"
28
- ],
29
- "type": "string"
30
- },
31
- "CustomDomainRoute": {
32
- "additionalProperties": false,
33
- "properties": {
34
- "custom_domain": {
35
- "type": "boolean"
36
- },
37
- "pattern": {
38
- "type": "string"
39
- }
40
- },
41
- "required": [
42
- "pattern",
43
- "custom_domain"
44
- ],
45
- "type": "object"
46
- },
47
- "DeprecatedUpload": {
48
- "additionalProperties": false,
49
- "description": "Deprecated upload configuration.",
50
- "properties": {
51
- "dir": {
52
- "deprecated": true,
53
- "description": "The directory you wish to upload your Worker from, relative to the wrangler.toml file.\n\nDefaults to the directory containing the wrangler.toml file.",
54
- "type": "string"
12
+ "env": {
13
+ "type": "object",
14
+ "additionalProperties": {
15
+ "$ref": "#/definitions/RawEnvironment"
16
+ },
17
+ "description": "The `env` section defines overrides for the configuration for different environments.\n\nAll environment fields can be specified at the top level of the config indicating the default environment settings.\n\n- Some fields are inherited and overridable in each environment.\n- But some are not inherited and must be explicitly specified in every environment, if they are specified at the top level.\n\nFor more information, see the documentation at https://developers.cloudflare.com/workers/cli-wrangler/configuration#environments",
18
+ "default": {}
55
19
  },
56
- "format": {
57
- "deprecated": "We infer the format automatically now.",
58
- "description": "The format of the Worker script.",
59
- "enum": [
60
- "modules",
61
- "service-worker"
62
- ],
63
- "type": "string"
20
+ "name": {
21
+ "type": "string",
22
+ "description": "The name of your Worker. Alphanumeric + dashes only."
64
23
  },
65
- "main": {
66
- "deprecated": "This will be replaced by a command line argument.",
67
- "description": "The path to the Worker script, relative to `upload.dir`.",
68
- "type": "string"
24
+ "account_id": {
25
+ "type": "string",
26
+ "description": "This is the ID of the account associated with your zone. You might have more than one account, so make sure to use the ID of the account associated with the zone/route you provide, if you provide one. It can also be specified through the CLOUDFLARE_ACCOUNT_ID environment variable."
69
27
  },
70
- "rules": {
71
- "$ref": "#/definitions/Environment",
72
- "deprecated": "This is now defined at the top level `rules` field."
73
- }
74
- },
75
- "type": "object"
76
- },
77
- "DispatchNamespaceOutbound": {
78
- "additionalProperties": false,
79
- "properties": {
80
- "environment": {
81
- "description": "(Optional) Name of the environment handling the outbound requests.",
82
- "type": "string"
28
+ "compatibility_date": {
29
+ "type": "string",
30
+ "description": "A date in the form yyyy-mm-dd, which will be used to determine which version of the Workers runtime is used.\n\nMore details at https://developers.cloudflare.com/workers/configuration/compatibility-dates"
83
31
  },
84
- "parameters": {
85
- "description": "(Optional) List of parameter names, for sending context from your dispatch Worker to the outbound handler",
32
+ "compatibility_flags": {
33
+ "type": "array",
86
34
  "items": {
87
35
  "type": "string"
88
36
  },
89
- "type": "array"
37
+ "description": "A list of flags that enable features from upcoming features of the Workers runtime, usually used together with compatibility_date.\n\nMore details at https://developers.cloudflare.com/workers/configuration/compatibility-flags/",
38
+ "default": []
90
39
  },
91
- "service": {
92
- "description": "Name of the service handling the outbound requests",
93
- "type": "string"
94
- }
95
- },
96
- "required": [
97
- "service"
98
- ],
99
- "type": "object"
100
- },
101
- "DurableObjectBindings": {
102
- "items": {
103
- "additionalProperties": false,
104
- "properties": {
105
- "class_name": {
106
- "description": "The exported class name of the Durable Object",
107
- "type": "string"
108
- },
109
- "environment": {
110
- "description": "The service environment of the script_name to bind to",
111
- "type": "string"
112
- },
113
- "name": {
114
- "description": "The name of the binding used to refer to the Durable Object",
115
- "type": "string"
116
- },
117
- "script_name": {
118
- "description": "The script where the Durable Object is defined (if it's external to this Worker)",
119
- "type": "string"
120
- }
40
+ "main": {
41
+ "type": "string",
42
+ "description": "The entrypoint/path to the JavaScript file that will be executed."
121
43
  },
122
- "required": [
123
- "name",
124
- "class_name"
125
- ],
126
- "type": "object"
127
- },
128
- "type": "array"
129
- },
130
- "Environment": {
131
- "additionalProperties": false,
132
- "description": "The `Environment` interface declares all the configuration fields that can be specified for an environment.\n\nThis could be the top-level default environment, or a specific named environment.",
133
- "properties": {
134
- "account_id": {
135
- "description": "This is the ID of the account associated with your zone. You might have more than one account, so make sure to use the ID of the account associated with the zone/route you provide, if you provide one. It can also be specified through the CLOUDFLARE_ACCOUNT_ID environment variable.",
136
- "type": "string"
44
+ "find_additional_modules": {
45
+ "type": "boolean",
46
+ "description": "If true then Wrangler will traverse the file tree below `base_dir`; Any files that match `rules` will be included in the deployed Worker. Defaults to true if `no_bundle` is true, otherwise false."
137
47
  },
138
- "ai": {
139
- "additionalProperties": false,
140
- "default": "`{}`",
141
- "description": "Binding to the AI project.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
142
- "properties": {
143
- "binding": {
144
- "type": "string"
145
- },
146
- "staging": {
147
- "type": "boolean"
148
- }
48
+ "preserve_file_names": {
49
+ "type": "boolean",
50
+ "description": "Determines whether Wrangler will preserve bundled file names. Defaults to false. If left unset, files will be named using the pattern ${fileHash}-${basename}, for example, `34de60b44167af5c5a709e62a4e20c4f18c9e3b6-favicon.ico`."
51
+ },
52
+ "base_dir": {
53
+ "type": "string",
54
+ "description": "The directory in which module rules should be evaluated when including additional files into a Worker deployment. This defaults to the directory containing the `main` entry point of the Worker if not specified."
55
+ },
56
+ "workers_dev": {
57
+ "type": "boolean",
58
+ "description": "Whether we use <name>.<subdomain>.workers.dev to test and deploy your Worker.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#workersdev",
59
+ "default": true
60
+ },
61
+ "preview_urls": {
62
+ "type": "boolean",
63
+ "description": "Whether we use <version>-<name>.<subdomain>.workers.dev to serve Preview URLs for your Worker.",
64
+ "default": true
65
+ },
66
+ "routes": {
67
+ "type": "array",
68
+ "items": {
69
+ "$ref": "#/definitions/Route"
149
70
  },
150
- "required": [
151
- "binding"
152
- ],
153
- "type": "object"
71
+ "description": "A list of routes that your Worker should be published to. Only one of `routes` or `route` is required.\n\nOnly required when workers_dev is false, and there's no scheduled Worker (see `triggers`)\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#types-of-routes"
154
72
  },
155
- "analytics_engine_datasets": {
156
- "default": "`[]`",
157
- "description": "Specifies analytics engine datasets that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
73
+ "route": {
74
+ "$ref": "#/definitions/Route",
75
+ "description": "A route that your Worker should be published to. Literally the same as routes, but only one. Only one of `routes` or `route` is required.\n\nOnly required when workers_dev is false, and there's no scheduled Worker"
76
+ },
77
+ "tsconfig": {
78
+ "type": "string",
79
+ "description": "Path to a custom tsconfig"
80
+ },
81
+ "jsx_factory": {
82
+ "type": "string",
83
+ "description": "The function to use to replace jsx syntax.",
84
+ "default": "React.createElement"
85
+ },
86
+ "jsx_fragment": {
87
+ "type": "string",
88
+ "description": "The function to use to replace jsx fragment syntax.",
89
+ "default": "React.Fragment"
90
+ },
91
+ "migrations": {
92
+ "type": "array",
158
93
  "items": {
159
- "additionalProperties": false,
160
- "properties": {
161
- "binding": {
162
- "description": "The binding name used to refer to the dataset in the Worker.",
163
- "type": "string"
164
- },
165
- "dataset": {
166
- "description": "The name of this dataset to write to.",
94
+ "$ref": "#/definitions/DurableObjectMigration"
95
+ },
96
+ "description": "A list of migrations that should be uploaded with your Worker.\n\nThese define changes in your Durable Object declarations.\n\nMore details at https://developers.cloudflare.com/workers/learning/using-durable-objects#configuring-durable-object-classes-with-migrations",
97
+ "default": []
98
+ },
99
+ "triggers": {
100
+ "type": "object",
101
+ "properties": {
102
+ "crons": {
103
+ "type": "array",
104
+ "items": {
167
105
  "type": "string"
168
106
  }
169
- },
170
- "required": [
171
- "binding"
172
- ],
173
- "type": "object"
107
+ }
174
108
  },
175
- "type": "array"
109
+ "additionalProperties": false,
110
+ "description": "\"Cron\" definitions to trigger a Worker's \"scheduled\" function.\n\nLets you call Workers periodically, much like a cron job.\n\nMore details here https://developers.cloudflare.com/workers/platform/cron-triggers\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#triggers",
111
+ "default": "{crons: undefined}"
176
112
  },
177
- "base_dir": {
178
- "description": "The directory in which module rules should be evaluated when including additional files into a Worker deployment. This defaults to the directory containing the `main` entry point of the Worker if not specified.",
179
- "type": "string"
113
+ "limits": {
114
+ "$ref": "#/definitions/UserLimits",
115
+ "description": "Specify limits for runtime behavior. Only supported for the \"standard\" Usage Model\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#limits"
180
116
  },
181
- "browser": {
182
- "additionalProperties": false,
183
- "default": "`{}`",
184
- "description": "A browser that will be usable from the Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
185
- "properties": {
186
- "binding": {
187
- "type": "string"
188
- }
117
+ "rules": {
118
+ "type": "array",
119
+ "items": {
120
+ "$ref": "#/definitions/Rule"
189
121
  },
190
- "required": [
191
- "binding"
192
- ],
193
- "type": "object"
122
+ "description": "An ordered list of rules that define which modules to import, and what type to import them as. You will need to specify rules to use Text, Data, and CompiledWasm modules, or when you wish to have a .js file be treated as an ESModule instead of CommonJS.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#bundling"
194
123
  },
195
124
  "build": {
196
- "additionalProperties": false,
197
- "default": {
198
- "watch_dir": "./src"
199
- },
200
- "description": "Configures a custom build step to be run by Wrangler when building your Worker.\n\nRefer to the [custom builds documentation](https://developers.cloudflare.com/workers/cli-wrangler/configuration#build) for more details.",
125
+ "type": "object",
201
126
  "properties": {
202
127
  "command": {
203
- "description": "The command used to build your Worker. On Linux and macOS, the command is executed in the `sh` shell and the `cmd` shell for Windows. The `&&` and `||` shell operators may be used.",
204
- "type": "string"
128
+ "type": "string",
129
+ "description": "The command used to build your Worker. On Linux and macOS, the command is executed in the `sh` shell and the `cmd` shell for Windows. The `&&` and `||` shell operators may be used."
205
130
  },
206
131
  "cwd": {
207
- "description": "The directory in which the command is executed.",
208
- "type": "string"
209
- },
210
- "upload": {
211
- "$ref": "#/definitions/DeprecatedUpload",
212
- "deprecated": true,
213
- "description": "Deprecated field previously used to configure the build and upload of the script."
132
+ "type": "string",
133
+ "description": "The directory in which the command is executed."
214
134
  },
215
135
  "watch_dir": {
216
136
  "anyOf": [
@@ -218,140 +138,141 @@
218
138
  "type": "string"
219
139
  },
220
140
  {
141
+ "type": "array",
221
142
  "items": {
222
143
  "type": "string"
223
- },
224
- "type": "array"
144
+ }
225
145
  }
226
146
  ],
227
147
  "description": "The directory to watch for changes while using wrangler dev, defaults to the current working directory"
228
148
  }
229
149
  },
230
- "type": "object"
150
+ "additionalProperties": false,
151
+ "description": "Configures a custom build step to be run by Wrangler when building your Worker.\n\nRefer to the [custom builds documentation](https://developers.cloudflare.com/workers/cli-wrangler/configuration#build) for more details.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#custom-builds",
152
+ "default": {
153
+ "watch_dir": "./src"
154
+ }
231
155
  },
232
- "cloudchamber": {
233
- "$ref": "#/definitions/CloudchamberConfig",
234
- "default": "`{}`",
235
- "description": "Cloudchamber configuration\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment."
156
+ "no_bundle": {
157
+ "type": "boolean",
158
+ "description": "Skip internal build steps and directly deploy script"
236
159
  },
237
- "compatibility_date": {
238
- "description": "A date in the form yyyy-mm-dd, which will be used to determine which version of the Workers runtime is used.\n\nMore details at https://developers.cloudflare.com/workers/platform/compatibility-dates",
239
- "type": "string"
160
+ "minify": {
161
+ "type": "boolean",
162
+ "description": "Minify the script before uploading."
240
163
  },
241
- "compatibility_flags": {
242
- "default": "`[]`",
243
- "description": "A list of flags that enable features from upcoming features of the Workers runtime, usually used together with compatibility_flags.\n\nMore details at https://developers.cloudflare.com/workers/platform/compatibility-dates",
244
- "items": {
164
+ "keep_names": {
165
+ "type": "boolean",
166
+ "description": "Keep function names after javascript transpilations.",
167
+ "default": "{true}"
168
+ },
169
+ "first_party_worker": {
170
+ "type": "boolean",
171
+ "description": "Designates this Worker as an internal-only \"first-party\" Worker."
172
+ },
173
+ "logfwdr": {
174
+ "type": "object",
175
+ "properties": {
176
+ "bindings": {
177
+ "type": "array",
178
+ "items": {
179
+ "type": "object",
180
+ "properties": {
181
+ "name": {
182
+ "type": "string",
183
+ "description": "The binding name used to refer to logfwdr"
184
+ },
185
+ "destination": {
186
+ "type": "string",
187
+ "description": "The destination for this logged message"
188
+ }
189
+ },
190
+ "required": [
191
+ "name",
192
+ "destination"
193
+ ],
194
+ "additionalProperties": false
195
+ }
196
+ }
197
+ },
198
+ "required": [
199
+ "bindings"
200
+ ],
201
+ "additionalProperties": false,
202
+ "description": "List of bindings that you will send to logfwdr",
203
+ "default": {
204
+ "bindings": []
205
+ }
206
+ },
207
+ "logpush": {
208
+ "type": "boolean",
209
+ "description": "Send Trace Events from this Worker to Workers Logpush.\n\nThis will not configure a corresponding Logpush job automatically.\n\nFor more information about Workers Logpush, see: https://blog.cloudflare.com/logpush-for-workers/"
210
+ },
211
+ "upload_source_maps": {
212
+ "type": "boolean",
213
+ "description": "Include source maps when uploading this worker.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#source-maps"
214
+ },
215
+ "placement": {
216
+ "type": "object",
217
+ "properties": {
218
+ "mode": {
219
+ "type": "string",
220
+ "enum": [
221
+ "off",
222
+ "smart"
223
+ ]
224
+ },
225
+ "hint": {
226
+ "type": "string"
227
+ }
228
+ },
229
+ "required": [
230
+ "mode"
231
+ ],
232
+ "additionalProperties": false,
233
+ "description": "Specify how the Worker should be located to minimize round-trip time.\n\nMore details: https://developers.cloudflare.com/workers/platform/smart-placement/"
234
+ },
235
+ "assets": {
236
+ "$ref": "#/definitions/Assets",
237
+ "description": "Specify the directory of static assets to deploy/serve\n\nMore details at https://developers.cloudflare.com/workers/frameworks/\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#assets"
238
+ },
239
+ "observability": {
240
+ "$ref": "#/definitions/Observability",
241
+ "description": "Specify the observability behavior of the Worker.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#observability"
242
+ },
243
+ "compliance_region": {
244
+ "type": "string",
245
+ "enum": [
246
+ "public",
247
+ "fedramp_high"
248
+ ],
249
+ "description": "Specify the compliance region mode of the Worker.\n\nAlthough if the user does not specify a compliance region, the default is `public`, it can be set to `undefined` in configuration to delegate to the CLOUDFLARE_COMPLIANCE_REGION environment variable."
250
+ },
251
+ "define": {
252
+ "type": "object",
253
+ "additionalProperties": {
245
254
  "type": "string"
246
255
  },
247
- "type": "array"
256
+ "description": "A map of values to substitute when deploying your Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
257
+ "default": {}
248
258
  },
249
- "constellation": {
250
- "default": "`[]`",
251
- "description": "Specifies Constellation projects that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
252
- "items": {
253
- "additionalProperties": false,
254
- "properties": {
255
- "binding": {
256
- "description": "The binding name used to refer to the project in the Worker.",
259
+ "vars": {
260
+ "type": "object",
261
+ "additionalProperties": {
262
+ "anyOf": [
263
+ {
257
264
  "type": "string"
258
265
  },
259
- "project_id": {
260
- "description": "The id of the project.",
261
- "type": "string"
266
+ {
267
+ "$ref": "#/definitions/Json"
262
268
  }
263
- },
264
- "required": [
265
- "binding",
266
- "project_id"
267
- ],
268
- "type": "object"
269
- },
270
- "type": "array"
271
- },
272
- "d1_databases": {
273
- "default": "`[]`",
274
- "description": "Specifies D1 databases that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
275
- "items": {
276
- "additionalProperties": false,
277
- "properties": {
278
- "binding": {
279
- "description": "The binding name used to refer to the D1 database in the Worker.",
280
- "type": "string"
281
- },
282
- "database_id": {
283
- "description": "The UUID of this D1 database (not required).",
284
- "type": "string"
285
- },
286
- "database_internal_env": {
287
- "description": "Internal use only.",
288
- "type": "string"
289
- },
290
- "database_name": {
291
- "description": "The name of this D1 database.",
292
- "type": "string"
293
- },
294
- "migrations_dir": {
295
- "description": "The path to the directory of migrations for this D1 database (defaults to './migrations').",
296
- "type": "string"
297
- },
298
- "migrations_table": {
299
- "description": "The name of the migrations table for this D1 database (defaults to 'd1_migrations').",
300
- "type": "string"
301
- },
302
- "preview_database_id": {
303
- "description": "The UUID of this D1 database for Wrangler Dev (if specified).",
304
- "type": "string"
305
- }
306
- },
307
- "required": [
308
- "binding",
309
- "database_name",
310
- "database_id"
311
- ],
312
- "type": "object"
313
- },
314
- "type": "array"
315
- },
316
- "define": {
317
- "additionalProperties": {
318
- "type": "string"
319
- },
320
- "default": "`{}`",
321
- "description": "A map of values to substitute when deploying your Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
322
- "type": "object"
323
- },
324
- "dispatch_namespaces": {
325
- "default": "`[]`",
326
- "description": "Specifies namespace bindings that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
327
- "items": {
328
- "additionalProperties": false,
329
- "properties": {
330
- "binding": {
331
- "description": "The binding name used to refer to the bound service.",
332
- "type": "string"
333
- },
334
- "namespace": {
335
- "description": "The namespace to bind to.",
336
- "type": "string"
337
- },
338
- "outbound": {
339
- "$ref": "#/definitions/DispatchNamespaceOutbound",
340
- "description": "Details about the outbound Worker which will handle outbound requests from your namespace"
341
- }
342
- },
343
- "required": [
344
- "binding",
345
- "namespace"
346
- ],
347
- "type": "object"
269
+ ]
348
270
  },
349
- "type": "array"
271
+ "description": "A map of environment variables to set when deploying your Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#environment-variables",
272
+ "default": {}
350
273
  },
351
274
  "durable_objects": {
352
- "additionalProperties": false,
353
- "default": "`{bindings:[]}`",
354
- "description": "A list of durable objects that your Worker should be bound to.\n\nFor more information about Durable Objects, see the documentation at https://developers.cloudflare.com/workers/learning/using-durable-objects\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
275
+ "type": "object",
355
276
  "properties": {
356
277
  "bindings": {
357
278
  "$ref": "#/definitions/DurableObjectBindings"
@@ -360,417 +281,458 @@
360
281
  "required": [
361
282
  "bindings"
362
283
  ],
363
- "type": "object"
284
+ "additionalProperties": false,
285
+ "description": "A list of durable objects that your Worker should be bound to.\n\nFor more information about Durable Objects, see the documentation at https://developers.cloudflare.com/workers/learning/using-durable-objects\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#durable-objects",
286
+ "default": {
287
+ "bindings": []
288
+ }
364
289
  },
365
- "find_additional_modules": {
366
- "description": "If true then Wrangler will traverse the file tree below `base_dir`; Any files that match `rules` will be included in the deployed Worker. Defaults to true if `no_bundle` is true, otherwise false.",
367
- "type": "boolean"
290
+ "workflows": {
291
+ "type": "array",
292
+ "items": {
293
+ "$ref": "#/definitions/WorkflowBinding"
294
+ },
295
+ "description": "A list of workflows that your Worker should be bound to.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
296
+ "default": []
368
297
  },
369
- "first_party_worker": {
370
- "description": "Designates this Worker as an internal-only \"first-party\" Worker.",
371
- "type": "boolean"
298
+ "cloudchamber": {
299
+ "$ref": "#/definitions/CloudchamberConfig",
300
+ "description": "Cloudchamber configuration\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
301
+ "default": {}
372
302
  },
373
- "hyperdrive": {
374
- "default": "`[]`",
375
- "description": "Specifies Hyperdrive configs that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
303
+ "containers": {
304
+ "type": "array",
305
+ "items": {
306
+ "$ref": "#/definitions/ContainerApp"
307
+ },
308
+ "description": "Container related configuration",
309
+ "default": []
310
+ },
311
+ "kv_namespaces": {
312
+ "type": "array",
376
313
  "items": {
377
- "additionalProperties": false,
314
+ "type": "object",
378
315
  "properties": {
379
316
  "binding": {
380
- "description": "The binding name used to refer to the project in the Worker.",
381
- "type": "string"
317
+ "type": "string",
318
+ "description": "The binding name used to refer to the KV Namespace"
382
319
  },
383
320
  "id": {
384
- "description": "The id of the database.",
385
- "type": "string"
321
+ "type": "string",
322
+ "description": "The ID of the KV namespace"
386
323
  },
387
- "localConnectionString": {
388
- "description": "The local database connection string for `wrangler dev`",
389
- "type": "string"
324
+ "preview_id": {
325
+ "type": "string",
326
+ "description": "The ID of the KV namespace used during `wrangler dev`"
327
+ },
328
+ "remote": {
329
+ "type": "boolean",
330
+ "description": "Whether the KV namespace should be remote or not (only available under `--x-mixed-mode`)"
390
331
  }
391
332
  },
392
333
  "required": [
393
- "binding",
394
- "id"
334
+ "binding"
395
335
  ],
396
- "type": "object"
336
+ "additionalProperties": false
397
337
  },
398
- "type": "array"
399
- },
400
- "jsx_factory": {
401
- "default": "`\"React.createElement\"`",
402
- "description": "The function to use to replace jsx syntax.",
403
- "type": "string"
404
- },
405
- "jsx_fragment": {
406
- "default": "`\"React.Fragment\"`",
407
- "description": "The function to use to replace jsx fragment syntax.",
408
- "type": "string"
338
+ "description": "These specify any Workers KV Namespaces you want to access from inside your Worker.\n\nTo learn more about KV Namespaces, see the documentation at https://developers.cloudflare.com/workers/learning/how-kv-works\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#kv-namespaces",
339
+ "default": []
409
340
  },
410
- "kv_namespaces": {
411
- "default": "`[]`",
412
- "description": "These specify any Workers KV Namespaces you want to access from inside your Worker.\n\nTo learn more about KV Namespaces, see the documentation at https://developers.cloudflare.com/workers/learning/how-kv-works\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
341
+ "send_email": {
342
+ "type": "array",
413
343
  "items": {
414
- "additionalProperties": false,
344
+ "type": "object",
415
345
  "properties": {
416
- "binding": {
417
- "description": "The binding name used to refer to the KV Namespace",
418
- "type": "string"
346
+ "name": {
347
+ "type": "string",
348
+ "description": "The binding name used to refer to the this binding"
419
349
  },
420
- "id": {
421
- "description": "The ID of the KV namespace",
422
- "type": "string"
350
+ "destination_address": {
351
+ "type": "string",
352
+ "description": "If this binding should be restricted to a specific verified address"
423
353
  },
424
- "preview_id": {
425
- "description": "The ID of the KV namespace used during `wrangler dev`",
426
- "type": "string"
354
+ "allowed_destination_addresses": {
355
+ "type": "array",
356
+ "items": {
357
+ "type": "string"
358
+ },
359
+ "description": "If this binding should be restricted to a set of verified addresses"
427
360
  }
428
361
  },
429
362
  "required": [
430
- "binding",
431
- "id"
363
+ "name"
432
364
  ],
433
- "type": "object"
365
+ "additionalProperties": false
434
366
  },
435
- "type": "array"
367
+ "description": "These specify bindings to send email from inside your Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#email-bindings",
368
+ "default": []
436
369
  },
437
- "limits": {
438
- "$ref": "#/definitions/UserLimits",
439
- "description": "Specify limits for runtime behavior. Only supported for the \"standard\" Usage Model"
440
- },
441
- "logfwdr": {
442
- "additionalProperties": false,
443
- "default": "`{bindings:[]}`",
444
- "description": "List of bindings that you will send to logfwdr",
370
+ "queues": {
371
+ "type": "object",
445
372
  "properties": {
446
- "bindings": {
373
+ "producers": {
374
+ "type": "array",
447
375
  "items": {
448
- "additionalProperties": false,
376
+ "type": "object",
449
377
  "properties": {
450
- "destination": {
451
- "description": "The destination for this logged message",
452
- "type": "string"
378
+ "binding": {
379
+ "type": "string",
380
+ "description": "The binding name used to refer to the Queue in the Worker."
453
381
  },
454
- "name": {
455
- "description": "The binding name used to refer to logfwdr",
456
- "type": "string"
382
+ "queue": {
383
+ "type": "string",
384
+ "description": "The name of this Queue."
385
+ },
386
+ "delivery_delay": {
387
+ "type": "number",
388
+ "description": "The number of seconds to wait before delivering a message"
389
+ },
390
+ "remote": {
391
+ "type": "boolean",
392
+ "description": "Whether the Queue producer should be remote or not (only available under `--x-mixed-mode`)"
457
393
  }
458
394
  },
459
395
  "required": [
460
- "name",
461
- "destination"
396
+ "binding",
397
+ "queue"
462
398
  ],
463
- "type": "object"
464
- },
465
- "type": "array"
466
- }
467
- },
468
- "required": [
469
- "bindings"
470
- ],
471
- "type": "object"
472
- },
473
- "logpush": {
474
- "description": "Send Trace Events from this Worker to Workers Logpush.\n\nThis will not configure a corresponding Logpush job automatically.\n\nFor more information about Workers Logpush, see: https://blog.cloudflare.com/logpush-for-workers/",
475
- "type": "boolean"
476
- },
477
- "main": {
478
- "description": "The entrypoint/path to the JavaScript file that will be executed.",
479
- "type": "string"
480
- },
481
- "minify": {
482
- "description": "Minify the script before uploading.",
483
- "type": "boolean"
484
- },
485
- "mtls_certificates": {
486
- "default": "`[]`",
487
- "description": "Specifies a list of mTLS certificates that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
488
- "items": {
489
- "additionalProperties": false,
490
- "properties": {
491
- "binding": {
492
- "description": "The binding name used to refer to the certificate in the Worker",
493
- "type": "string"
399
+ "additionalProperties": false
494
400
  },
495
- "certificate_id": {
496
- "description": "The uuid of the uploaded mTLS certificate",
497
- "type": "string"
498
- }
401
+ "description": "Producer bindings"
499
402
  },
500
- "required": [
501
- "binding",
502
- "certificate_id"
503
- ],
504
- "type": "object"
505
- },
506
- "type": "array"
507
- },
508
- "name": {
509
- "description": "The name of your Worker. Alphanumeric + dashes only.",
510
- "type": "string"
511
- },
512
- "no_bundle": {
513
- "description": "Skip internal build steps and directly deploy script",
514
- "type": "boolean"
515
- },
516
- "node_compat": {
517
- "description": "Add polyfills for node builtin modules and globals",
518
- "type": "boolean"
519
- },
520
- "placement": {
521
- "additionalProperties": false,
522
- "description": "Specify how the Worker should be located to minimize round-trip time.\n\nMore details: https://developers.cloudflare.com/workers/platform/smart-placement/",
523
- "properties": {
524
- "mode": {
525
- "enum": [
526
- "off",
527
- "smart"
528
- ],
529
- "type": "string"
530
- }
531
- },
532
- "required": [
533
- "mode"
534
- ],
535
- "type": "object"
536
- },
537
- "preserve_file_names": {
538
- "description": "Determines whether Wrangler will preserve bundled file names. Defaults to false. If left unset, files will be named using the pattern ${fileHash}-${basename}, for example, `34de60b44167af5c5a709e62a4e20c4f18c9e3b6-favicon.ico`.",
539
- "type": "boolean"
540
- },
541
- "queues": {
542
- "additionalProperties": false,
543
- "default": "`{consumers:[],producers:[]}`",
544
- "description": "Specifies Queues that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
545
- "properties": {
546
403
  "consumers": {
547
- "description": "Consumer configuration",
404
+ "type": "array",
548
405
  "items": {
549
- "additionalProperties": false,
406
+ "type": "object",
550
407
  "properties": {
551
- "dead_letter_queue": {
552
- "description": "The queue to send messages that failed to be consumed.",
553
- "type": "string"
408
+ "queue": {
409
+ "type": "string",
410
+ "description": "The name of the queue from which this consumer should consume."
411
+ },
412
+ "type": {
413
+ "type": "string",
414
+ "description": "The consumer type, e.g., worker, http-pull, r2-bucket, etc. Default is worker."
554
415
  },
555
416
  "max_batch_size": {
556
- "description": "The maximum number of messages per batch",
557
- "type": "number"
417
+ "type": "number",
418
+ "description": "The maximum number of messages per batch"
558
419
  },
559
420
  "max_batch_timeout": {
560
- "description": "The maximum number of seconds to wait to fill a batch with messages.",
561
- "type": "number"
421
+ "type": "number",
422
+ "description": "The maximum number of seconds to wait to fill a batch with messages."
423
+ },
424
+ "max_retries": {
425
+ "type": "number",
426
+ "description": "The maximum number of retries for each message."
427
+ },
428
+ "dead_letter_queue": {
429
+ "type": "string",
430
+ "description": "The queue to send messages that failed to be consumed."
562
431
  },
563
432
  "max_concurrency": {
564
- "description": "The maximum number of concurrent consumer Worker invocations. Leaving this unset will allow your consumer to scale to the maximum concurrency needed to keep up with the message backlog.",
565
433
  "type": [
566
434
  "number",
567
435
  "null"
568
- ]
569
- },
570
- "max_retries": {
571
- "description": "The maximum number of retries for each message.",
572
- "type": "number"
573
- },
574
- "queue": {
575
- "description": "The name of the queue from which this consumer should consume.",
576
- "type": "string"
577
- },
578
- "retry_delay": {
579
- "description": "The number of seconds to wait before retrying a message",
580
- "type": "number"
581
- },
582
- "type": {
583
- "description": "The consumer type, e.g., worker, http-pull, r2-bucket, etc. Default is worker.",
584
- "type": "string"
436
+ ],
437
+ "description": "The maximum number of concurrent consumer Worker invocations. Leaving this unset will allow your consumer to scale to the maximum concurrency needed to keep up with the message backlog."
585
438
  },
586
439
  "visibility_timeout_ms": {
587
- "description": "The number of milliseconds to wait for pulled messages to become visible again",
588
- "type": "number"
589
- }
590
- },
591
- "required": [
592
- "queue"
593
- ],
594
- "type": "object"
595
- },
596
- "type": "array"
597
- },
598
- "producers": {
599
- "description": "Producer bindings",
600
- "items": {
601
- "additionalProperties": false,
602
- "properties": {
603
- "binding": {
604
- "description": "The binding name used to refer to the Queue in the Worker.",
605
- "type": "string"
440
+ "type": "number",
441
+ "description": "The number of milliseconds to wait for pulled messages to become visible again"
606
442
  },
607
- "delivery_delay": {
608
- "description": "The number of seconds to wait before delivering a message",
609
- "type": "number"
610
- },
611
- "queue": {
612
- "description": "The name of this Queue.",
613
- "type": "string"
443
+ "retry_delay": {
444
+ "type": "number",
445
+ "description": "The number of seconds to wait before retrying a message"
614
446
  }
615
447
  },
616
448
  "required": [
617
- "binding",
618
449
  "queue"
619
450
  ],
620
- "type": "object"
451
+ "additionalProperties": false
621
452
  },
622
- "type": "array"
453
+ "description": "Consumer configuration"
623
454
  }
624
455
  },
625
- "type": "object"
456
+ "additionalProperties": false,
457
+ "description": "Specifies Queues that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#queues",
458
+ "default": {
459
+ "consumers": [],
460
+ "producers": []
461
+ }
626
462
  },
627
463
  "r2_buckets": {
628
- "default": "`[]`",
629
- "description": "Specifies R2 buckets that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
464
+ "type": "array",
630
465
  "items": {
631
- "additionalProperties": false,
466
+ "type": "object",
632
467
  "properties": {
633
468
  "binding": {
634
- "description": "The binding name used to refer to the R2 bucket in the Worker.",
635
- "type": "string"
469
+ "type": "string",
470
+ "description": "The binding name used to refer to the R2 bucket in the Worker."
636
471
  },
637
472
  "bucket_name": {
638
- "description": "The name of this R2 bucket at the edge.",
639
- "type": "string"
473
+ "type": "string",
474
+ "description": "The name of this R2 bucket at the edge."
475
+ },
476
+ "preview_bucket_name": {
477
+ "type": "string",
478
+ "description": "The preview name of this R2 bucket at the edge."
640
479
  },
641
480
  "jurisdiction": {
642
- "description": "The jurisdiction that the bucket exists in. Default if not present.",
643
- "type": "string"
481
+ "type": "string",
482
+ "description": "The jurisdiction that the bucket exists in. Default if not present."
644
483
  },
645
- "preview_bucket_name": {
646
- "description": "The preview name of this R2 bucket at the edge.",
647
- "type": "string"
484
+ "remote": {
485
+ "type": "boolean",
486
+ "description": "Whether the R2 bucket should be remote or not (only available under `--x-mixed-mode`)"
648
487
  }
649
488
  },
650
489
  "required": [
651
- "binding",
652
- "bucket_name"
490
+ "binding"
653
491
  ],
654
- "type": "object"
655
- },
656
- "type": "array"
657
- },
658
- "route": {
659
- "$ref": "#/definitions/Route",
660
- "description": "A route that your Worker should be published to. Literally the same as routes, but only one. Only one of `routes` or `route` is required.\n\nOnly required when workers_dev is false, and there's no scheduled Worker"
661
- },
662
- "routes": {
663
- "description": "A list of routes that your Worker should be published to. Only one of `routes` or `route` is required.\n\nOnly required when workers_dev is false, and there's no scheduled Worker (see `triggers`)",
664
- "items": {
665
- "$ref": "#/definitions/Route"
492
+ "additionalProperties": false
666
493
  },
667
- "type": "array"
494
+ "description": "Specifies R2 buckets that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#r2-buckets",
495
+ "default": []
668
496
  },
669
- "rules": {
670
- "description": "An ordered list of rules that define which modules to import, and what type to import them as. You will need to specify rules to use Text, Data, and CompiledWasm modules, or when you wish to have a .js file be treated as an ESModule instead of CommonJS.",
497
+ "d1_databases": {
498
+ "type": "array",
671
499
  "items": {
672
- "$ref": "#/definitions/Rule"
673
- },
674
- "type": "array"
675
- },
676
- "send_email": {
677
- "default": "`[]`",
678
- "description": "These specify bindings to send email from inside your Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
500
+ "type": "object",
501
+ "properties": {
502
+ "binding": {
503
+ "type": "string",
504
+ "description": "The binding name used to refer to the D1 database in the Worker."
505
+ },
506
+ "database_name": {
507
+ "type": "string",
508
+ "description": "The name of this D1 database."
509
+ },
510
+ "database_id": {
511
+ "type": "string",
512
+ "description": "The UUID of this D1 database (not required)."
513
+ },
514
+ "preview_database_id": {
515
+ "type": "string",
516
+ "description": "The UUID of this D1 database for Wrangler Dev (if specified)."
517
+ },
518
+ "migrations_table": {
519
+ "type": "string",
520
+ "description": "The name of the migrations table for this D1 database (defaults to 'd1_migrations')."
521
+ },
522
+ "migrations_dir": {
523
+ "type": "string",
524
+ "description": "The path to the directory of migrations for this D1 database (defaults to './migrations')."
525
+ },
526
+ "database_internal_env": {
527
+ "type": "string",
528
+ "description": "Internal use only."
529
+ },
530
+ "remote": {
531
+ "type": "boolean",
532
+ "description": "Whether the D1 database should be remote or not (only available under `--x-mixed-mode`)"
533
+ }
534
+ },
535
+ "required": [
536
+ "binding"
537
+ ],
538
+ "additionalProperties": false
539
+ },
540
+ "description": "Specifies D1 databases that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#d1-databases",
541
+ "default": []
542
+ },
543
+ "vectorize": {
544
+ "type": "array",
679
545
  "items": {
680
- "additionalProperties": false,
546
+ "type": "object",
681
547
  "properties": {
682
- "allowed_destination_addresses": {
683
- "description": "If this binding should be restricted to a set of verified addresses",
684
- "items": {
685
- "type": "string"
686
- },
687
- "type": "array"
548
+ "binding": {
549
+ "type": "string",
550
+ "description": "The binding name used to refer to the Vectorize index in the Worker."
688
551
  },
689
- "destination_address": {
690
- "description": "If this binding should be restricted to a specific verified address",
691
- "type": "string"
552
+ "index_name": {
553
+ "type": "string",
554
+ "description": "The name of the index."
692
555
  },
693
- "name": {
694
- "description": "The binding name used to refer to the this binding",
695
- "type": "string"
556
+ "remote": {
557
+ "type": "boolean",
558
+ "description": "Whether the Vectorize index should be remote or not (only available under `--x-mixed-mode`)"
696
559
  }
697
560
  },
698
561
  "required": [
699
- "name"
562
+ "binding",
563
+ "index_name"
564
+ ],
565
+ "additionalProperties": false
566
+ },
567
+ "description": "Specifies Vectorize indexes that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#vectorize-indexes",
568
+ "default": []
569
+ },
570
+ "hyperdrive": {
571
+ "type": "array",
572
+ "items": {
573
+ "type": "object",
574
+ "properties": {
575
+ "binding": {
576
+ "type": "string",
577
+ "description": "The binding name used to refer to the project in the Worker."
578
+ },
579
+ "id": {
580
+ "type": "string",
581
+ "description": "The id of the database."
582
+ },
583
+ "localConnectionString": {
584
+ "type": "string",
585
+ "description": "The local database connection string for `wrangler dev`"
586
+ }
587
+ },
588
+ "required": [
589
+ "binding",
590
+ "id"
700
591
  ],
701
- "type": "object"
592
+ "additionalProperties": false
702
593
  },
703
- "type": "array"
594
+ "description": "Specifies Hyperdrive configs that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#hyperdrive",
595
+ "default": []
704
596
  },
705
597
  "services": {
706
- "default": "`[]`",
707
- "description": "Specifies service bindings (Worker-to-Worker) that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
598
+ "type": "array",
708
599
  "items": {
709
- "additionalProperties": false,
600
+ "type": "object",
710
601
  "properties": {
711
602
  "binding": {
712
- "description": "The binding name used to refer to the bound service.",
713
- "type": "string"
603
+ "type": "string",
604
+ "description": "The binding name used to refer to the bound service."
714
605
  },
715
- "entrypoint": {
716
- "description": "Optionally, the entrypoint (named export) of the service to bind to.",
717
- "type": "string"
606
+ "service": {
607
+ "type": "string",
608
+ "description": "The name of the service."
718
609
  },
719
610
  "environment": {
720
- "description": "The environment of the service (e.g. production, staging, etc).",
721
- "type": "string"
611
+ "type": "string",
612
+ "description": "The environment of the service (e.g. production, staging, etc)."
722
613
  },
723
- "service": {
724
- "description": "The name of the service.",
725
- "type": "string"
614
+ "entrypoint": {
615
+ "type": "string",
616
+ "description": "Optionally, the entrypoint (named export) of the service to bind to."
617
+ },
618
+ "props": {
619
+ "type": "object",
620
+ "additionalProperties": {},
621
+ "description": "Optional properties that will be made available to the service via ctx.props."
622
+ },
623
+ "remote": {
624
+ "type": "boolean",
625
+ "description": "Whether the service binding should be remote or not (only available under `--x-mixed-mode`)"
726
626
  }
727
627
  },
728
628
  "required": [
729
629
  "binding",
730
630
  "service"
731
631
  ],
732
- "type": "object"
632
+ "additionalProperties": false
733
633
  },
734
- "type": "array"
634
+ "description": "Specifies service bindings (Worker-to-Worker) that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#service-bindings",
635
+ "default": []
735
636
  },
736
- "tail_consumers": {
737
- "default": "`[]`",
738
- "description": "Specifies a list of Tail Workers that are bound to this Worker environment\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
637
+ "analytics_engine_datasets": {
638
+ "type": "array",
739
639
  "items": {
740
- "$ref": "#/definitions/TailConsumer"
640
+ "type": "object",
641
+ "properties": {
642
+ "binding": {
643
+ "type": "string",
644
+ "description": "The binding name used to refer to the dataset in the Worker."
645
+ },
646
+ "dataset": {
647
+ "type": "string",
648
+ "description": "The name of this dataset to write to."
649
+ }
650
+ },
651
+ "required": [
652
+ "binding"
653
+ ],
654
+ "additionalProperties": false
741
655
  },
742
- "type": "array"
656
+ "description": "Specifies analytics engine datasets that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#analytics-engine-datasets",
657
+ "default": []
743
658
  },
744
- "triggers": {
659
+ "browser": {
660
+ "type": "object",
661
+ "properties": {
662
+ "binding": {
663
+ "type": "string"
664
+ },
665
+ "remote": {
666
+ "type": "boolean",
667
+ "description": "Whether the Browser binding should be remote or not (only available under `--x-mixed-mode`)"
668
+ }
669
+ },
670
+ "required": [
671
+ "binding"
672
+ ],
745
673
  "additionalProperties": false,
746
- "default": "`{crons:[]}`",
747
- "description": "\"Cron\" definitions to trigger a Worker's \"scheduled\" function.\n\nLets you call Workers periodically, much like a cron job.\n\nMore details here https://developers.cloudflare.com/workers/platform/cron-triggers",
674
+ "description": "A browser that will be usable from the Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#browser-rendering",
675
+ "default": {}
676
+ },
677
+ "ai": {
678
+ "type": "object",
748
679
  "properties": {
749
- "crons": {
750
- "items": {
751
- "type": "string"
752
- },
753
- "type": "array"
680
+ "binding": {
681
+ "type": "string"
682
+ },
683
+ "staging": {
684
+ "type": "boolean"
685
+ },
686
+ "remote": {
687
+ "type": "boolean",
688
+ "description": "Whether the AI binding should be remote or not (only available under `--x-mixed-mode`)"
754
689
  }
755
690
  },
756
691
  "required": [
757
- "crons"
692
+ "binding"
758
693
  ],
759
- "type": "object"
694
+ "additionalProperties": false,
695
+ "description": "Binding to the AI project.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#workers-ai",
696
+ "default": {}
760
697
  },
761
- "tsconfig": {
762
- "description": "Path to a custom tsconfig",
763
- "type": "string"
698
+ "images": {
699
+ "type": "object",
700
+ "properties": {
701
+ "binding": {
702
+ "type": "string"
703
+ },
704
+ "remote": {
705
+ "type": "boolean",
706
+ "description": "Whether the Images binding should be remote or not (only available under `--x-mixed-mode`)"
707
+ }
708
+ },
709
+ "required": [
710
+ "binding"
711
+ ],
712
+ "additionalProperties": false,
713
+ "description": "Binding to Cloudflare Images\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#images",
714
+ "default": {}
764
715
  },
765
- "unsafe": {
716
+ "version_metadata": {
717
+ "type": "object",
718
+ "properties": {
719
+ "binding": {
720
+ "type": "string"
721
+ }
722
+ },
723
+ "required": [
724
+ "binding"
725
+ ],
766
726
  "additionalProperties": false,
767
- "default": "`{}`",
768
- "description": "\"Unsafe\" tables for features that aren't directly supported by wrangler.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
727
+ "description": "Binding to the Worker Version's metadata"
728
+ },
729
+ "unsafe": {
730
+ "type": "object",
769
731
  "properties": {
770
732
  "bindings": {
771
- "description": "A set of bindings that should be put into a Worker's upload metadata without changes. These can be used to implement bindings for features that haven't released and aren't supported directly by wrangler or miniflare.",
733
+ "type": "array",
772
734
  "items": {
773
- "additionalProperties": {},
735
+ "type": "object",
774
736
  "properties": {
775
737
  "name": {
776
738
  "type": "string"
@@ -783,33 +745,38 @@
783
745
  "name",
784
746
  "type"
785
747
  ],
786
- "type": "object"
748
+ "additionalProperties": {}
787
749
  },
788
- "type": "array"
750
+ "description": "A set of bindings that should be put into a Worker's upload metadata without changes. These can be used to implement bindings for features that haven't released and aren't supported directly by wrangler or miniflare."
751
+ },
752
+ "metadata": {
753
+ "type": "object",
754
+ "additionalProperties": {},
755
+ "description": "Arbitrary key/value pairs that will be included in the uploaded metadata. Values specified here will always be applied to metadata last, so can add new or override existing fields."
789
756
  },
790
757
  "capnp": {
791
758
  "anyOf": [
792
759
  {
793
- "additionalProperties": false,
760
+ "type": "object",
794
761
  "properties": {
795
762
  "base_path": {
796
763
  "type": "string"
797
764
  },
798
765
  "source_schemas": {
766
+ "type": "array",
799
767
  "items": {
800
768
  "type": "string"
801
- },
802
- "type": "array"
769
+ }
803
770
  }
804
771
  },
805
772
  "required": [
806
773
  "base_path",
807
774
  "source_schemas"
808
775
  ],
809
- "type": "object"
776
+ "additionalProperties": false
810
777
  },
811
778
  {
812
- "additionalProperties": false,
779
+ "type": "object",
813
780
  "properties": {
814
781
  "compiled_schema": {
815
782
  "type": "string"
@@ -818,261 +785,332 @@
818
785
  "required": [
819
786
  "compiled_schema"
820
787
  ],
821
- "type": "object"
788
+ "additionalProperties": false
822
789
  }
823
790
  ],
824
791
  "description": "Used for internal capnp uploads for the Workers runtime"
825
- },
826
- "metadata": {
827
- "additionalProperties": {},
828
- "description": "Arbitrary key/value pairs that will be included in the uploaded metadata. Values specified here will always be applied to metadata last, so can add new or override existing fields.",
829
- "type": "object"
830
792
  }
831
793
  },
832
- "type": "object"
833
- },
834
- "upload_source_maps": {
835
- "description": "Include source maps when uploading this worker.",
836
- "type": "boolean"
837
- },
838
- "usage_model": {
839
- "description": "Specifies the Usage Model for your Worker. There are two options - [bundled](https://developers.cloudflare.com/workers/platform/limits#bundled-usage-model) and [unbound](https://developers.cloudflare.com/workers/platform/limits#unbound-usage-model). For newly created Workers, if the Usage Model is omitted it will be set to the [default Usage Model set on the account](https://dash.cloudflare.com/?account=workers/default-usage-model). For existing Workers, if the Usage Model is omitted, it will be set to the Usage Model configured in the dashboard for that Worker.",
840
- "enum": [
841
- "bundled",
842
- "unbound"
843
- ],
844
- "type": "string"
845
- },
846
- "vars": {
847
- "additionalProperties": {
848
- "anyOf": [
849
- {
850
- "type": "string"
851
- },
852
- {
853
- "$ref": "#/definitions/Json"
854
- }
855
- ]
856
- },
857
- "default": "`{}`",
858
- "description": "A map of environment variables to set when deploying your Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
859
- "type": "object"
794
+ "additionalProperties": false,
795
+ "description": "\"Unsafe\" tables for features that aren't directly supported by wrangler.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
796
+ "default": {}
860
797
  },
861
- "vectorize": {
862
- "default": "`[]`",
863
- "description": "Specifies Vectorize indexes that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
798
+ "mtls_certificates": {
799
+ "type": "array",
864
800
  "items": {
865
- "additionalProperties": false,
801
+ "type": "object",
866
802
  "properties": {
867
803
  "binding": {
868
- "description": "The binding name used to refer to the Vectorize index in the Worker.",
869
- "type": "string"
804
+ "type": "string",
805
+ "description": "The binding name used to refer to the certificate in the Worker"
870
806
  },
871
- "index_name": {
872
- "description": "The name of the index.",
873
- "type": "string"
807
+ "certificate_id": {
808
+ "type": "string",
809
+ "description": "The uuid of the uploaded mTLS certificate"
874
810
  }
875
811
  },
876
812
  "required": [
877
813
  "binding",
878
- "index_name"
814
+ "certificate_id"
879
815
  ],
880
- "type": "object"
881
- },
882
- "type": "array"
883
- },
884
- "version_metadata": {
885
- "additionalProperties": false,
886
- "description": "Binding to the Worker Version's metadata",
887
- "properties": {
888
- "binding": {
889
- "type": "string"
890
- }
816
+ "additionalProperties": false
891
817
  },
892
- "required": [
893
- "binding"
894
- ],
895
- "type": "object"
896
- },
897
- "workers_dev": {
898
- "default": "`true` (This is a breaking change from Wrangler v1)",
899
- "description": "Whether we use <name>.<subdomain>.workers.dev to test and deploy your Worker.\n\n// Carmen according to our tests the default is undefined",
900
- "type": "boolean"
901
- },
902
- "zone_id": {
903
- "description": "TODO: remove this as it has been deprecated.\n\nThis is just here for now because the `route` commands use it. So we need to include it in this type so it is available.",
904
- "type": "string"
905
- }
906
- },
907
- "required": [
908
- "analytics_engine_datasets",
909
- "build",
910
- "cloudchamber",
911
- "compatibility_flags",
912
- "constellation",
913
- "d1_databases",
914
- "define",
915
- "dispatch_namespaces",
916
- "durable_objects",
917
- "hyperdrive",
918
- "jsx_factory",
919
- "jsx_fragment",
920
- "kv_namespaces",
921
- "logfwdr",
922
- "mtls_certificates",
923
- "queues",
924
- "r2_buckets",
925
- "rules",
926
- "send_email",
927
- "triggers",
928
- "unsafe",
929
- "vars",
930
- "vectorize"
931
- ],
932
- "type": "object"
933
- },
934
- "Json": {
935
- "anyOf": [
936
- {
937
- "$ref": "#/definitions/Literal"
818
+ "description": "Specifies a list of mTLS certificates that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#mtls-certificates",
819
+ "default": []
938
820
  },
939
- {
940
- "additionalProperties": {
941
- "$ref": "#/definitions/Json"
821
+ "tail_consumers": {
822
+ "type": "array",
823
+ "items": {
824
+ "$ref": "#/definitions/TailConsumer"
942
825
  },
943
- "type": "object"
826
+ "description": "Specifies a list of Tail Workers that are bound to this Worker environment\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
827
+ "default": []
944
828
  },
945
- {
829
+ "dispatch_namespaces": {
830
+ "type": "array",
946
831
  "items": {
947
- "$ref": "#/definitions/Json"
832
+ "type": "object",
833
+ "properties": {
834
+ "binding": {
835
+ "type": "string",
836
+ "description": "The binding name used to refer to the bound service."
837
+ },
838
+ "namespace": {
839
+ "type": "string",
840
+ "description": "The namespace to bind to."
841
+ },
842
+ "outbound": {
843
+ "$ref": "#/definitions/DispatchNamespaceOutbound",
844
+ "description": "Details about the outbound Worker which will handle outbound requests from your namespace"
845
+ },
846
+ "remote": {
847
+ "type": "boolean",
848
+ "description": "Whether the Dispatch Namespace should be remote or not (only available under `--x-mixed-mode`)"
849
+ }
850
+ },
851
+ "required": [
852
+ "binding",
853
+ "namespace"
854
+ ],
855
+ "additionalProperties": false
948
856
  },
949
- "type": "array"
950
- }
951
- ]
952
- },
953
- "Literal": {
954
- "$ref": "#/definitions/TypeOf%3CZodUnion%3C%5Bdef-class-1315922706-6501-8772-1315922706-0-54395%2Cdef-class-1315922706-9299-10989-1315922706-0-54395%2Cdef-class-1315922706-12937-13365-1315922706-0-54395%2Cdef-class-1315922706-15083-15273-1315922706-0-54395%5D%3E%3E"
955
- },
956
- "RawConfig": {
957
- "additionalProperties": false,
958
- "properties": {
959
- "$schema": {
960
- "type": "string"
961
- },
962
- "account_id": {
963
- "description": "This is the ID of the account associated with your zone. You might have more than one account, so make sure to use the ID of the account associated with the zone/route you provide, if you provide one. It can also be specified through the CLOUDFLARE_ACCOUNT_ID environment variable.",
964
- "type": "string"
857
+ "description": "Specifies namespace bindings that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#dispatch-namespace-bindings-workers-for-platforms",
858
+ "default": []
965
859
  },
966
- "ai": {
967
- "additionalProperties": false,
968
- "default": "`{}`",
969
- "description": "Binding to the AI project.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
970
- "properties": {
971
- "binding": {
972
- "type": "string"
860
+ "pipelines": {
861
+ "type": "array",
862
+ "items": {
863
+ "type": "object",
864
+ "properties": {
865
+ "binding": {
866
+ "type": "string",
867
+ "description": "The binding name used to refer to the bound service."
868
+ },
869
+ "pipeline": {
870
+ "type": "string",
871
+ "description": "Name of the Pipeline to bind"
872
+ }
973
873
  },
974
- "staging": {
975
- "type": "boolean"
976
- }
874
+ "required": [
875
+ "binding",
876
+ "pipeline"
877
+ ],
878
+ "additionalProperties": false
977
879
  },
978
- "required": [
979
- "binding"
980
- ],
981
- "type": "object"
880
+ "description": "Specifies list of Pipelines bound to this Worker environment\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
881
+ "default": []
982
882
  },
983
- "analytics_engine_datasets": {
984
- "default": "`[]`",
985
- "description": "Specifies analytics engine datasets that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
883
+ "secrets_store_secrets": {
884
+ "type": "array",
986
885
  "items": {
987
- "additionalProperties": false,
886
+ "type": "object",
988
887
  "properties": {
989
888
  "binding": {
990
- "description": "The binding name used to refer to the dataset in the Worker.",
991
- "type": "string"
889
+ "type": "string",
890
+ "description": "The binding name used to refer to the bound service."
992
891
  },
993
- "dataset": {
994
- "description": "The name of this dataset to write to.",
995
- "type": "string"
892
+ "store_id": {
893
+ "type": "string",
894
+ "description": "Id of the secret store"
895
+ },
896
+ "secret_name": {
897
+ "type": "string",
898
+ "description": "Name of the secret"
996
899
  }
997
900
  },
998
901
  "required": [
999
- "binding"
902
+ "binding",
903
+ "store_id",
904
+ "secret_name"
1000
905
  ],
1001
- "type": "object"
906
+ "additionalProperties": false
1002
907
  },
1003
- "type": "array"
908
+ "description": "Specifies Secret Store bindings that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
909
+ "default": []
1004
910
  },
1005
- "assets": {
1006
- "additionalProperties": false,
1007
- "description": "Serve a folder of static assets with your Worker, without any additional code. This can either be a string, or an object with additional config fields.",
911
+ "pages_build_output_dir": {
912
+ "type": "string",
913
+ "description": "The directory of static assets to serve.\n\nThe presence of this field in a Wrangler configuration file indicates a Pages project, and will prompt the handling of the configuration file according to the Pages-specific validation rules."
914
+ },
915
+ "legacy_env": {
916
+ "type": "boolean",
917
+ "description": "A boolean to enable \"legacy\" style wrangler environments (from Wrangler v1). These have been superseded by Services, but there may be projects that won't (or can't) use them. If you're using a legacy environment, you can set this to `true` to enable it."
918
+ },
919
+ "send_metrics": {
920
+ "type": "boolean",
921
+ "description": "Whether Wrangler should send usage metrics to Cloudflare for this project.\n\nWhen defined this will override any user settings. Otherwise, Wrangler will use the user's preference."
922
+ },
923
+ "dev": {
924
+ "$ref": "#/definitions/RawDevConfig",
925
+ "description": "Options to configure the development server that your worker will use.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#local-development-settings"
926
+ },
927
+ "site": {
928
+ "type": "object",
1008
929
  "properties": {
1009
- "browser_TTL": {
1010
- "type": "number"
1011
- },
1012
930
  "bucket": {
1013
- "type": "string"
931
+ "type": "string",
932
+ "description": "The directory containing your static assets.\n\nIt must be a path relative to your Wrangler configuration file. Example: bucket = \"./public\"\n\nIf there is a `site` field then it must contain this `bucket` field."
1014
933
  },
1015
- "exclude": {
934
+ "entry-point": {
935
+ "type": "string",
936
+ "description": "The location of your Worker script.",
937
+ "deprecated": "DO NOT use this (it's a holdover from Wrangler v1.x). Either use the top level `main` field, or pass the path to your entry file as a command line argument."
938
+ },
939
+ "include": {
940
+ "type": "array",
1016
941
  "items": {
1017
942
  "type": "string"
1018
943
  },
1019
- "type": "array"
944
+ "description": "An exclusive list of .gitignore-style patterns that match file or directory names from your bucket location. Only matched items will be uploaded. Example: include = [\"upload_dir\"]",
945
+ "default": []
1020
946
  },
1021
- "include": {
947
+ "exclude": {
948
+ "type": "array",
1022
949
  "items": {
1023
950
  "type": "string"
1024
951
  },
1025
- "type": "array"
1026
- },
1027
- "serve_single_page_app": {
1028
- "type": "boolean"
952
+ "description": "A list of .gitignore-style patterns that match files or directories in your bucket that should be excluded from uploads. Example: exclude = [\"ignore_dir\"]",
953
+ "default": []
1029
954
  }
1030
955
  },
1031
956
  "required": [
1032
- "bucket",
1033
- "include",
1034
- "exclude",
1035
- "serve_single_page_app"
957
+ "bucket"
1036
958
  ],
1037
- "type": "object"
959
+ "additionalProperties": false,
960
+ "description": "The definition of a Worker Site, a feature that lets you upload static assets with your Worker.\n\nMore details at https://developers.cloudflare.com/workers/platform/sites\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#workers-sites"
961
+ },
962
+ "wasm_modules": {
963
+ "type": "object",
964
+ "additionalProperties": {
965
+ "type": "string"
966
+ },
967
+ "description": "A list of wasm modules that your worker should be bound to. This is the \"legacy\" way of binding to a wasm module. ES module workers should do proper module imports."
968
+ },
969
+ "text_blobs": {
970
+ "type": "object",
971
+ "additionalProperties": {
972
+ "type": "string"
973
+ },
974
+ "description": "A list of text files that your worker should be bound to. This is the \"legacy\" way of binding to a text file. ES module workers should do proper module imports."
975
+ },
976
+ "data_blobs": {
977
+ "type": "object",
978
+ "additionalProperties": {
979
+ "type": "string"
980
+ },
981
+ "description": "A list of data files that your worker should be bound to. This is the \"legacy\" way of binding to a data file. ES module workers should do proper module imports."
982
+ },
983
+ "alias": {
984
+ "type": "object",
985
+ "additionalProperties": {
986
+ "type": "string"
987
+ },
988
+ "description": "A map of module aliases. Lets you swap out a module for any others. Corresponds with esbuild's `alias` config\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#module-aliasing"
989
+ },
990
+ "keep_vars": {
991
+ "type": "boolean",
992
+ "description": "By default, the Wrangler configuration file is the source of truth for your environment configuration, like a terraform file.\n\nIf you change your vars in the dashboard, wrangler *will* override/delete them on its next deploy.\n\nIf you want to keep your dashboard vars when wrangler deploys, set this field to true.",
993
+ "default": false
994
+ }
995
+ }
996
+ },
997
+ "RawEnvironment": {
998
+ "type": "object",
999
+ "properties": {
1000
+ "name": {
1001
+ "type": "string",
1002
+ "description": "The name of your Worker. Alphanumeric + dashes only."
1003
+ },
1004
+ "account_id": {
1005
+ "type": "string",
1006
+ "description": "This is the ID of the account associated with your zone. You might have more than one account, so make sure to use the ID of the account associated with the zone/route you provide, if you provide one. It can also be specified through the CLOUDFLARE_ACCOUNT_ID environment variable."
1007
+ },
1008
+ "compatibility_date": {
1009
+ "type": "string",
1010
+ "description": "A date in the form yyyy-mm-dd, which will be used to determine which version of the Workers runtime is used.\n\nMore details at https://developers.cloudflare.com/workers/configuration/compatibility-dates"
1011
+ },
1012
+ "compatibility_flags": {
1013
+ "type": "array",
1014
+ "items": {
1015
+ "type": "string"
1016
+ },
1017
+ "description": "A list of flags that enable features from upcoming features of the Workers runtime, usually used together with compatibility_date.\n\nMore details at https://developers.cloudflare.com/workers/configuration/compatibility-flags/",
1018
+ "default": []
1019
+ },
1020
+ "main": {
1021
+ "type": "string",
1022
+ "description": "The entrypoint/path to the JavaScript file that will be executed."
1023
+ },
1024
+ "find_additional_modules": {
1025
+ "type": "boolean",
1026
+ "description": "If true then Wrangler will traverse the file tree below `base_dir`; Any files that match `rules` will be included in the deployed Worker. Defaults to true if `no_bundle` is true, otherwise false."
1027
+ },
1028
+ "preserve_file_names": {
1029
+ "type": "boolean",
1030
+ "description": "Determines whether Wrangler will preserve bundled file names. Defaults to false. If left unset, files will be named using the pattern ${fileHash}-${basename}, for example, `34de60b44167af5c5a709e62a4e20c4f18c9e3b6-favicon.ico`."
1038
1031
  },
1039
1032
  "base_dir": {
1040
- "description": "The directory in which module rules should be evaluated when including additional files into a Worker deployment. This defaults to the directory containing the `main` entry point of the Worker if not specified.",
1041
- "type": "string"
1033
+ "type": "string",
1034
+ "description": "The directory in which module rules should be evaluated when including additional files into a Worker deployment. This defaults to the directory containing the `main` entry point of the Worker if not specified."
1042
1035
  },
1043
- "browser": {
1044
- "additionalProperties": false,
1045
- "default": "`{}`",
1046
- "description": "A browser that will be usable from the Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1036
+ "workers_dev": {
1037
+ "type": "boolean",
1038
+ "description": "Whether we use <name>.<subdomain>.workers.dev to test and deploy your Worker.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#workersdev",
1039
+ "default": true
1040
+ },
1041
+ "preview_urls": {
1042
+ "type": "boolean",
1043
+ "description": "Whether we use <version>-<name>.<subdomain>.workers.dev to serve Preview URLs for your Worker.",
1044
+ "default": true
1045
+ },
1046
+ "routes": {
1047
+ "type": "array",
1048
+ "items": {
1049
+ "$ref": "#/definitions/Route"
1050
+ },
1051
+ "description": "A list of routes that your Worker should be published to. Only one of `routes` or `route` is required.\n\nOnly required when workers_dev is false, and there's no scheduled Worker (see `triggers`)\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#types-of-routes"
1052
+ },
1053
+ "route": {
1054
+ "$ref": "#/definitions/Route",
1055
+ "description": "A route that your Worker should be published to. Literally the same as routes, but only one. Only one of `routes` or `route` is required.\n\nOnly required when workers_dev is false, and there's no scheduled Worker"
1056
+ },
1057
+ "tsconfig": {
1058
+ "type": "string",
1059
+ "description": "Path to a custom tsconfig"
1060
+ },
1061
+ "jsx_factory": {
1062
+ "type": "string",
1063
+ "description": "The function to use to replace jsx syntax.",
1064
+ "default": "React.createElement"
1065
+ },
1066
+ "jsx_fragment": {
1067
+ "type": "string",
1068
+ "description": "The function to use to replace jsx fragment syntax.",
1069
+ "default": "React.Fragment"
1070
+ },
1071
+ "migrations": {
1072
+ "type": "array",
1073
+ "items": {
1074
+ "$ref": "#/definitions/DurableObjectMigration"
1075
+ },
1076
+ "description": "A list of migrations that should be uploaded with your Worker.\n\nThese define changes in your Durable Object declarations.\n\nMore details at https://developers.cloudflare.com/workers/learning/using-durable-objects#configuring-durable-object-classes-with-migrations",
1077
+ "default": []
1078
+ },
1079
+ "triggers": {
1080
+ "type": "object",
1047
1081
  "properties": {
1048
- "binding": {
1049
- "type": "string"
1082
+ "crons": {
1083
+ "type": "array",
1084
+ "items": {
1085
+ "type": "string"
1086
+ }
1050
1087
  }
1051
1088
  },
1052
- "required": [
1053
- "binding"
1054
- ],
1055
- "type": "object"
1056
- },
1057
- "build": {
1058
1089
  "additionalProperties": false,
1059
- "default": {
1060
- "watch_dir": "./src"
1090
+ "description": "\"Cron\" definitions to trigger a Worker's \"scheduled\" function.\n\nLets you call Workers periodically, much like a cron job.\n\nMore details here https://developers.cloudflare.com/workers/platform/cron-triggers\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#triggers",
1091
+ "default": "{crons: undefined}"
1092
+ },
1093
+ "limits": {
1094
+ "$ref": "#/definitions/UserLimits",
1095
+ "description": "Specify limits for runtime behavior. Only supported for the \"standard\" Usage Model\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#limits"
1096
+ },
1097
+ "rules": {
1098
+ "type": "array",
1099
+ "items": {
1100
+ "$ref": "#/definitions/Rule"
1061
1101
  },
1062
- "description": "Configures a custom build step to be run by Wrangler when building your Worker.\n\nRefer to the [custom builds documentation](https://developers.cloudflare.com/workers/cli-wrangler/configuration#build) for more details.",
1102
+ "description": "An ordered list of rules that define which modules to import, and what type to import them as. You will need to specify rules to use Text, Data, and CompiledWasm modules, or when you wish to have a .js file be treated as an ESModule instead of CommonJS.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#bundling"
1103
+ },
1104
+ "build": {
1105
+ "type": "object",
1063
1106
  "properties": {
1064
1107
  "command": {
1065
- "description": "The command used to build your Worker. On Linux and macOS, the command is executed in the `sh` shell and the `cmd` shell for Windows. The `&&` and `||` shell operators may be used.",
1066
- "type": "string"
1108
+ "type": "string",
1109
+ "description": "The command used to build your Worker. On Linux and macOS, the command is executed in the `sh` shell and the `cmd` shell for Windows. The `&&` and `||` shell operators may be used."
1067
1110
  },
1068
1111
  "cwd": {
1069
- "description": "The directory in which the command is executed.",
1070
- "type": "string"
1071
- },
1072
- "upload": {
1073
- "$ref": "#/definitions/DeprecatedUpload",
1074
- "deprecated": true,
1075
- "description": "Deprecated field previously used to configure the build and upload of the script."
1112
+ "type": "string",
1113
+ "description": "The directory in which the command is executed."
1076
1114
  },
1077
1115
  "watch_dir": {
1078
1116
  "anyOf": [
@@ -1080,154 +1118,141 @@
1080
1118
  "type": "string"
1081
1119
  },
1082
1120
  {
1121
+ "type": "array",
1083
1122
  "items": {
1084
1123
  "type": "string"
1085
- },
1086
- "type": "array"
1124
+ }
1087
1125
  }
1088
1126
  ],
1089
1127
  "description": "The directory to watch for changes while using wrangler dev, defaults to the current working directory"
1090
1128
  }
1091
1129
  },
1092
- "type": "object"
1130
+ "additionalProperties": false,
1131
+ "description": "Configures a custom build step to be run by Wrangler when building your Worker.\n\nRefer to the [custom builds documentation](https://developers.cloudflare.com/workers/cli-wrangler/configuration#build) for more details.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#custom-builds",
1132
+ "default": {
1133
+ "watch_dir": "./src"
1134
+ }
1093
1135
  },
1094
- "cloudchamber": {
1095
- "$ref": "#/definitions/CloudchamberConfig",
1096
- "default": "`{}`",
1097
- "description": "Cloudchamber configuration\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment."
1136
+ "no_bundle": {
1137
+ "type": "boolean",
1138
+ "description": "Skip internal build steps and directly deploy script"
1098
1139
  },
1099
- "compatibility_date": {
1100
- "description": "A date in the form yyyy-mm-dd, which will be used to determine which version of the Workers runtime is used.\n\nMore details at https://developers.cloudflare.com/workers/platform/compatibility-dates",
1101
- "type": "string"
1140
+ "minify": {
1141
+ "type": "boolean",
1142
+ "description": "Minify the script before uploading."
1102
1143
  },
1103
- "compatibility_flags": {
1104
- "default": "`[]`",
1105
- "description": "A list of flags that enable features from upcoming features of the Workers runtime, usually used together with compatibility_flags.\n\nMore details at https://developers.cloudflare.com/workers/platform/compatibility-dates",
1106
- "items": {
1107
- "type": "string"
1108
- },
1109
- "type": "array"
1144
+ "keep_names": {
1145
+ "type": "boolean",
1146
+ "description": "Keep function names after javascript transpilations.",
1147
+ "default": "{true}"
1110
1148
  },
1111
- "configPath": {
1112
- "type": "string"
1149
+ "first_party_worker": {
1150
+ "type": "boolean",
1151
+ "description": "Designates this Worker as an internal-only \"first-party\" Worker."
1113
1152
  },
1114
- "constellation": {
1115
- "default": "`[]`",
1116
- "description": "Specifies Constellation projects that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1117
- "items": {
1118
- "additionalProperties": false,
1119
- "properties": {
1120
- "binding": {
1121
- "description": "The binding name used to refer to the project in the Worker.",
1122
- "type": "string"
1123
- },
1124
- "project_id": {
1125
- "description": "The id of the project.",
1126
- "type": "string"
1153
+ "logfwdr": {
1154
+ "type": "object",
1155
+ "properties": {
1156
+ "bindings": {
1157
+ "type": "array",
1158
+ "items": {
1159
+ "type": "object",
1160
+ "properties": {
1161
+ "name": {
1162
+ "type": "string",
1163
+ "description": "The binding name used to refer to logfwdr"
1164
+ },
1165
+ "destination": {
1166
+ "type": "string",
1167
+ "description": "The destination for this logged message"
1168
+ }
1169
+ },
1170
+ "required": [
1171
+ "name",
1172
+ "destination"
1173
+ ],
1174
+ "additionalProperties": false
1127
1175
  }
1128
- },
1129
- "required": [
1130
- "binding",
1131
- "project_id"
1132
- ],
1133
- "type": "object"
1176
+ }
1134
1177
  },
1135
- "type": "array"
1178
+ "required": [
1179
+ "bindings"
1180
+ ],
1181
+ "additionalProperties": false,
1182
+ "description": "List of bindings that you will send to logfwdr",
1183
+ "default": {
1184
+ "bindings": []
1185
+ }
1136
1186
  },
1137
- "d1_databases": {
1138
- "default": "`[]`",
1139
- "description": "Specifies D1 databases that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1140
- "items": {
1141
- "additionalProperties": false,
1142
- "properties": {
1143
- "binding": {
1144
- "description": "The binding name used to refer to the D1 database in the Worker.",
1145
- "type": "string"
1146
- },
1147
- "database_id": {
1148
- "description": "The UUID of this D1 database (not required).",
1149
- "type": "string"
1150
- },
1151
- "database_internal_env": {
1152
- "description": "Internal use only.",
1153
- "type": "string"
1154
- },
1155
- "database_name": {
1156
- "description": "The name of this D1 database.",
1157
- "type": "string"
1158
- },
1159
- "migrations_dir": {
1160
- "description": "The path to the directory of migrations for this D1 database (defaults to './migrations').",
1161
- "type": "string"
1162
- },
1163
- "migrations_table": {
1164
- "description": "The name of the migrations table for this D1 database (defaults to 'd1_migrations').",
1165
- "type": "string"
1166
- },
1167
- "preview_database_id": {
1168
- "description": "The UUID of this D1 database for Wrangler Dev (if specified).",
1169
- "type": "string"
1170
- }
1187
+ "logpush": {
1188
+ "type": "boolean",
1189
+ "description": "Send Trace Events from this Worker to Workers Logpush.\n\nThis will not configure a corresponding Logpush job automatically.\n\nFor more information about Workers Logpush, see: https://blog.cloudflare.com/logpush-for-workers/"
1190
+ },
1191
+ "upload_source_maps": {
1192
+ "type": "boolean",
1193
+ "description": "Include source maps when uploading this worker.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#source-maps"
1194
+ },
1195
+ "placement": {
1196
+ "type": "object",
1197
+ "properties": {
1198
+ "mode": {
1199
+ "type": "string",
1200
+ "enum": [
1201
+ "off",
1202
+ "smart"
1203
+ ]
1171
1204
  },
1172
- "required": [
1173
- "binding",
1174
- "database_name",
1175
- "database_id"
1176
- ],
1177
- "type": "object"
1205
+ "hint": {
1206
+ "type": "string"
1207
+ }
1178
1208
  },
1179
- "type": "array"
1209
+ "required": [
1210
+ "mode"
1211
+ ],
1212
+ "additionalProperties": false,
1213
+ "description": "Specify how the Worker should be located to minimize round-trip time.\n\nMore details: https://developers.cloudflare.com/workers/platform/smart-placement/"
1180
1214
  },
1181
- "data_blobs": {
1182
- "additionalProperties": {
1183
- "type": "string"
1184
- },
1185
- "description": "A list of data files that your worker should be bound to. This is the \"legacy\" way of binding to a data file. ES module workers should do proper module imports.",
1186
- "type": "object"
1215
+ "assets": {
1216
+ "$ref": "#/definitions/Assets",
1217
+ "description": "Specify the directory of static assets to deploy/serve\n\nMore details at https://developers.cloudflare.com/workers/frameworks/\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#assets"
1218
+ },
1219
+ "observability": {
1220
+ "$ref": "#/definitions/Observability",
1221
+ "description": "Specify the observability behavior of the Worker.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#observability"
1222
+ },
1223
+ "compliance_region": {
1224
+ "type": "string",
1225
+ "enum": [
1226
+ "public",
1227
+ "fedramp_high"
1228
+ ],
1229
+ "description": "Specify the compliance region mode of the Worker.\n\nAlthough if the user does not specify a compliance region, the default is `public`, it can be set to `undefined` in configuration to delegate to the CLOUDFLARE_COMPLIANCE_REGION environment variable."
1187
1230
  },
1188
1231
  "define": {
1232
+ "type": "object",
1189
1233
  "additionalProperties": {
1190
1234
  "type": "string"
1191
1235
  },
1192
- "default": "`{}`",
1193
1236
  "description": "A map of values to substitute when deploying your Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1194
- "type": "object"
1195
- },
1196
- "dev": {
1197
- "$ref": "#/definitions/RawDevConfig",
1198
- "description": "Options to configure the development server that your worker will use."
1237
+ "default": {}
1199
1238
  },
1200
- "dispatch_namespaces": {
1201
- "default": "`[]`",
1202
- "description": "Specifies namespace bindings that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1203
- "items": {
1204
- "additionalProperties": false,
1205
- "properties": {
1206
- "binding": {
1207
- "description": "The binding name used to refer to the bound service.",
1208
- "type": "string"
1209
- },
1210
- "namespace": {
1211
- "description": "The namespace to bind to.",
1239
+ "vars": {
1240
+ "type": "object",
1241
+ "additionalProperties": {
1242
+ "anyOf": [
1243
+ {
1212
1244
  "type": "string"
1213
1245
  },
1214
- "outbound": {
1215
- "$ref": "#/definitions/DispatchNamespaceOutbound",
1216
- "description": "Details about the outbound Worker which will handle outbound requests from your namespace"
1246
+ {
1247
+ "$ref": "#/definitions/Json"
1217
1248
  }
1218
- },
1219
- "required": [
1220
- "binding",
1221
- "namespace"
1222
- ],
1223
- "type": "object"
1249
+ ]
1224
1250
  },
1225
- "type": "array"
1251
+ "description": "A map of environment variables to set when deploying your Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#environment-variables",
1252
+ "default": {}
1226
1253
  },
1227
1254
  "durable_objects": {
1228
- "additionalProperties": false,
1229
- "default": "`{bindings:[]}`",
1230
- "description": "A list of durable objects that your Worker should be bound to.\n\nFor more information about Durable Objects, see the documentation at https://developers.cloudflare.com/workers/learning/using-durable-objects\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1255
+ "type": "object",
1231
1256
  "properties": {
1232
1257
  "bindings": {
1233
1258
  "$ref": "#/definitions/DurableObjectBindings"
@@ -1236,584 +1261,458 @@
1236
1261
  "required": [
1237
1262
  "bindings"
1238
1263
  ],
1239
- "type": "object"
1264
+ "additionalProperties": false,
1265
+ "description": "A list of durable objects that your Worker should be bound to.\n\nFor more information about Durable Objects, see the documentation at https://developers.cloudflare.com/workers/learning/using-durable-objects\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#durable-objects",
1266
+ "default": {
1267
+ "bindings": []
1268
+ }
1240
1269
  },
1241
- "env": {
1242
- "additionalProperties": {
1243
- "$ref": "#/definitions/RawEnvironment"
1270
+ "workflows": {
1271
+ "type": "array",
1272
+ "items": {
1273
+ "$ref": "#/definitions/WorkflowBinding"
1244
1274
  },
1245
- "default": {},
1246
- "description": "The `env` section defines overrides for the configuration for different environments.\n\nAll environment fields can be specified at the top level of the config indicating the default environment settings.\n\n- Some fields are inherited and overridable in each environment.\n- But some are not inherited and must be explicitly specified in every environment, if they are specified at the top level.\n\nFor more information, see the documentation at https://developers.cloudflare.com/workers/cli-wrangler/configuration#environments",
1247
- "type": "object"
1275
+ "description": "A list of workflows that your Worker should be bound to.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1276
+ "default": []
1277
+ },
1278
+ "cloudchamber": {
1279
+ "$ref": "#/definitions/CloudchamberConfig",
1280
+ "description": "Cloudchamber configuration\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1281
+ "default": {}
1248
1282
  },
1249
- "experimental_services": {
1250
- "default": "`[]`",
1251
- "deprecated": "DO NOT USE. We'd added this to test the new service binding system, but the proper way to test experimental features is to use `unsafe.bindings` configuration.",
1252
- "description": "A list of services that your Worker should be bound to.",
1283
+ "containers": {
1284
+ "type": "array",
1253
1285
  "items": {
1254
- "additionalProperties": false,
1255
- "properties": {
1256
- "environment": {
1257
- "description": "The Service's environment",
1258
- "type": "string"
1259
- },
1260
- "name": {
1261
- "description": "The binding name used to refer to the Service",
1262
- "type": "string"
1263
- },
1264
- "service": {
1265
- "description": "The name of the Service being bound",
1266
- "type": "string"
1267
- }
1268
- },
1269
- "required": [
1270
- "name",
1271
- "service",
1272
- "environment"
1273
- ],
1274
- "type": "object"
1286
+ "$ref": "#/definitions/ContainerApp"
1275
1287
  },
1276
- "type": "array"
1277
- },
1278
- "find_additional_modules": {
1279
- "description": "If true then Wrangler will traverse the file tree below `base_dir`; Any files that match `rules` will be included in the deployed Worker. Defaults to true if `no_bundle` is true, otherwise false.",
1280
- "type": "boolean"
1288
+ "description": "Container related configuration",
1289
+ "default": []
1281
1290
  },
1282
- "first_party_worker": {
1283
- "description": "Designates this Worker as an internal-only \"first-party\" Worker.",
1284
- "type": "boolean"
1285
- },
1286
- "hyperdrive": {
1287
- "default": "`[]`",
1288
- "description": "Specifies Hyperdrive configs that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1291
+ "kv_namespaces": {
1292
+ "type": "array",
1289
1293
  "items": {
1290
- "additionalProperties": false,
1294
+ "type": "object",
1291
1295
  "properties": {
1292
1296
  "binding": {
1293
- "description": "The binding name used to refer to the project in the Worker.",
1294
- "type": "string"
1297
+ "type": "string",
1298
+ "description": "The binding name used to refer to the KV Namespace"
1295
1299
  },
1296
1300
  "id": {
1297
- "description": "The id of the database.",
1298
- "type": "string"
1301
+ "type": "string",
1302
+ "description": "The ID of the KV namespace"
1299
1303
  },
1300
- "localConnectionString": {
1301
- "description": "The local database connection string for `wrangler dev`",
1302
- "type": "string"
1304
+ "preview_id": {
1305
+ "type": "string",
1306
+ "description": "The ID of the KV namespace used during `wrangler dev`"
1307
+ },
1308
+ "remote": {
1309
+ "type": "boolean",
1310
+ "description": "Whether the KV namespace should be remote or not (only available under `--x-mixed-mode`)"
1303
1311
  }
1304
1312
  },
1305
1313
  "required": [
1306
- "binding",
1307
- "id"
1314
+ "binding"
1308
1315
  ],
1309
- "type": "object"
1316
+ "additionalProperties": false
1310
1317
  },
1311
- "type": "array"
1312
- },
1313
- "jsx_factory": {
1314
- "default": "`\"React.createElement\"`",
1315
- "description": "The function to use to replace jsx syntax.",
1316
- "type": "string"
1317
- },
1318
- "jsx_fragment": {
1319
- "default": "`\"React.Fragment\"`",
1320
- "description": "The function to use to replace jsx fragment syntax.",
1321
- "type": "string"
1322
- },
1323
- "keep_vars": {
1324
- "default": false,
1325
- "description": "By default, wrangler.toml is the source of truth for your environment configuration, like a terraform file.\n\nIf you change your vars in the dashboard, wrangler *will* override/delete them on its next deploy.\n\nIf you want to keep your dashboard vars when wrangler deploys, set this field to true.",
1326
- "type": "boolean"
1327
- },
1328
- "kv-namespaces": {
1329
- "deprecated": "DO NOT USE. This was a legacy bug from Wrangler v1, that we do not want to support.",
1330
- "description": "Legacy way of defining KVNamespaces that is no longer supported.",
1331
- "type": "string"
1318
+ "description": "These specify any Workers KV Namespaces you want to access from inside your Worker.\n\nTo learn more about KV Namespaces, see the documentation at https://developers.cloudflare.com/workers/learning/how-kv-works\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#kv-namespaces",
1319
+ "default": []
1332
1320
  },
1333
- "kv_namespaces": {
1334
- "default": "`[]`",
1335
- "description": "These specify any Workers KV Namespaces you want to access from inside your Worker.\n\nTo learn more about KV Namespaces, see the documentation at https://developers.cloudflare.com/workers/learning/how-kv-works\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1321
+ "send_email": {
1322
+ "type": "array",
1336
1323
  "items": {
1337
- "additionalProperties": false,
1324
+ "type": "object",
1338
1325
  "properties": {
1339
- "binding": {
1340
- "description": "The binding name used to refer to the KV Namespace",
1341
- "type": "string"
1326
+ "name": {
1327
+ "type": "string",
1328
+ "description": "The binding name used to refer to the this binding"
1342
1329
  },
1343
- "id": {
1344
- "description": "The ID of the KV namespace",
1345
- "type": "string"
1330
+ "destination_address": {
1331
+ "type": "string",
1332
+ "description": "If this binding should be restricted to a specific verified address"
1346
1333
  },
1347
- "preview_id": {
1348
- "description": "The ID of the KV namespace used during `wrangler dev`",
1349
- "type": "string"
1334
+ "allowed_destination_addresses": {
1335
+ "type": "array",
1336
+ "items": {
1337
+ "type": "string"
1338
+ },
1339
+ "description": "If this binding should be restricted to a set of verified addresses"
1350
1340
  }
1351
1341
  },
1352
1342
  "required": [
1353
- "binding",
1354
- "id"
1343
+ "name"
1355
1344
  ],
1356
- "type": "object"
1345
+ "additionalProperties": false
1357
1346
  },
1358
- "type": "array"
1347
+ "description": "These specify bindings to send email from inside your Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#email-bindings",
1348
+ "default": []
1359
1349
  },
1360
- "legacy_env": {
1361
- "description": "A boolean to enable \"legacy\" style wrangler environments (from Wrangler v1). These have been superseded by Services, but there may be projects that won't (or can't) use them. If you're using a legacy environment, you can set this to `true` to enable it.",
1362
- "type": "boolean"
1363
- },
1364
- "limits": {
1365
- "$ref": "#/definitions/UserLimits",
1366
- "description": "Specify limits for runtime behavior. Only supported for the \"standard\" Usage Model"
1367
- },
1368
- "logfwdr": {
1369
- "additionalProperties": false,
1370
- "default": "`{bindings:[]}`",
1371
- "description": "List of bindings that you will send to logfwdr",
1350
+ "queues": {
1351
+ "type": "object",
1372
1352
  "properties": {
1373
- "bindings": {
1353
+ "producers": {
1354
+ "type": "array",
1374
1355
  "items": {
1375
- "additionalProperties": false,
1356
+ "type": "object",
1376
1357
  "properties": {
1377
- "destination": {
1378
- "description": "The destination for this logged message",
1379
- "type": "string"
1358
+ "binding": {
1359
+ "type": "string",
1360
+ "description": "The binding name used to refer to the Queue in the Worker."
1380
1361
  },
1381
- "name": {
1382
- "description": "The binding name used to refer to logfwdr",
1383
- "type": "string"
1362
+ "queue": {
1363
+ "type": "string",
1364
+ "description": "The name of this Queue."
1365
+ },
1366
+ "delivery_delay": {
1367
+ "type": "number",
1368
+ "description": "The number of seconds to wait before delivering a message"
1369
+ },
1370
+ "remote": {
1371
+ "type": "boolean",
1372
+ "description": "Whether the Queue producer should be remote or not (only available under `--x-mixed-mode`)"
1384
1373
  }
1385
1374
  },
1386
1375
  "required": [
1387
- "name",
1388
- "destination"
1376
+ "binding",
1377
+ "queue"
1389
1378
  ],
1390
- "type": "object"
1391
- },
1392
- "type": "array"
1393
- }
1394
- },
1395
- "required": [
1396
- "bindings"
1397
- ],
1398
- "type": "object"
1399
- },
1400
- "logpush": {
1401
- "description": "Send Trace Events from this Worker to Workers Logpush.\n\nThis will not configure a corresponding Logpush job automatically.\n\nFor more information about Workers Logpush, see: https://blog.cloudflare.com/logpush-for-workers/",
1402
- "type": "boolean"
1403
- },
1404
- "main": {
1405
- "description": "The entrypoint/path to the JavaScript file that will be executed.",
1406
- "type": "string"
1407
- },
1408
- "migrations": {
1409
- "default": [],
1410
- "description": "A list of migrations that should be uploaded with your Worker.\n\nThese define changes in your Durable Object declarations.\n\nMore details at https://developers.cloudflare.com/workers/learning/using-durable-objects#configuring-durable-object-classes-with-migrations",
1411
- "items": {
1412
- "additionalProperties": false,
1413
- "properties": {
1414
- "deleted_classes": {
1415
- "description": "The Durable Objects being removed.",
1416
- "items": {
1417
- "type": "string"
1418
- },
1419
- "type": "array"
1420
- },
1421
- "new_classes": {
1422
- "description": "The new Durable Objects being defined.",
1423
- "items": {
1424
- "type": "string"
1425
- },
1426
- "type": "array"
1427
- },
1428
- "renamed_classes": {
1429
- "description": "The Durable Objects being renamed.",
1430
- "items": {
1431
- "additionalProperties": false,
1432
- "properties": {
1433
- "from": {
1434
- "type": "string"
1435
- },
1436
- "to": {
1437
- "type": "string"
1438
- }
1439
- },
1440
- "required": [
1441
- "from",
1442
- "to"
1443
- ],
1444
- "type": "object"
1445
- },
1446
- "type": "array"
1447
- },
1448
- "tag": {
1449
- "description": "A unique identifier for this migration.",
1450
- "type": "string"
1451
- }
1452
- },
1453
- "required": [
1454
- "tag"
1455
- ],
1456
- "type": "object"
1457
- },
1458
- "type": "array"
1459
- },
1460
- "miniflare": {
1461
- "deprecated": true,
1462
- "description": "Configuration only used by a standalone use of the miniflare binary."
1463
- },
1464
- "minify": {
1465
- "description": "Minify the script before uploading.",
1466
- "type": "boolean"
1467
- },
1468
- "mtls_certificates": {
1469
- "default": "`[]`",
1470
- "description": "Specifies a list of mTLS certificates that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1471
- "items": {
1472
- "additionalProperties": false,
1473
- "properties": {
1474
- "binding": {
1475
- "description": "The binding name used to refer to the certificate in the Worker",
1476
- "type": "string"
1379
+ "additionalProperties": false
1477
1380
  },
1478
- "certificate_id": {
1479
- "description": "The uuid of the uploaded mTLS certificate",
1480
- "type": "string"
1481
- }
1381
+ "description": "Producer bindings"
1482
1382
  },
1483
- "required": [
1484
- "binding",
1485
- "certificate_id"
1486
- ],
1487
- "type": "object"
1488
- },
1489
- "type": "array"
1490
- },
1491
- "name": {
1492
- "description": "The name of your Worker. Alphanumeric + dashes only.",
1493
- "type": "string"
1494
- },
1495
- "no_bundle": {
1496
- "description": "Skip internal build steps and directly deploy script",
1497
- "type": "boolean"
1498
- },
1499
- "node_compat": {
1500
- "description": "Add polyfills for node builtin modules and globals",
1501
- "type": "boolean"
1502
- },
1503
- "pages_build_output_dir": {
1504
- "description": "The directory of static assets to serve.\n\nThe presence of this field in `wrangler.toml` indicates a Pages project, and will prompt the handling of the configuration file according to the Pages-specific validation rules.",
1505
- "type": "string"
1506
- },
1507
- "placement": {
1508
- "additionalProperties": false,
1509
- "description": "Specify how the Worker should be located to minimize round-trip time.\n\nMore details: https://developers.cloudflare.com/workers/platform/smart-placement/",
1510
- "properties": {
1511
- "mode": {
1512
- "enum": [
1513
- "off",
1514
- "smart"
1515
- ],
1516
- "type": "string"
1517
- }
1518
- },
1519
- "required": [
1520
- "mode"
1521
- ],
1522
- "type": "object"
1523
- },
1524
- "preserve_file_names": {
1525
- "description": "Determines whether Wrangler will preserve bundled file names. Defaults to false. If left unset, files will be named using the pattern ${fileHash}-${basename}, for example, `34de60b44167af5c5a709e62a4e20c4f18c9e3b6-favicon.ico`.",
1526
- "type": "boolean"
1527
- },
1528
- "queues": {
1529
- "additionalProperties": false,
1530
- "default": "`{consumers:[],producers:[]}`",
1531
- "description": "Specifies Queues that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1532
- "properties": {
1533
1383
  "consumers": {
1534
- "description": "Consumer configuration",
1384
+ "type": "array",
1535
1385
  "items": {
1536
- "additionalProperties": false,
1386
+ "type": "object",
1537
1387
  "properties": {
1538
- "dead_letter_queue": {
1539
- "description": "The queue to send messages that failed to be consumed.",
1540
- "type": "string"
1388
+ "queue": {
1389
+ "type": "string",
1390
+ "description": "The name of the queue from which this consumer should consume."
1391
+ },
1392
+ "type": {
1393
+ "type": "string",
1394
+ "description": "The consumer type, e.g., worker, http-pull, r2-bucket, etc. Default is worker."
1541
1395
  },
1542
1396
  "max_batch_size": {
1543
- "description": "The maximum number of messages per batch",
1544
- "type": "number"
1397
+ "type": "number",
1398
+ "description": "The maximum number of messages per batch"
1545
1399
  },
1546
1400
  "max_batch_timeout": {
1547
- "description": "The maximum number of seconds to wait to fill a batch with messages.",
1548
- "type": "number"
1401
+ "type": "number",
1402
+ "description": "The maximum number of seconds to wait to fill a batch with messages."
1403
+ },
1404
+ "max_retries": {
1405
+ "type": "number",
1406
+ "description": "The maximum number of retries for each message."
1407
+ },
1408
+ "dead_letter_queue": {
1409
+ "type": "string",
1410
+ "description": "The queue to send messages that failed to be consumed."
1549
1411
  },
1550
1412
  "max_concurrency": {
1551
- "description": "The maximum number of concurrent consumer Worker invocations. Leaving this unset will allow your consumer to scale to the maximum concurrency needed to keep up with the message backlog.",
1552
1413
  "type": [
1553
1414
  "number",
1554
1415
  "null"
1555
- ]
1556
- },
1557
- "max_retries": {
1558
- "description": "The maximum number of retries for each message.",
1559
- "type": "number"
1560
- },
1561
- "queue": {
1562
- "description": "The name of the queue from which this consumer should consume.",
1563
- "type": "string"
1564
- },
1565
- "retry_delay": {
1566
- "description": "The number of seconds to wait before retrying a message",
1567
- "type": "number"
1568
- },
1569
- "type": {
1570
- "description": "The consumer type, e.g., worker, http-pull, r2-bucket, etc. Default is worker.",
1571
- "type": "string"
1416
+ ],
1417
+ "description": "The maximum number of concurrent consumer Worker invocations. Leaving this unset will allow your consumer to scale to the maximum concurrency needed to keep up with the message backlog."
1572
1418
  },
1573
1419
  "visibility_timeout_ms": {
1574
- "description": "The number of milliseconds to wait for pulled messages to become visible again",
1575
- "type": "number"
1576
- }
1577
- },
1578
- "required": [
1579
- "queue"
1580
- ],
1581
- "type": "object"
1582
- },
1583
- "type": "array"
1584
- },
1585
- "producers": {
1586
- "description": "Producer bindings",
1587
- "items": {
1588
- "additionalProperties": false,
1589
- "properties": {
1590
- "binding": {
1591
- "description": "The binding name used to refer to the Queue in the Worker.",
1592
- "type": "string"
1593
- },
1594
- "delivery_delay": {
1595
- "description": "The number of seconds to wait before delivering a message",
1596
- "type": "number"
1420
+ "type": "number",
1421
+ "description": "The number of milliseconds to wait for pulled messages to become visible again"
1597
1422
  },
1598
- "queue": {
1599
- "description": "The name of this Queue.",
1600
- "type": "string"
1423
+ "retry_delay": {
1424
+ "type": "number",
1425
+ "description": "The number of seconds to wait before retrying a message"
1601
1426
  }
1602
1427
  },
1603
1428
  "required": [
1604
- "binding",
1605
1429
  "queue"
1606
1430
  ],
1607
- "type": "object"
1431
+ "additionalProperties": false
1608
1432
  },
1609
- "type": "array"
1433
+ "description": "Consumer configuration"
1610
1434
  }
1611
1435
  },
1612
- "type": "object"
1436
+ "additionalProperties": false,
1437
+ "description": "Specifies Queues that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#queues",
1438
+ "default": {
1439
+ "consumers": [],
1440
+ "producers": []
1441
+ }
1613
1442
  },
1614
1443
  "r2_buckets": {
1615
- "default": "`[]`",
1616
- "description": "Specifies R2 buckets that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1444
+ "type": "array",
1617
1445
  "items": {
1618
- "additionalProperties": false,
1446
+ "type": "object",
1619
1447
  "properties": {
1620
1448
  "binding": {
1621
- "description": "The binding name used to refer to the R2 bucket in the Worker.",
1622
- "type": "string"
1449
+ "type": "string",
1450
+ "description": "The binding name used to refer to the R2 bucket in the Worker."
1623
1451
  },
1624
1452
  "bucket_name": {
1625
- "description": "The name of this R2 bucket at the edge.",
1626
- "type": "string"
1453
+ "type": "string",
1454
+ "description": "The name of this R2 bucket at the edge."
1455
+ },
1456
+ "preview_bucket_name": {
1457
+ "type": "string",
1458
+ "description": "The preview name of this R2 bucket at the edge."
1627
1459
  },
1628
1460
  "jurisdiction": {
1629
- "description": "The jurisdiction that the bucket exists in. Default if not present.",
1630
- "type": "string"
1461
+ "type": "string",
1462
+ "description": "The jurisdiction that the bucket exists in. Default if not present."
1631
1463
  },
1632
- "preview_bucket_name": {
1633
- "description": "The preview name of this R2 bucket at the edge.",
1634
- "type": "string"
1464
+ "remote": {
1465
+ "type": "boolean",
1466
+ "description": "Whether the R2 bucket should be remote or not (only available under `--x-mixed-mode`)"
1635
1467
  }
1636
1468
  },
1637
1469
  "required": [
1638
- "binding",
1639
- "bucket_name"
1470
+ "binding"
1640
1471
  ],
1641
- "type": "object"
1642
- },
1643
- "type": "array"
1644
- },
1645
- "route": {
1646
- "$ref": "#/definitions/Route",
1647
- "description": "A route that your Worker should be published to. Literally the same as routes, but only one. Only one of `routes` or `route` is required.\n\nOnly required when workers_dev is false, and there's no scheduled Worker"
1648
- },
1649
- "routes": {
1650
- "description": "A list of routes that your Worker should be published to. Only one of `routes` or `route` is required.\n\nOnly required when workers_dev is false, and there's no scheduled Worker (see `triggers`)",
1651
- "items": {
1652
- "$ref": "#/definitions/Route"
1472
+ "additionalProperties": false
1653
1473
  },
1654
- "type": "array"
1474
+ "description": "Specifies R2 buckets that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#r2-buckets",
1475
+ "default": []
1655
1476
  },
1656
- "rules": {
1657
- "description": "An ordered list of rules that define which modules to import, and what type to import them as. You will need to specify rules to use Text, Data, and CompiledWasm modules, or when you wish to have a .js file be treated as an ESModule instead of CommonJS.",
1658
- "items": {
1659
- "$ref": "#/definitions/Rule"
1660
- },
1661
- "type": "array"
1662
- },
1663
- "send_email": {
1664
- "default": "`[]`",
1665
- "description": "These specify bindings to send email from inside your Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1477
+ "d1_databases": {
1478
+ "type": "array",
1666
1479
  "items": {
1667
- "additionalProperties": false,
1480
+ "type": "object",
1668
1481
  "properties": {
1669
- "allowed_destination_addresses": {
1670
- "description": "If this binding should be restricted to a set of verified addresses",
1671
- "items": {
1672
- "type": "string"
1673
- },
1674
- "type": "array"
1482
+ "binding": {
1483
+ "type": "string",
1484
+ "description": "The binding name used to refer to the D1 database in the Worker."
1675
1485
  },
1676
- "destination_address": {
1677
- "description": "If this binding should be restricted to a specific verified address",
1678
- "type": "string"
1486
+ "database_name": {
1487
+ "type": "string",
1488
+ "description": "The name of this D1 database."
1679
1489
  },
1680
- "name": {
1681
- "description": "The binding name used to refer to the this binding",
1682
- "type": "string"
1490
+ "database_id": {
1491
+ "type": "string",
1492
+ "description": "The UUID of this D1 database (not required)."
1493
+ },
1494
+ "preview_database_id": {
1495
+ "type": "string",
1496
+ "description": "The UUID of this D1 database for Wrangler Dev (if specified)."
1497
+ },
1498
+ "migrations_table": {
1499
+ "type": "string",
1500
+ "description": "The name of the migrations table for this D1 database (defaults to 'd1_migrations')."
1501
+ },
1502
+ "migrations_dir": {
1503
+ "type": "string",
1504
+ "description": "The path to the directory of migrations for this D1 database (defaults to './migrations')."
1505
+ },
1506
+ "database_internal_env": {
1507
+ "type": "string",
1508
+ "description": "Internal use only."
1509
+ },
1510
+ "remote": {
1511
+ "type": "boolean",
1512
+ "description": "Whether the D1 database should be remote or not (only available under `--x-mixed-mode`)"
1683
1513
  }
1684
1514
  },
1685
1515
  "required": [
1686
- "name"
1516
+ "binding"
1687
1517
  ],
1688
- "type": "object"
1518
+ "additionalProperties": false
1689
1519
  },
1690
- "type": "array"
1520
+ "description": "Specifies D1 databases that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#d1-databases",
1521
+ "default": []
1691
1522
  },
1692
- "send_metrics": {
1693
- "description": "Whether Wrangler should send usage metrics to Cloudflare for this project.\n\nWhen defined this will override any user settings. Otherwise, Wrangler will use the user's preference.",
1694
- "type": "boolean"
1523
+ "vectorize": {
1524
+ "type": "array",
1525
+ "items": {
1526
+ "type": "object",
1527
+ "properties": {
1528
+ "binding": {
1529
+ "type": "string",
1530
+ "description": "The binding name used to refer to the Vectorize index in the Worker."
1531
+ },
1532
+ "index_name": {
1533
+ "type": "string",
1534
+ "description": "The name of the index."
1535
+ },
1536
+ "remote": {
1537
+ "type": "boolean",
1538
+ "description": "Whether the Vectorize index should be remote or not (only available under `--x-mixed-mode`)"
1539
+ }
1540
+ },
1541
+ "required": [
1542
+ "binding",
1543
+ "index_name"
1544
+ ],
1545
+ "additionalProperties": false
1546
+ },
1547
+ "description": "Specifies Vectorize indexes that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#vectorize-indexes",
1548
+ "default": []
1549
+ },
1550
+ "hyperdrive": {
1551
+ "type": "array",
1552
+ "items": {
1553
+ "type": "object",
1554
+ "properties": {
1555
+ "binding": {
1556
+ "type": "string",
1557
+ "description": "The binding name used to refer to the project in the Worker."
1558
+ },
1559
+ "id": {
1560
+ "type": "string",
1561
+ "description": "The id of the database."
1562
+ },
1563
+ "localConnectionString": {
1564
+ "type": "string",
1565
+ "description": "The local database connection string for `wrangler dev`"
1566
+ }
1567
+ },
1568
+ "required": [
1569
+ "binding",
1570
+ "id"
1571
+ ],
1572
+ "additionalProperties": false
1573
+ },
1574
+ "description": "Specifies Hyperdrive configs that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#hyperdrive",
1575
+ "default": []
1695
1576
  },
1696
1577
  "services": {
1697
- "default": "`[]`",
1698
- "description": "Specifies service bindings (Worker-to-Worker) that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1578
+ "type": "array",
1699
1579
  "items": {
1700
- "additionalProperties": false,
1580
+ "type": "object",
1701
1581
  "properties": {
1702
1582
  "binding": {
1703
- "description": "The binding name used to refer to the bound service.",
1704
- "type": "string"
1583
+ "type": "string",
1584
+ "description": "The binding name used to refer to the bound service."
1705
1585
  },
1706
- "entrypoint": {
1707
- "description": "Optionally, the entrypoint (named export) of the service to bind to.",
1708
- "type": "string"
1586
+ "service": {
1587
+ "type": "string",
1588
+ "description": "The name of the service."
1709
1589
  },
1710
1590
  "environment": {
1711
- "description": "The environment of the service (e.g. production, staging, etc).",
1712
- "type": "string"
1591
+ "type": "string",
1592
+ "description": "The environment of the service (e.g. production, staging, etc)."
1713
1593
  },
1714
- "service": {
1715
- "description": "The name of the service.",
1716
- "type": "string"
1594
+ "entrypoint": {
1595
+ "type": "string",
1596
+ "description": "Optionally, the entrypoint (named export) of the service to bind to."
1597
+ },
1598
+ "props": {
1599
+ "type": "object",
1600
+ "additionalProperties": {},
1601
+ "description": "Optional properties that will be made available to the service via ctx.props."
1602
+ },
1603
+ "remote": {
1604
+ "type": "boolean",
1605
+ "description": "Whether the service binding should be remote or not (only available under `--x-mixed-mode`)"
1717
1606
  }
1718
1607
  },
1719
1608
  "required": [
1720
1609
  "binding",
1721
1610
  "service"
1722
1611
  ],
1723
- "type": "object"
1612
+ "additionalProperties": false
1724
1613
  },
1725
- "type": "array"
1614
+ "description": "Specifies service bindings (Worker-to-Worker) that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#service-bindings",
1615
+ "default": []
1726
1616
  },
1727
- "site": {
1728
- "additionalProperties": false,
1729
- "description": "The definition of a Worker Site, a feature that lets you upload static assets with your Worker.\n\nMore details at https://developers.cloudflare.com/workers/platform/sites",
1617
+ "analytics_engine_datasets": {
1618
+ "type": "array",
1619
+ "items": {
1620
+ "type": "object",
1621
+ "properties": {
1622
+ "binding": {
1623
+ "type": "string",
1624
+ "description": "The binding name used to refer to the dataset in the Worker."
1625
+ },
1626
+ "dataset": {
1627
+ "type": "string",
1628
+ "description": "The name of this dataset to write to."
1629
+ }
1630
+ },
1631
+ "required": [
1632
+ "binding"
1633
+ ],
1634
+ "additionalProperties": false
1635
+ },
1636
+ "description": "Specifies analytics engine datasets that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#analytics-engine-datasets",
1637
+ "default": []
1638
+ },
1639
+ "browser": {
1640
+ "type": "object",
1730
1641
  "properties": {
1731
- "bucket": {
1732
- "description": "The directory containing your static assets.\n\nIt must be a path relative to your wrangler.toml file. Example: bucket = \"./public\"\n\nIf there is a `site` field then it must contain this `bucket` field.",
1642
+ "binding": {
1733
1643
  "type": "string"
1734
1644
  },
1735
- "entry-point": {
1736
- "deprecated": "DO NOT use this (it's a holdover from Wrangler v1.x). Either use the top level `main` field, or pass the path to your entry file as a command line argument.",
1737
- "description": "The location of your Worker script.",
1645
+ "remote": {
1646
+ "type": "boolean",
1647
+ "description": "Whether the Browser binding should be remote or not (only available under `--x-mixed-mode`)"
1648
+ }
1649
+ },
1650
+ "required": [
1651
+ "binding"
1652
+ ],
1653
+ "additionalProperties": false,
1654
+ "description": "A browser that will be usable from the Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#browser-rendering",
1655
+ "default": {}
1656
+ },
1657
+ "ai": {
1658
+ "type": "object",
1659
+ "properties": {
1660
+ "binding": {
1738
1661
  "type": "string"
1739
1662
  },
1740
- "exclude": {
1741
- "default": [],
1742
- "description": "A list of .gitignore-style patterns that match files or directories in your bucket that should be excluded from uploads. Example: exclude = [\"ignore_dir\"]",
1743
- "items": {
1744
- "type": "string"
1745
- },
1746
- "type": "array"
1663
+ "staging": {
1664
+ "type": "boolean"
1747
1665
  },
1748
- "include": {
1749
- "default": [],
1750
- "description": "An exclusive list of .gitignore-style patterns that match file or directory names from your bucket location. Only matched items will be uploaded. Example: include = [\"upload_dir\"]",
1751
- "items": {
1752
- "type": "string"
1753
- },
1754
- "type": "array"
1666
+ "remote": {
1667
+ "type": "boolean",
1668
+ "description": "Whether the AI binding should be remote or not (only available under `--x-mixed-mode`)"
1755
1669
  }
1756
1670
  },
1757
1671
  "required": [
1758
- "bucket"
1672
+ "binding"
1759
1673
  ],
1760
- "type": "object"
1761
- },
1762
- "tail_consumers": {
1763
- "default": "`[]`",
1764
- "description": "Specifies a list of Tail Workers that are bound to this Worker environment\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1765
- "items": {
1766
- "$ref": "#/definitions/TailConsumer"
1767
- },
1768
- "type": "array"
1769
- },
1770
- "text_blobs": {
1771
- "additionalProperties": {
1772
- "type": "string"
1773
- },
1774
- "description": "A list of text files that your worker should be bound to. This is the \"legacy\" way of binding to a text file. ES module workers should do proper module imports.",
1775
- "type": "object"
1776
- },
1777
- "triggers": {
1778
1674
  "additionalProperties": false,
1779
- "default": "`{crons:[]}`",
1780
- "description": "\"Cron\" definitions to trigger a Worker's \"scheduled\" function.\n\nLets you call Workers periodically, much like a cron job.\n\nMore details here https://developers.cloudflare.com/workers/platform/cron-triggers",
1675
+ "description": "Binding to the AI project.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#workers-ai",
1676
+ "default": {}
1677
+ },
1678
+ "images": {
1679
+ "type": "object",
1781
1680
  "properties": {
1782
- "crons": {
1783
- "items": {
1784
- "type": "string"
1785
- },
1786
- "type": "array"
1681
+ "binding": {
1682
+ "type": "string"
1683
+ },
1684
+ "remote": {
1685
+ "type": "boolean",
1686
+ "description": "Whether the Images binding should be remote or not (only available under `--x-mixed-mode`)"
1787
1687
  }
1788
1688
  },
1789
1689
  "required": [
1790
- "crons"
1690
+ "binding"
1791
1691
  ],
1792
- "type": "object"
1793
- },
1794
- "tsconfig": {
1795
- "description": "Path to a custom tsconfig",
1796
- "type": "string"
1692
+ "additionalProperties": false,
1693
+ "description": "Binding to Cloudflare Images\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#images",
1694
+ "default": {}
1797
1695
  },
1798
- "type": {
1799
- "deprecated": "DO NOT USE THIS. Most common features now work out of the box with wrangler, including modules, jsx, typescript, etc. If you need anything more, use a custom build.",
1800
- "description": "The project \"type\". A holdover from Wrangler v1.x. Valid values were \"webpack\", \"javascript\", and \"rust\".",
1801
- "enum": [
1802
- "webpack",
1803
- "javascript",
1804
- "rust"
1696
+ "version_metadata": {
1697
+ "type": "object",
1698
+ "properties": {
1699
+ "binding": {
1700
+ "type": "string"
1701
+ }
1702
+ },
1703
+ "required": [
1704
+ "binding"
1805
1705
  ],
1806
- "type": "string"
1706
+ "additionalProperties": false,
1707
+ "description": "Binding to the Worker Version's metadata"
1807
1708
  },
1808
1709
  "unsafe": {
1809
- "additionalProperties": false,
1810
- "default": "`{}`",
1811
- "description": "\"Unsafe\" tables for features that aren't directly supported by wrangler.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1710
+ "type": "object",
1812
1711
  "properties": {
1813
1712
  "bindings": {
1814
- "description": "A set of bindings that should be put into a Worker's upload metadata without changes. These can be used to implement bindings for features that haven't released and aren't supported directly by wrangler or miniflare.",
1713
+ "type": "array",
1815
1714
  "items": {
1816
- "additionalProperties": {},
1715
+ "type": "object",
1817
1716
  "properties": {
1818
1717
  "name": {
1819
1718
  "type": "string"
@@ -1826,33 +1725,38 @@
1826
1725
  "name",
1827
1726
  "type"
1828
1727
  ],
1829
- "type": "object"
1728
+ "additionalProperties": {}
1830
1729
  },
1831
- "type": "array"
1730
+ "description": "A set of bindings that should be put into a Worker's upload metadata without changes. These can be used to implement bindings for features that haven't released and aren't supported directly by wrangler or miniflare."
1731
+ },
1732
+ "metadata": {
1733
+ "type": "object",
1734
+ "additionalProperties": {},
1735
+ "description": "Arbitrary key/value pairs that will be included in the uploaded metadata. Values specified here will always be applied to metadata last, so can add new or override existing fields."
1832
1736
  },
1833
1737
  "capnp": {
1834
1738
  "anyOf": [
1835
1739
  {
1836
- "additionalProperties": false,
1740
+ "type": "object",
1837
1741
  "properties": {
1838
1742
  "base_path": {
1839
1743
  "type": "string"
1840
1744
  },
1841
1745
  "source_schemas": {
1746
+ "type": "array",
1842
1747
  "items": {
1843
1748
  "type": "string"
1844
- },
1845
- "type": "array"
1749
+ }
1846
1750
  }
1847
1751
  },
1848
1752
  "required": [
1849
1753
  "base_path",
1850
1754
  "source_schemas"
1851
1755
  ],
1852
- "type": "object"
1756
+ "additionalProperties": false
1853
1757
  },
1854
1758
  {
1855
- "additionalProperties": false,
1759
+ "type": "object",
1856
1760
  "properties": {
1857
1761
  "compiled_schema": {
1858
1762
  "type": "string"
@@ -1861,1079 +1765,723 @@
1861
1765
  "required": [
1862
1766
  "compiled_schema"
1863
1767
  ],
1864
- "type": "object"
1768
+ "additionalProperties": false
1865
1769
  }
1866
1770
  ],
1867
1771
  "description": "Used for internal capnp uploads for the Workers runtime"
1868
- },
1869
- "metadata": {
1870
- "additionalProperties": {},
1871
- "description": "Arbitrary key/value pairs that will be included in the uploaded metadata. Values specified here will always be applied to metadata last, so can add new or override existing fields.",
1872
- "type": "object"
1873
1772
  }
1874
1773
  },
1875
- "type": "object"
1876
- },
1877
- "upload_source_maps": {
1878
- "description": "Include source maps when uploading this worker.",
1879
- "type": "boolean"
1880
- },
1881
- "usage_model": {
1882
- "description": "Specifies the Usage Model for your Worker. There are two options - [bundled](https://developers.cloudflare.com/workers/platform/limits#bundled-usage-model) and [unbound](https://developers.cloudflare.com/workers/platform/limits#unbound-usage-model). For newly created Workers, if the Usage Model is omitted it will be set to the [default Usage Model set on the account](https://dash.cloudflare.com/?account=workers/default-usage-model). For existing Workers, if the Usage Model is omitted, it will be set to the Usage Model configured in the dashboard for that Worker.",
1883
- "enum": [
1884
- "bundled",
1885
- "unbound"
1886
- ],
1887
- "type": "string"
1774
+ "additionalProperties": false,
1775
+ "description": "\"Unsafe\" tables for features that aren't directly supported by wrangler.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1776
+ "default": {}
1888
1777
  },
1889
- "vars": {
1890
- "additionalProperties": {
1891
- "anyOf": [
1892
- {
1893
- "type": "string"
1778
+ "mtls_certificates": {
1779
+ "type": "array",
1780
+ "items": {
1781
+ "type": "object",
1782
+ "properties": {
1783
+ "binding": {
1784
+ "type": "string",
1785
+ "description": "The binding name used to refer to the certificate in the Worker"
1894
1786
  },
1895
- {
1896
- "$ref": "#/definitions/Json"
1787
+ "certificate_id": {
1788
+ "type": "string",
1789
+ "description": "The uuid of the uploaded mTLS certificate"
1897
1790
  }
1898
- ]
1791
+ },
1792
+ "required": [
1793
+ "binding",
1794
+ "certificate_id"
1795
+ ],
1796
+ "additionalProperties": false
1899
1797
  },
1900
- "default": "`{}`",
1901
- "description": "A map of environment variables to set when deploying your Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1902
- "type": "object"
1798
+ "description": "Specifies a list of mTLS certificates that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#mtls-certificates",
1799
+ "default": []
1903
1800
  },
1904
- "vectorize": {
1905
- "default": "`[]`",
1906
- "description": "Specifies Vectorize indexes that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1801
+ "tail_consumers": {
1802
+ "type": "array",
1907
1803
  "items": {
1908
- "additionalProperties": false,
1804
+ "$ref": "#/definitions/TailConsumer"
1805
+ },
1806
+ "description": "Specifies a list of Tail Workers that are bound to this Worker environment\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1807
+ "default": []
1808
+ },
1809
+ "dispatch_namespaces": {
1810
+ "type": "array",
1811
+ "items": {
1812
+ "type": "object",
1909
1813
  "properties": {
1910
1814
  "binding": {
1911
- "description": "The binding name used to refer to the Vectorize index in the Worker.",
1912
- "type": "string"
1815
+ "type": "string",
1816
+ "description": "The binding name used to refer to the bound service."
1913
1817
  },
1914
- "index_name": {
1915
- "description": "The name of the index.",
1916
- "type": "string"
1818
+ "namespace": {
1819
+ "type": "string",
1820
+ "description": "The namespace to bind to."
1821
+ },
1822
+ "outbound": {
1823
+ "$ref": "#/definitions/DispatchNamespaceOutbound",
1824
+ "description": "Details about the outbound Worker which will handle outbound requests from your namespace"
1825
+ },
1826
+ "remote": {
1827
+ "type": "boolean",
1828
+ "description": "Whether the Dispatch Namespace should be remote or not (only available under `--x-mixed-mode`)"
1917
1829
  }
1918
1830
  },
1919
1831
  "required": [
1920
1832
  "binding",
1921
- "index_name"
1833
+ "namespace"
1922
1834
  ],
1923
- "type": "object"
1835
+ "additionalProperties": false
1924
1836
  },
1925
- "type": "array"
1837
+ "description": "Specifies namespace bindings that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#dispatch-namespace-bindings-workers-for-platforms",
1838
+ "default": []
1926
1839
  },
1927
- "version_metadata": {
1928
- "additionalProperties": false,
1929
- "description": "Binding to the Worker Version's metadata",
1930
- "properties": {
1931
- "binding": {
1932
- "type": "string"
1933
- }
1840
+ "pipelines": {
1841
+ "type": "array",
1842
+ "items": {
1843
+ "type": "object",
1844
+ "properties": {
1845
+ "binding": {
1846
+ "type": "string",
1847
+ "description": "The binding name used to refer to the bound service."
1848
+ },
1849
+ "pipeline": {
1850
+ "type": "string",
1851
+ "description": "Name of the Pipeline to bind"
1852
+ }
1853
+ },
1854
+ "required": [
1855
+ "binding",
1856
+ "pipeline"
1857
+ ],
1858
+ "additionalProperties": false
1934
1859
  },
1935
- "required": [
1936
- "binding"
1937
- ],
1938
- "type": "object"
1860
+ "description": "Specifies list of Pipelines bound to this Worker environment\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1861
+ "default": []
1939
1862
  },
1940
- "wasm_modules": {
1941
- "additionalProperties": {
1942
- "type": "string"
1863
+ "secrets_store_secrets": {
1864
+ "type": "array",
1865
+ "items": {
1866
+ "type": "object",
1867
+ "properties": {
1868
+ "binding": {
1869
+ "type": "string",
1870
+ "description": "The binding name used to refer to the bound service."
1871
+ },
1872
+ "store_id": {
1873
+ "type": "string",
1874
+ "description": "Id of the secret store"
1875
+ },
1876
+ "secret_name": {
1877
+ "type": "string",
1878
+ "description": "Name of the secret"
1879
+ }
1880
+ },
1881
+ "required": [
1882
+ "binding",
1883
+ "store_id",
1884
+ "secret_name"
1885
+ ],
1886
+ "additionalProperties": false
1943
1887
  },
1944
- "description": "A list of wasm modules that your worker should be bound to. This is the \"legacy\" way of binding to a wasm module. ES module workers should do proper module imports.",
1945
- "type": "object"
1946
- },
1947
- "webpack_config": {
1948
- "deprecated": "DO NOT USE THIS. Most common features now work out of the box with wrangler, including modules, jsx, typescript, etc. If you need anything more, use a custom build.",
1949
- "description": "Path to the webpack config to use when building your worker. A holdover from Wrangler v1.x, used with `type: \"webpack\"`.",
1888
+ "description": "Specifies Secret Store bindings that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1889
+ "default": []
1890
+ }
1891
+ },
1892
+ "additionalProperties": false,
1893
+ "description": "The raw environment configuration that we read from the config file.\n\nAll the properties are optional, and will be replaced with defaults in the configuration that is used in the rest of the codebase."
1894
+ },
1895
+ "Route": {
1896
+ "anyOf": [
1897
+ {
1950
1898
  "type": "string"
1951
1899
  },
1952
- "workers_dev": {
1953
- "default": "`true` (This is a breaking change from Wrangler v1)",
1954
- "description": "Whether we use <name>.<subdomain>.workers.dev to test and deploy your Worker.\n\n// Carmen according to our tests the default is undefined",
1955
- "type": "boolean"
1900
+ {
1901
+ "$ref": "#/definitions/ZoneIdRoute"
1956
1902
  },
1957
- "zone_id": {
1958
- "description": "TODO: remove this as it has been deprecated.\n\nThis is just here for now because the `route` commands use it. So we need to include it in this type so it is available.",
1959
- "type": "string"
1903
+ {
1904
+ "$ref": "#/definitions/ZoneNameRoute"
1905
+ },
1906
+ {
1907
+ "$ref": "#/definitions/CustomDomainRoute"
1960
1908
  }
1961
- },
1962
- "type": "object"
1909
+ ]
1963
1910
  },
1964
- "RawDevConfig": {
1965
- "additionalProperties": false,
1911
+ "ZoneIdRoute": {
1912
+ "type": "object",
1966
1913
  "properties": {
1967
- "host": {
1968
- "description": "Host to forward requests to, defaults to the host of the first route of project",
1914
+ "pattern": {
1969
1915
  "type": "string"
1970
1916
  },
1971
- "inspector_port": {
1972
- "default": 9229,
1973
- "description": "Port for the local dev server's inspector to listen on",
1974
- "type": "number"
1917
+ "zone_id": {
1918
+ "type": "string"
1975
1919
  },
1976
- "ip": {
1977
- "default": "localhost",
1978
- "description": "IP address for the local dev server to listen on,",
1920
+ "custom_domain": {
1921
+ "type": "boolean"
1922
+ }
1923
+ },
1924
+ "required": [
1925
+ "pattern",
1926
+ "zone_id"
1927
+ ],
1928
+ "additionalProperties": false
1929
+ },
1930
+ "ZoneNameRoute": {
1931
+ "type": "object",
1932
+ "properties": {
1933
+ "pattern": {
1979
1934
  "type": "string"
1980
1935
  },
1981
- "local_protocol": {
1982
- "default": "http",
1983
- "description": "Protocol that local wrangler dev server listens to requests on.",
1984
- "enum": [
1985
- "http",
1986
- "https"
1987
- ],
1936
+ "zone_name": {
1988
1937
  "type": "string"
1989
1938
  },
1990
- "port": {
1991
- "default": 8787,
1992
- "description": "Port for the local dev server to listen on",
1993
- "type": "number"
1994
- },
1995
- "upstream_protocol": {
1996
- "default": "https",
1997
- "description": "Protocol that wrangler dev forwards requests on\n\nSetting this to `http` is not currently implemented for remote mode. See https://github.com/cloudflare/workers-sdk/issues/583",
1998
- "enum": [
1999
- "https",
2000
- "http"
2001
- ],
2002
- "type": "string"
1939
+ "custom_domain": {
1940
+ "type": "boolean"
2003
1941
  }
2004
1942
  },
2005
- "type": "object"
1943
+ "required": [
1944
+ "pattern",
1945
+ "zone_name"
1946
+ ],
1947
+ "additionalProperties": false
2006
1948
  },
2007
- "RawEnvironment": {
2008
- "additionalProperties": false,
2009
- "description": "The raw environment configuration that we read from the config file.\n\nAll the properties are optional, and will be replaced with defaults in the configuration that is used in the rest of the codebase.",
1949
+ "CustomDomainRoute": {
1950
+ "type": "object",
2010
1951
  "properties": {
2011
- "account_id": {
2012
- "description": "This is the ID of the account associated with your zone. You might have more than one account, so make sure to use the ID of the account associated with the zone/route you provide, if you provide one. It can also be specified through the CLOUDFLARE_ACCOUNT_ID environment variable.",
1952
+ "pattern": {
2013
1953
  "type": "string"
2014
1954
  },
2015
- "ai": {
2016
- "additionalProperties": false,
2017
- "default": "`{}`",
2018
- "description": "Binding to the AI project.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2019
- "properties": {
2020
- "binding": {
2021
- "type": "string"
2022
- },
2023
- "staging": {
2024
- "type": "boolean"
2025
- }
2026
- },
2027
- "required": [
2028
- "binding"
2029
- ],
2030
- "type": "object"
1955
+ "custom_domain": {
1956
+ "type": "boolean"
1957
+ }
1958
+ },
1959
+ "required": [
1960
+ "pattern",
1961
+ "custom_domain"
1962
+ ],
1963
+ "additionalProperties": false
1964
+ },
1965
+ "DurableObjectMigration": {
1966
+ "type": "object",
1967
+ "properties": {
1968
+ "tag": {
1969
+ "type": "string",
1970
+ "description": "A unique identifier for this migration."
2031
1971
  },
2032
- "analytics_engine_datasets": {
2033
- "default": "`[]`",
2034
- "description": "Specifies analytics engine datasets that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1972
+ "new_classes": {
1973
+ "type": "array",
2035
1974
  "items": {
2036
- "additionalProperties": false,
2037
- "properties": {
2038
- "binding": {
2039
- "description": "The binding name used to refer to the dataset in the Worker.",
2040
- "type": "string"
2041
- },
2042
- "dataset": {
2043
- "description": "The name of this dataset to write to.",
2044
- "type": "string"
2045
- }
2046
- },
2047
- "required": [
2048
- "binding"
2049
- ],
2050
- "type": "object"
2051
- },
2052
- "type": "array"
2053
- },
2054
- "base_dir": {
2055
- "description": "The directory in which module rules should be evaluated when including additional files into a Worker deployment. This defaults to the directory containing the `main` entry point of the Worker if not specified.",
2056
- "type": "string"
2057
- },
2058
- "browser": {
2059
- "additionalProperties": false,
2060
- "default": "`{}`",
2061
- "description": "A browser that will be usable from the Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2062
- "properties": {
2063
- "binding": {
2064
- "type": "string"
2065
- }
2066
- },
2067
- "required": [
2068
- "binding"
2069
- ],
2070
- "type": "object"
2071
- },
2072
- "build": {
2073
- "additionalProperties": false,
2074
- "default": {
2075
- "watch_dir": "./src"
2076
- },
2077
- "description": "Configures a custom build step to be run by Wrangler when building your Worker.\n\nRefer to the [custom builds documentation](https://developers.cloudflare.com/workers/cli-wrangler/configuration#build) for more details.",
2078
- "properties": {
2079
- "command": {
2080
- "description": "The command used to build your Worker. On Linux and macOS, the command is executed in the `sh` shell and the `cmd` shell for Windows. The `&&` and `||` shell operators may be used.",
2081
- "type": "string"
2082
- },
2083
- "cwd": {
2084
- "description": "The directory in which the command is executed.",
2085
- "type": "string"
2086
- },
2087
- "upload": {
2088
- "$ref": "#/definitions/DeprecatedUpload",
2089
- "deprecated": true,
2090
- "description": "Deprecated field previously used to configure the build and upload of the script."
2091
- },
2092
- "watch_dir": {
2093
- "anyOf": [
2094
- {
2095
- "type": "string"
2096
- },
2097
- {
2098
- "items": {
2099
- "type": "string"
2100
- },
2101
- "type": "array"
2102
- }
2103
- ],
2104
- "description": "The directory to watch for changes while using wrangler dev, defaults to the current working directory"
2105
- }
1975
+ "type": "string"
2106
1976
  },
2107
- "type": "object"
1977
+ "description": "The new Durable Objects being defined."
2108
1978
  },
2109
- "cloudchamber": {
2110
- "$ref": "#/definitions/CloudchamberConfig",
2111
- "default": "`{}`",
2112
- "description": "Cloudchamber configuration\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment."
2113
- },
2114
- "compatibility_date": {
2115
- "description": "A date in the form yyyy-mm-dd, which will be used to determine which version of the Workers runtime is used.\n\nMore details at https://developers.cloudflare.com/workers/platform/compatibility-dates",
2116
- "type": "string"
2117
- },
2118
- "compatibility_flags": {
2119
- "default": "`[]`",
2120
- "description": "A list of flags that enable features from upcoming features of the Workers runtime, usually used together with compatibility_flags.\n\nMore details at https://developers.cloudflare.com/workers/platform/compatibility-dates",
1979
+ "new_sqlite_classes": {
1980
+ "type": "array",
2121
1981
  "items": {
2122
1982
  "type": "string"
2123
1983
  },
2124
- "type": "array"
1984
+ "description": "The new SQLite Durable Objects being defined."
2125
1985
  },
2126
- "constellation": {
2127
- "default": "`[]`",
2128
- "description": "Specifies Constellation projects that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
1986
+ "renamed_classes": {
1987
+ "type": "array",
2129
1988
  "items": {
2130
- "additionalProperties": false,
1989
+ "type": "object",
2131
1990
  "properties": {
2132
- "binding": {
2133
- "description": "The binding name used to refer to the project in the Worker.",
1991
+ "from": {
2134
1992
  "type": "string"
2135
1993
  },
2136
- "project_id": {
2137
- "description": "The id of the project.",
1994
+ "to": {
2138
1995
  "type": "string"
2139
1996
  }
2140
1997
  },
2141
1998
  "required": [
2142
- "binding",
2143
- "project_id"
1999
+ "from",
2000
+ "to"
2144
2001
  ],
2145
- "type": "object"
2002
+ "additionalProperties": false
2146
2003
  },
2147
- "type": "array"
2004
+ "description": "The Durable Objects being renamed."
2148
2005
  },
2149
- "d1_databases": {
2150
- "default": "`[]`",
2151
- "description": "Specifies D1 databases that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2006
+ "deleted_classes": {
2007
+ "type": "array",
2152
2008
  "items": {
2153
- "additionalProperties": false,
2154
- "properties": {
2155
- "binding": {
2156
- "description": "The binding name used to refer to the D1 database in the Worker.",
2157
- "type": "string"
2158
- },
2159
- "database_id": {
2160
- "description": "The UUID of this D1 database (not required).",
2161
- "type": "string"
2162
- },
2163
- "database_internal_env": {
2164
- "description": "Internal use only.",
2165
- "type": "string"
2166
- },
2167
- "database_name": {
2168
- "description": "The name of this D1 database.",
2169
- "type": "string"
2170
- },
2171
- "migrations_dir": {
2172
- "description": "The path to the directory of migrations for this D1 database (defaults to './migrations').",
2173
- "type": "string"
2174
- },
2175
- "migrations_table": {
2176
- "description": "The name of the migrations table for this D1 database (defaults to 'd1_migrations').",
2177
- "type": "string"
2178
- },
2179
- "preview_database_id": {
2180
- "description": "The UUID of this D1 database for Wrangler Dev (if specified).",
2181
- "type": "string"
2182
- }
2183
- },
2184
- "required": [
2185
- "binding",
2186
- "database_name",
2187
- "database_id"
2188
- ],
2189
- "type": "object"
2190
- },
2191
- "type": "array"
2192
- },
2193
- "define": {
2194
- "additionalProperties": {
2195
2009
  "type": "string"
2196
2010
  },
2197
- "default": "`{}`",
2198
- "description": "A map of values to substitute when deploying your Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2199
- "type": "object"
2011
+ "description": "The Durable Objects being removed."
2012
+ }
2013
+ },
2014
+ "required": [
2015
+ "tag"
2016
+ ],
2017
+ "additionalProperties": false,
2018
+ "description": "Configuration in wrangler for Durable Object Migrations"
2019
+ },
2020
+ "UserLimits": {
2021
+ "type": "object",
2022
+ "properties": {
2023
+ "cpu_ms": {
2024
+ "type": "number",
2025
+ "description": "Maximum allowed CPU time for a Worker's invocation in milliseconds"
2026
+ }
2027
+ },
2028
+ "required": [
2029
+ "cpu_ms"
2030
+ ],
2031
+ "additionalProperties": false
2032
+ },
2033
+ "Rule": {
2034
+ "type": "object",
2035
+ "properties": {
2036
+ "type": {
2037
+ "$ref": "#/definitions/ConfigModuleRuleType"
2200
2038
  },
2201
- "dispatch_namespaces": {
2202
- "default": "`[]`",
2203
- "description": "Specifies namespace bindings that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2039
+ "globs": {
2040
+ "type": "array",
2204
2041
  "items": {
2205
- "additionalProperties": false,
2206
- "properties": {
2207
- "binding": {
2208
- "description": "The binding name used to refer to the bound service.",
2209
- "type": "string"
2210
- },
2211
- "namespace": {
2212
- "description": "The namespace to bind to.",
2213
- "type": "string"
2214
- },
2215
- "outbound": {
2216
- "$ref": "#/definitions/DispatchNamespaceOutbound",
2217
- "description": "Details about the outbound Worker which will handle outbound requests from your namespace"
2218
- }
2219
- },
2220
- "required": [
2221
- "binding",
2222
- "namespace"
2223
- ],
2224
- "type": "object"
2225
- },
2226
- "type": "array"
2042
+ "type": "string"
2043
+ }
2227
2044
  },
2228
- "durable_objects": {
2229
- "additionalProperties": false,
2230
- "default": "`{bindings:[]}`",
2231
- "description": "A list of durable objects that your Worker should be bound to.\n\nFor more information about Durable Objects, see the documentation at https://developers.cloudflare.com/workers/learning/using-durable-objects\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2232
- "properties": {
2233
- "bindings": {
2234
- "$ref": "#/definitions/DurableObjectBindings"
2235
- }
2236
- },
2237
- "required": [
2238
- "bindings"
2239
- ],
2240
- "type": "object"
2045
+ "fallthrough": {
2046
+ "type": "boolean"
2047
+ }
2048
+ },
2049
+ "required": [
2050
+ "type",
2051
+ "globs"
2052
+ ],
2053
+ "additionalProperties": false,
2054
+ "description": "A bundling resolver rule, defining the modules type for paths that match the specified globs."
2055
+ },
2056
+ "ConfigModuleRuleType": {
2057
+ "type": "string",
2058
+ "enum": [
2059
+ "ESModule",
2060
+ "CommonJS",
2061
+ "CompiledWasm",
2062
+ "Text",
2063
+ "Data",
2064
+ "PythonModule",
2065
+ "PythonRequirement"
2066
+ ],
2067
+ "description": "The possible types for a `Rule`."
2068
+ },
2069
+ "Assets": {
2070
+ "type": "object",
2071
+ "properties": {
2072
+ "directory": {
2073
+ "type": "string",
2074
+ "description": "Absolute path to assets directory"
2241
2075
  },
2242
- "experimental_services": {
2243
- "default": "`[]`",
2244
- "deprecated": "DO NOT USE. We'd added this to test the new service binding system, but the proper way to test experimental features is to use `unsafe.bindings` configuration.",
2245
- "description": "A list of services that your Worker should be bound to.",
2246
- "items": {
2247
- "additionalProperties": false,
2248
- "properties": {
2249
- "environment": {
2250
- "description": "The Service's environment",
2251
- "type": "string"
2252
- },
2253
- "name": {
2254
- "description": "The binding name used to refer to the Service",
2255
- "type": "string"
2256
- },
2257
- "service": {
2258
- "description": "The name of the Service being bound",
2259
- "type": "string"
2260
- }
2261
- },
2262
- "required": [
2263
- "name",
2264
- "service",
2265
- "environment"
2266
- ],
2267
- "type": "object"
2268
- },
2269
- "type": "array"
2076
+ "binding": {
2077
+ "type": "string",
2078
+ "description": "Name of `env` binding property in the User Worker."
2270
2079
  },
2271
- "find_additional_modules": {
2272
- "description": "If true then Wrangler will traverse the file tree below `base_dir`; Any files that match `rules` will be included in the deployed Worker. Defaults to true if `no_bundle` is true, otherwise false.",
2273
- "type": "boolean"
2080
+ "html_handling": {
2081
+ "type": "string",
2082
+ "enum": [
2083
+ "auto-trailing-slash",
2084
+ "force-trailing-slash",
2085
+ "drop-trailing-slash",
2086
+ "none"
2087
+ ],
2088
+ "description": "How to handle HTML requests."
2274
2089
  },
2275
- "first_party_worker": {
2276
- "description": "Designates this Worker as an internal-only \"first-party\" Worker.",
2277
- "type": "boolean"
2090
+ "not_found_handling": {
2091
+ "type": "string",
2092
+ "enum": [
2093
+ "single-page-application",
2094
+ "404-page",
2095
+ "none"
2096
+ ],
2097
+ "description": "How to handle requests that do not match an asset."
2278
2098
  },
2279
- "hyperdrive": {
2280
- "default": "`[]`",
2281
- "description": "Specifies Hyperdrive configs that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2282
- "items": {
2283
- "additionalProperties": false,
2284
- "properties": {
2285
- "binding": {
2286
- "description": "The binding name used to refer to the project in the Worker.",
2287
- "type": "string"
2288
- },
2289
- "id": {
2290
- "description": "The id of the database.",
2291
- "type": "string"
2292
- },
2293
- "localConnectionString": {
2294
- "description": "The local database connection string for `wrangler dev`",
2295
- "type": "string"
2296
- }
2297
- },
2298
- "required": [
2299
- "binding",
2300
- "id"
2301
- ],
2302
- "type": "object"
2303
- },
2304
- "type": "array"
2305
- },
2306
- "jsx_factory": {
2307
- "default": "`\"React.createElement\"`",
2308
- "description": "The function to use to replace jsx syntax.",
2309
- "type": "string"
2310
- },
2311
- "jsx_fragment": {
2312
- "default": "`\"React.Fragment\"`",
2313
- "description": "The function to use to replace jsx fragment syntax.",
2314
- "type": "string"
2315
- },
2316
- "kv-namespaces": {
2317
- "deprecated": "DO NOT USE. This was a legacy bug from Wrangler v1, that we do not want to support.",
2318
- "description": "Legacy way of defining KVNamespaces that is no longer supported.",
2319
- "type": "string"
2320
- },
2321
- "kv_namespaces": {
2322
- "default": "`[]`",
2323
- "description": "These specify any Workers KV Namespaces you want to access from inside your Worker.\n\nTo learn more about KV Namespaces, see the documentation at https://developers.cloudflare.com/workers/learning/how-kv-works\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2324
- "items": {
2325
- "additionalProperties": false,
2326
- "properties": {
2327
- "binding": {
2328
- "description": "The binding name used to refer to the KV Namespace",
2329
- "type": "string"
2330
- },
2331
- "id": {
2332
- "description": "The ID of the KV namespace",
2333
- "type": "string"
2334
- },
2335
- "preview_id": {
2336
- "description": "The ID of the KV namespace used during `wrangler dev`",
2337
- "type": "string"
2338
- }
2339
- },
2340
- "required": [
2341
- "binding",
2342
- "id"
2343
- ],
2344
- "type": "object"
2345
- },
2346
- "type": "array"
2099
+ "run_worker_first": {
2100
+ "type": "boolean",
2101
+ "description": "If true, route every request to the User Worker, whether or not it matches an asset. If false, then respond to requests that match an asset with that asset directly."
2102
+ }
2103
+ },
2104
+ "additionalProperties": false
2105
+ },
2106
+ "Observability": {
2107
+ "type": "object",
2108
+ "properties": {
2109
+ "enabled": {
2110
+ "type": "boolean",
2111
+ "description": "If observability is enabled for this Worker"
2347
2112
  },
2348
- "limits": {
2349
- "$ref": "#/definitions/UserLimits",
2350
- "description": "Specify limits for runtime behavior. Only supported for the \"standard\" Usage Model"
2113
+ "head_sampling_rate": {
2114
+ "type": "number",
2115
+ "description": "The sampling rate"
2351
2116
  },
2352
- "logfwdr": {
2353
- "additionalProperties": false,
2354
- "default": "`{bindings:[]}`",
2355
- "description": "List of bindings that you will send to logfwdr",
2117
+ "logs": {
2118
+ "type": "object",
2356
2119
  "properties": {
2357
- "bindings": {
2358
- "items": {
2359
- "additionalProperties": false,
2360
- "properties": {
2361
- "destination": {
2362
- "description": "The destination for this logged message",
2363
- "type": "string"
2364
- },
2365
- "name": {
2366
- "description": "The binding name used to refer to logfwdr",
2367
- "type": "string"
2368
- }
2369
- },
2370
- "required": [
2371
- "name",
2372
- "destination"
2373
- ],
2374
- "type": "object"
2375
- },
2376
- "type": "array"
2120
+ "enabled": {
2121
+ "type": "boolean"
2122
+ },
2123
+ "head_sampling_rate": {
2124
+ "type": "number",
2125
+ "description": "The sampling rate"
2126
+ },
2127
+ "invocation_logs": {
2128
+ "type": "boolean",
2129
+ "description": "Set to false to disable invocation logs"
2377
2130
  }
2378
2131
  },
2379
- "required": [
2380
- "bindings"
2381
- ],
2382
- "type": "object"
2383
- },
2384
- "logpush": {
2385
- "description": "Send Trace Events from this Worker to Workers Logpush.\n\nThis will not configure a corresponding Logpush job automatically.\n\nFor more information about Workers Logpush, see: https://blog.cloudflare.com/logpush-for-workers/",
2386
- "type": "boolean"
2387
- },
2388
- "main": {
2389
- "description": "The entrypoint/path to the JavaScript file that will be executed.",
2390
- "type": "string"
2132
+ "additionalProperties": false
2133
+ }
2134
+ },
2135
+ "additionalProperties": false
2136
+ },
2137
+ "Json": {
2138
+ "anyOf": [
2139
+ {
2140
+ "$ref": "#/definitions/Literal"
2391
2141
  },
2392
- "minify": {
2393
- "description": "Minify the script before uploading.",
2394
- "type": "boolean"
2142
+ {
2143
+ "type": "object",
2144
+ "additionalProperties": {
2145
+ "$ref": "#/definitions/Json"
2146
+ }
2395
2147
  },
2396
- "mtls_certificates": {
2397
- "default": "`[]`",
2398
- "description": "Specifies a list of mTLS certificates that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2148
+ {
2149
+ "type": "array",
2399
2150
  "items": {
2400
- "additionalProperties": false,
2401
- "properties": {
2402
- "binding": {
2403
- "description": "The binding name used to refer to the certificate in the Worker",
2404
- "type": "string"
2405
- },
2406
- "certificate_id": {
2407
- "description": "The uuid of the uploaded mTLS certificate",
2408
- "type": "string"
2409
- }
2410
- },
2411
- "required": [
2412
- "binding",
2413
- "certificate_id"
2414
- ],
2415
- "type": "object"
2151
+ "$ref": "#/definitions/Json"
2152
+ }
2153
+ }
2154
+ ]
2155
+ },
2156
+ "Literal": {
2157
+ "$ref": "#/definitions/TypeOf%3CZodUnion%3C%5Bdef-class-1315922706-6501-8772-1315922706-0-54395%2Cdef-class-1315922706-9299-10989-1315922706-0-54395%2Cdef-class-1315922706-12937-13365-1315922706-0-54395%2Cdef-class-1315922706-15083-15273-1315922706-0-54395%5D%3E%3E"
2158
+ },
2159
+ "TypeOf<ZodUnion<[def-class-1315922706-6501-8772-1315922706-0-54395,def-class-1315922706-9299-10989-1315922706-0-54395,def-class-1315922706-12937-13365-1315922706-0-54395,def-class-1315922706-15083-15273-1315922706-0-54395]>>": {
2160
+ "type": [
2161
+ "string",
2162
+ "number",
2163
+ "boolean",
2164
+ "null"
2165
+ ]
2166
+ },
2167
+ "DurableObjectBindings": {
2168
+ "type": "array",
2169
+ "items": {
2170
+ "type": "object",
2171
+ "properties": {
2172
+ "name": {
2173
+ "type": "string",
2174
+ "description": "The name of the binding used to refer to the Durable Object"
2416
2175
  },
2417
- "type": "array"
2418
- },
2419
- "name": {
2420
- "description": "The name of your Worker. Alphanumeric + dashes only.",
2421
- "type": "string"
2176
+ "class_name": {
2177
+ "type": "string",
2178
+ "description": "The exported class name of the Durable Object"
2179
+ },
2180
+ "script_name": {
2181
+ "type": "string",
2182
+ "description": "The script where the Durable Object is defined (if it's external to this Worker)"
2183
+ },
2184
+ "environment": {
2185
+ "type": "string",
2186
+ "description": "The service environment of the script_name to bind to"
2187
+ }
2422
2188
  },
2423
- "no_bundle": {
2424
- "description": "Skip internal build steps and directly deploy script",
2425
- "type": "boolean"
2189
+ "required": [
2190
+ "name",
2191
+ "class_name"
2192
+ ],
2193
+ "additionalProperties": false
2194
+ }
2195
+ },
2196
+ "WorkflowBinding": {
2197
+ "type": "object",
2198
+ "properties": {
2199
+ "binding": {
2200
+ "type": "string",
2201
+ "description": "The name of the binding used to refer to the Workflow"
2426
2202
  },
2427
- "node_compat": {
2428
- "description": "Add polyfills for node builtin modules and globals",
2429
- "type": "boolean"
2203
+ "name": {
2204
+ "type": "string",
2205
+ "description": "The name of the Workflow"
2430
2206
  },
2431
- "placement": {
2432
- "additionalProperties": false,
2433
- "description": "Specify how the Worker should be located to minimize round-trip time.\n\nMore details: https://developers.cloudflare.com/workers/platform/smart-placement/",
2434
- "properties": {
2435
- "mode": {
2436
- "enum": [
2437
- "off",
2438
- "smart"
2439
- ],
2440
- "type": "string"
2441
- }
2442
- },
2443
- "required": [
2444
- "mode"
2445
- ],
2446
- "type": "object"
2207
+ "class_name": {
2208
+ "type": "string",
2209
+ "description": "The exported class name of the Workflow"
2447
2210
  },
2448
- "preserve_file_names": {
2449
- "description": "Determines whether Wrangler will preserve bundled file names. Defaults to false. If left unset, files will be named using the pattern ${fileHash}-${basename}, for example, `34de60b44167af5c5a709e62a4e20c4f18c9e3b6-favicon.ico`.",
2450
- "type": "boolean"
2211
+ "script_name": {
2212
+ "type": "string",
2213
+ "description": "The script where the Workflow is defined (if it's external to this Worker)"
2451
2214
  },
2452
- "queues": {
2453
- "additionalProperties": false,
2454
- "default": "`{consumers:[],producers:[]}`",
2455
- "description": "Specifies Queues that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2456
- "properties": {
2457
- "consumers": {
2458
- "description": "Consumer configuration",
2459
- "items": {
2460
- "additionalProperties": false,
2461
- "properties": {
2462
- "dead_letter_queue": {
2463
- "description": "The queue to send messages that failed to be consumed.",
2464
- "type": "string"
2465
- },
2466
- "max_batch_size": {
2467
- "description": "The maximum number of messages per batch",
2468
- "type": "number"
2469
- },
2470
- "max_batch_timeout": {
2471
- "description": "The maximum number of seconds to wait to fill a batch with messages.",
2472
- "type": "number"
2473
- },
2474
- "max_concurrency": {
2475
- "description": "The maximum number of concurrent consumer Worker invocations. Leaving this unset will allow your consumer to scale to the maximum concurrency needed to keep up with the message backlog.",
2476
- "type": [
2477
- "number",
2478
- "null"
2479
- ]
2480
- },
2481
- "max_retries": {
2482
- "description": "The maximum number of retries for each message.",
2483
- "type": "number"
2484
- },
2485
- "queue": {
2486
- "description": "The name of the queue from which this consumer should consume.",
2487
- "type": "string"
2488
- },
2489
- "retry_delay": {
2490
- "description": "The number of seconds to wait before retrying a message",
2491
- "type": "number"
2492
- },
2493
- "type": {
2494
- "description": "The consumer type, e.g., worker, http-pull, r2-bucket, etc. Default is worker.",
2495
- "type": "string"
2496
- },
2497
- "visibility_timeout_ms": {
2498
- "description": "The number of milliseconds to wait for pulled messages to become visible again",
2499
- "type": "number"
2500
- }
2501
- },
2502
- "required": [
2503
- "queue"
2504
- ],
2505
- "type": "object"
2506
- },
2507
- "type": "array"
2508
- },
2509
- "producers": {
2510
- "description": "Producer bindings",
2511
- "items": {
2512
- "additionalProperties": false,
2513
- "properties": {
2514
- "binding": {
2515
- "description": "The binding name used to refer to the Queue in the Worker.",
2516
- "type": "string"
2517
- },
2518
- "delivery_delay": {
2519
- "description": "The number of seconds to wait before delivering a message",
2520
- "type": "number"
2521
- },
2522
- "queue": {
2523
- "description": "The name of this Queue.",
2524
- "type": "string"
2525
- }
2526
- },
2527
- "required": [
2528
- "binding",
2529
- "queue"
2530
- ],
2531
- "type": "object"
2532
- },
2533
- "type": "array"
2534
- }
2535
- },
2536
- "type": "object"
2215
+ "remote": {
2216
+ "type": "boolean",
2217
+ "description": "Whether the Workflow should be remote or not (only available under `--x-mixed-mode`)"
2218
+ }
2219
+ },
2220
+ "required": [
2221
+ "binding",
2222
+ "name",
2223
+ "class_name"
2224
+ ],
2225
+ "additionalProperties": false
2226
+ },
2227
+ "CloudchamberConfig": {
2228
+ "type": "object",
2229
+ "properties": {
2230
+ "image": {
2231
+ "type": "string"
2537
2232
  },
2538
- "r2_buckets": {
2539
- "default": "`[]`",
2540
- "description": "Specifies R2 buckets that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2541
- "items": {
2542
- "additionalProperties": false,
2543
- "properties": {
2544
- "binding": {
2545
- "description": "The binding name used to refer to the R2 bucket in the Worker.",
2546
- "type": "string"
2547
- },
2548
- "bucket_name": {
2549
- "description": "The name of this R2 bucket at the edge.",
2550
- "type": "string"
2551
- },
2552
- "jurisdiction": {
2553
- "description": "The jurisdiction that the bucket exists in. Default if not present.",
2554
- "type": "string"
2555
- },
2556
- "preview_bucket_name": {
2557
- "description": "The preview name of this R2 bucket at the edge.",
2558
- "type": "string"
2559
- }
2560
- },
2561
- "required": [
2562
- "binding",
2563
- "bucket_name"
2564
- ],
2565
- "type": "object"
2566
- },
2567
- "type": "array"
2233
+ "location": {
2234
+ "type": "string"
2568
2235
  },
2569
- "route": {
2570
- "$ref": "#/definitions/Route",
2571
- "description": "A route that your Worker should be published to. Literally the same as routes, but only one. Only one of `routes` or `route` is required.\n\nOnly required when workers_dev is false, and there's no scheduled Worker"
2236
+ "vcpu": {
2237
+ "type": "number"
2572
2238
  },
2573
- "routes": {
2574
- "description": "A list of routes that your Worker should be published to. Only one of `routes` or `route` is required.\n\nOnly required when workers_dev is false, and there's no scheduled Worker (see `triggers`)",
2575
- "items": {
2576
- "$ref": "#/definitions/Route"
2577
- },
2578
- "type": "array"
2239
+ "memory": {
2240
+ "type": "string"
2579
2241
  },
2580
- "rules": {
2581
- "description": "An ordered list of rules that define which modules to import, and what type to import them as. You will need to specify rules to use Text, Data, and CompiledWasm modules, or when you wish to have a .js file be treated as an ESModule instead of CommonJS.",
2582
- "items": {
2583
- "$ref": "#/definitions/Rule"
2584
- },
2585
- "type": "array"
2242
+ "ipv4": {
2243
+ "type": "boolean"
2244
+ }
2245
+ },
2246
+ "additionalProperties": false,
2247
+ "description": "Configuration in wrangler for Cloudchamber"
2248
+ },
2249
+ "ContainerApp": {
2250
+ "type": "object",
2251
+ "properties": {
2252
+ "name": {
2253
+ "type": "string",
2254
+ "description": "Name of the application"
2586
2255
  },
2587
- "send_email": {
2588
- "default": "`[]`",
2589
- "description": "These specify bindings to send email from inside your Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2590
- "items": {
2591
- "additionalProperties": false,
2592
- "properties": {
2593
- "allowed_destination_addresses": {
2594
- "description": "If this binding should be restricted to a set of verified addresses",
2595
- "items": {
2596
- "type": "string"
2597
- },
2598
- "type": "array"
2599
- },
2600
- "destination_address": {
2601
- "description": "If this binding should be restricted to a specific verified address",
2602
- "type": "string"
2603
- },
2604
- "name": {
2605
- "description": "The binding name used to refer to the this binding",
2606
- "type": "string"
2607
- }
2608
- },
2609
- "required": [
2610
- "name"
2611
- ],
2612
- "type": "object"
2613
- },
2614
- "type": "array"
2256
+ "instances": {
2257
+ "type": "number",
2258
+ "description": "Number of application instances"
2615
2259
  },
2616
- "services": {
2617
- "default": "`[]`",
2618
- "description": "Specifies service bindings (Worker-to-Worker) that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2619
- "items": {
2620
- "additionalProperties": false,
2621
- "properties": {
2622
- "binding": {
2623
- "description": "The binding name used to refer to the bound service.",
2624
- "type": "string"
2625
- },
2626
- "entrypoint": {
2627
- "description": "Optionally, the entrypoint (named export) of the service to bind to.",
2628
- "type": "string"
2629
- },
2630
- "environment": {
2631
- "description": "The environment of the service (e.g. production, staging, etc).",
2632
- "type": "string"
2633
- },
2634
- "service": {
2635
- "description": "The name of the service.",
2636
- "type": "string"
2637
- }
2638
- },
2639
- "required": [
2640
- "binding",
2641
- "service"
2642
- ],
2643
- "type": "object"
2644
- },
2645
- "type": "array"
2260
+ "max_instances": {
2261
+ "type": "number",
2262
+ "description": "Number of maximum application instances. Only applicable to Durable Object container applications"
2646
2263
  },
2647
- "tail_consumers": {
2648
- "default": "`[]`",
2649
- "description": "Specifies a list of Tail Workers that are bound to this Worker environment\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2650
- "items": {
2651
- "$ref": "#/definitions/TailConsumer"
2652
- },
2653
- "type": "array"
2264
+ "image": {
2265
+ "type": "string",
2266
+ "description": "The path to a Dockerfile, or an image URI. Can be defined both here or by setting the `image` key in the `ContainerApp` configuration"
2654
2267
  },
2655
- "triggers": {
2656
- "additionalProperties": false,
2657
- "default": "`{crons:[]}`",
2658
- "description": "\"Cron\" definitions to trigger a Worker's \"scheduled\" function.\n\nLets you call Workers periodically, much like a cron job.\n\nMore details here https://developers.cloudflare.com/workers/platform/cron-triggers",
2659
- "properties": {
2660
- "crons": {
2661
- "items": {
2662
- "type": "string"
2663
- },
2664
- "type": "array"
2665
- }
2268
+ "image_build_context": {
2269
+ "type": "string",
2270
+ "description": "Build context of the application. By default it is the directory of `image`."
2271
+ },
2272
+ "image_vars": {
2273
+ "type": "object",
2274
+ "additionalProperties": {
2275
+ "type": "string"
2666
2276
  },
2667
- "required": [
2668
- "crons"
2669
- ],
2670
- "type": "object"
2277
+ "description": "Image variables to be passed along the image"
2671
2278
  },
2672
- "tsconfig": {
2673
- "description": "Path to a custom tsconfig",
2279
+ "class_name": {
2674
2280
  "type": "string"
2675
2281
  },
2676
- "unsafe": {
2677
- "additionalProperties": false,
2678
- "default": "`{}`",
2679
- "description": "\"Unsafe\" tables for features that aren't directly supported by wrangler.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2282
+ "scheduling_policy": {
2283
+ "type": "string",
2284
+ "enum": [
2285
+ "regional",
2286
+ "moon"
2287
+ ],
2288
+ "description": "The scheduling policy of the application, default is regional"
2289
+ },
2290
+ "configuration": {
2291
+ "type": "object",
2680
2292
  "properties": {
2681
- "bindings": {
2682
- "description": "A set of bindings that should be put into a Worker's upload metadata without changes. These can be used to implement bindings for features that haven't released and aren't supported directly by wrangler or miniflare.",
2293
+ "image": {
2294
+ "type": "string"
2295
+ },
2296
+ "labels": {
2297
+ "type": "array",
2683
2298
  "items": {
2684
- "additionalProperties": {},
2299
+ "type": "object",
2685
2300
  "properties": {
2686
2301
  "name": {
2687
2302
  "type": "string"
2688
2303
  },
2689
- "type": {
2304
+ "value": {
2690
2305
  "type": "string"
2691
2306
  }
2692
2307
  },
2693
2308
  "required": [
2694
2309
  "name",
2695
- "type"
2310
+ "value"
2696
2311
  ],
2697
- "type": "object"
2698
- },
2699
- "type": "array"
2312
+ "additionalProperties": false
2313
+ }
2700
2314
  },
2701
- "capnp": {
2702
- "anyOf": [
2703
- {
2704
- "additionalProperties": false,
2705
- "properties": {
2706
- "base_path": {
2707
- "type": "string"
2708
- },
2709
- "source_schemas": {
2710
- "items": {
2711
- "type": "string"
2712
- },
2713
- "type": "array"
2714
- }
2315
+ "secrets": {
2316
+ "type": "array",
2317
+ "items": {
2318
+ "type": "object",
2319
+ "properties": {
2320
+ "name": {
2321
+ "type": "string"
2715
2322
  },
2716
- "required": [
2717
- "base_path",
2718
- "source_schemas"
2719
- ],
2720
- "type": "object"
2721
- },
2722
- {
2723
- "additionalProperties": false,
2724
- "properties": {
2725
- "compiled_schema": {
2726
- "type": "string"
2727
- }
2323
+ "type": {
2324
+ "type": "string",
2325
+ "const": "env"
2728
2326
  },
2729
- "required": [
2730
- "compiled_schema"
2731
- ],
2732
- "type": "object"
2733
- }
2734
- ],
2735
- "description": "Used for internal capnp uploads for the Workers runtime"
2736
- },
2737
- "metadata": {
2738
- "additionalProperties": {},
2739
- "description": "Arbitrary key/value pairs that will be included in the uploaded metadata. Values specified here will always be applied to metadata last, so can add new or override existing fields.",
2740
- "type": "object"
2327
+ "secret": {
2328
+ "type": "string"
2329
+ }
2330
+ },
2331
+ "required": [
2332
+ "name",
2333
+ "type",
2334
+ "secret"
2335
+ ],
2336
+ "additionalProperties": false
2337
+ }
2741
2338
  }
2742
2339
  },
2743
- "type": "object"
2744
- },
2745
- "upload_source_maps": {
2746
- "description": "Include source maps when uploading this worker.",
2747
- "type": "boolean"
2748
- },
2749
- "usage_model": {
2750
- "description": "Specifies the Usage Model for your Worker. There are two options - [bundled](https://developers.cloudflare.com/workers/platform/limits#bundled-usage-model) and [unbound](https://developers.cloudflare.com/workers/platform/limits#unbound-usage-model). For newly created Workers, if the Usage Model is omitted it will be set to the [default Usage Model set on the account](https://dash.cloudflare.com/?account=workers/default-usage-model). For existing Workers, if the Usage Model is omitted, it will be set to the Usage Model configured in the dashboard for that Worker.",
2751
- "enum": [
2752
- "bundled",
2753
- "unbound"
2340
+ "required": [
2341
+ "image"
2754
2342
  ],
2755
- "type": "string"
2343
+ "additionalProperties": false
2756
2344
  },
2757
- "vars": {
2758
- "additionalProperties": {
2759
- "anyOf": [
2760
- {
2345
+ "constraints": {
2346
+ "type": "object",
2347
+ "properties": {
2348
+ "regions": {
2349
+ "type": "array",
2350
+ "items": {
2761
2351
  "type": "string"
2762
- },
2763
- {
2764
- "$ref": "#/definitions/Json"
2765
2352
  }
2766
- ]
2767
- },
2768
- "default": "`{}`",
2769
- "description": "A map of environment variables to set when deploying your Worker.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2770
- "type": "object"
2771
- },
2772
- "vectorize": {
2773
- "default": "`[]`",
2774
- "description": "Specifies Vectorize indexes that are bound to this Worker environment.\n\nNOTE: This field is not automatically inherited from the top level environment, and so must be specified in every named environment.",
2775
- "items": {
2776
- "additionalProperties": false,
2777
- "properties": {
2778
- "binding": {
2779
- "description": "The binding name used to refer to the Vectorize index in the Worker.",
2780
- "type": "string"
2781
- },
2782
- "index_name": {
2783
- "description": "The name of the index.",
2353
+ },
2354
+ "cities": {
2355
+ "type": "array",
2356
+ "items": {
2784
2357
  "type": "string"
2785
2358
  }
2786
2359
  },
2787
- "required": [
2788
- "binding",
2789
- "index_name"
2790
- ],
2791
- "type": "object"
2360
+ "tier": {
2361
+ "type": "number"
2362
+ }
2792
2363
  },
2793
- "type": "array"
2794
- },
2795
- "version_metadata": {
2796
2364
  "additionalProperties": false,
2797
- "description": "Binding to the Worker Version's metadata",
2365
+ "description": "Scheduling constraints"
2366
+ },
2367
+ "durable_objects": {
2368
+ "type": "object",
2798
2369
  "properties": {
2799
- "binding": {
2370
+ "namespace_id": {
2800
2371
  "type": "string"
2801
2372
  }
2802
2373
  },
2803
2374
  "required": [
2804
- "binding"
2375
+ "namespace_id"
2805
2376
  ],
2806
- "type": "object"
2807
- },
2808
- "workers_dev": {
2809
- "default": "`true` (This is a breaking change from Wrangler v1)",
2810
- "description": "Whether we use <name>.<subdomain>.workers.dev to test and deploy your Worker.\n\n// Carmen according to our tests the default is undefined",
2811
- "type": "boolean"
2812
- },
2813
- "zone_id": {
2814
- "description": "TODO: remove this as it has been deprecated.\n\nThis is just here for now because the `route` commands use it. So we need to include it in this type so it is available.",
2815
- "type": "string"
2816
- }
2817
- },
2818
- "type": "object"
2819
- },
2820
- "Route": {
2821
- "anyOf": [
2822
- {
2823
- "$ref": "#/definitions/SimpleRoute"
2824
- },
2825
- {
2826
- "$ref": "#/definitions/ZoneIdRoute"
2827
- },
2828
- {
2829
- "$ref": "#/definitions/ZoneNameRoute"
2830
- },
2831
- {
2832
- "$ref": "#/definitions/CustomDomainRoute"
2833
- }
2834
- ]
2835
- },
2836
- "Rule": {
2837
- "additionalProperties": false,
2838
- "description": "A bundling resolver rule, defining the modules type for paths that match the specified globs.",
2839
- "properties": {
2840
- "fallthrough": {
2841
- "type": "boolean"
2377
+ "additionalProperties": false
2842
2378
  },
2843
- "globs": {
2844
- "items": {
2845
- "type": "string"
2846
- },
2847
- "type": "array"
2379
+ "rollout_step_percentage": {
2380
+ "type": "number",
2381
+ "description": "How a rollout should be done, defining the size of it"
2848
2382
  },
2849
- "type": {
2850
- "$ref": "#/definitions/ConfigModuleRuleType"
2383
+ "rollout_kind": {
2384
+ "type": "string",
2385
+ "enum": [
2386
+ "full_auto",
2387
+ "none",
2388
+ "full_manual"
2389
+ ],
2390
+ "description": "How a rollout should be created. It supports the following modes: - full_auto: The container application will be rolled out fully automatically. - none: The container application won't have a roll out or update. - manual: The container application will be rollout fully by manually actioning progress steps."
2851
2391
  }
2852
2392
  },
2853
2393
  "required": [
2854
- "type",
2855
- "globs"
2394
+ "name",
2395
+ "class_name",
2396
+ "configuration"
2856
2397
  ],
2857
- "type": "object"
2858
- },
2859
- "SimpleRoute": {
2860
- "type": "string"
2398
+ "additionalProperties": false,
2399
+ "description": "Configuration for a container application"
2861
2400
  },
2862
2401
  "TailConsumer": {
2863
- "additionalProperties": false,
2402
+ "type": "object",
2864
2403
  "properties": {
2865
- "environment": {
2866
- "description": "(Optional) The environt of the service.",
2867
- "type": "string"
2868
- },
2869
2404
  "service": {
2870
- "description": "The name of the service tail events will be forwarded to.",
2871
- "type": "string"
2405
+ "type": "string",
2406
+ "description": "The name of the service tail events will be forwarded to."
2407
+ },
2408
+ "environment": {
2409
+ "type": "string",
2410
+ "description": "(Optional) The environment of the service."
2872
2411
  }
2873
2412
  },
2874
2413
  "required": [
2875
2414
  "service"
2876
2415
  ],
2877
- "type": "object"
2878
- },
2879
- "TypeOf<ZodUnion<[def-class-1315922706-6501-8772-1315922706-0-54395,def-class-1315922706-9299-10989-1315922706-0-54395,def-class-1315922706-12937-13365-1315922706-0-54395,def-class-1315922706-15083-15273-1315922706-0-54395]>>": {
2880
- "type": [
2881
- "string",
2882
- "number",
2883
- "boolean",
2884
- "null"
2885
- ]
2886
- },
2887
- "UserLimits": {
2888
- "additionalProperties": false,
2889
- "properties": {
2890
- "cpu_ms": {
2891
- "description": "Maximum allowed CPU time for a Worker's invocation in milliseconds",
2892
- "type": "number"
2893
- }
2894
- },
2895
- "required": [
2896
- "cpu_ms"
2897
- ],
2898
- "type": "object"
2416
+ "additionalProperties": false
2899
2417
  },
2900
- "ZoneIdRoute": {
2901
- "additionalProperties": false,
2418
+ "DispatchNamespaceOutbound": {
2419
+ "type": "object",
2902
2420
  "properties": {
2903
- "custom_domain": {
2904
- "type": "boolean"
2421
+ "service": {
2422
+ "type": "string",
2423
+ "description": "Name of the service handling the outbound requests"
2905
2424
  },
2906
- "pattern": {
2907
- "type": "string"
2425
+ "environment": {
2426
+ "type": "string",
2427
+ "description": "(Optional) Name of the environment handling the outbound requests."
2908
2428
  },
2909
- "zone_id": {
2910
- "type": "string"
2429
+ "parameters": {
2430
+ "type": "array",
2431
+ "items": {
2432
+ "type": "string"
2433
+ },
2434
+ "description": "(Optional) List of parameter names, for sending context from your dispatch Worker to the outbound handler"
2911
2435
  }
2912
2436
  },
2913
2437
  "required": [
2914
- "pattern",
2915
- "zone_id"
2438
+ "service"
2916
2439
  ],
2917
- "type": "object"
2440
+ "additionalProperties": false
2918
2441
  },
2919
- "ZoneNameRoute": {
2920
- "additionalProperties": false,
2442
+ "RawDevConfig": {
2443
+ "type": "object",
2921
2444
  "properties": {
2922
- "custom_domain": {
2923
- "type": "boolean"
2445
+ "ip": {
2446
+ "type": "string",
2447
+ "description": "IP address for the local dev server to listen on,",
2448
+ "default": "localhost"
2924
2449
  },
2925
- "pattern": {
2926
- "type": "string"
2450
+ "port": {
2451
+ "type": "number",
2452
+ "description": "Port for the local dev server to listen on",
2453
+ "default": 8787
2927
2454
  },
2928
- "zone_name": {
2929
- "type": "string"
2455
+ "inspector_port": {
2456
+ "type": "number",
2457
+ "description": "Port for the local dev server's inspector to listen on",
2458
+ "default": 9229
2459
+ },
2460
+ "local_protocol": {
2461
+ "type": "string",
2462
+ "enum": [
2463
+ "http",
2464
+ "https"
2465
+ ],
2466
+ "description": "Protocol that local wrangler dev server listens to requests on.",
2467
+ "default": "http"
2468
+ },
2469
+ "upstream_protocol": {
2470
+ "type": "string",
2471
+ "enum": [
2472
+ "https",
2473
+ "http"
2474
+ ],
2475
+ "description": "Protocol that wrangler dev forwards requests on\n\nSetting this to `http` is not currently implemented for remote mode. See https://github.com/cloudflare/workers-sdk/issues/583",
2476
+ "default": "https"
2477
+ },
2478
+ "host": {
2479
+ "type": "string",
2480
+ "description": "Host to forward requests to, defaults to the host of the first route of project"
2930
2481
  }
2931
2482
  },
2932
- "required": [
2933
- "pattern",
2934
- "zone_name"
2935
- ],
2936
- "type": "object"
2483
+ "additionalProperties": false
2937
2484
  }
2938
- }
2485
+ },
2486
+ "allowTrailingCommas": true
2939
2487
  }