wrangler 0.0.0-e57758f8 → 0.0.0-e5ae13ade

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/README.md +29 -37
  2. package/bin/wrangler.js +3 -37
  3. package/config-schema.json +1782 -2290
  4. package/package.json +62 -98
  5. package/templates/checked-fetch.js +1 -1
  6. package/templates/facade.d.ts +2 -2
  7. package/templates/gitignore +3 -0
  8. package/templates/init-tests/test-vitest-new-worker.ts +2 -2
  9. package/templates/middleware/loader-modules.ts +14 -13
  10. package/templates/middleware/middleware-patch-console-prefix.d.ts +3 -0
  11. package/templates/middleware/middleware-patch-console-prefix.ts +21 -0
  12. package/templates/middleware/middleware-scheduled.ts +15 -1
  13. package/templates/mixedMode/proxyServerWorker/index.ts +40 -0
  14. package/templates/mixedMode/proxyServerWorker/wrangler.jsonc +4 -0
  15. package/templates/pages-dev-pipeline.ts +3 -2
  16. package/templates/pages-template-plugin.ts +2 -2
  17. package/templates/pages-template-worker.ts +1 -1
  18. package/templates/startDevWorker/InspectorProxyWorker.ts +19 -1
  19. package/templates/startDevWorker/ProxyWorker.ts +30 -25
  20. package/templates/strip-cf-connecting-ip-header.js +13 -0
  21. package/templates/tsconfig.init.json +4 -87
  22. package/templates/tsconfig.json +8 -1
  23. package/templates/tsconfig.tsbuildinfo +1 -0
  24. package/wrangler-dist/InspectorProxyWorker.js +15 -8
  25. package/wrangler-dist/InspectorProxyWorker.js.map +1 -1
  26. package/wrangler-dist/ProxyWorker.js +28 -30
  27. package/wrangler-dist/ProxyWorker.js.map +1 -1
  28. package/wrangler-dist/cli.d.ts +3783 -911
  29. package/wrangler-dist/cli.js +168505 -199177
  30. package/wrangler-dist/cli.js.map +7 -0
  31. package/Cloudflare_CA.pem +0 -18
  32. package/templates/middleware/middleware-serve-static-assets.d.ts +0 -6
  33. package/templates/middleware/middleware-serve-static-assets.ts +0 -56
  34. package/wrangler-dist/wasm-sync.wasm +0 -0
@@ -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,133 @@
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
+ "define": {
244
+ "type": "object",
245
+ "additionalProperties": {
245
246
  "type": "string"
246
247
  },
247
- "type": "array"
248
+ "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.",
249
+ "default": {}
248
250
  },
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.",
251
+ "vars": {
252
+ "type": "object",
253
+ "additionalProperties": {
254
+ "anyOf": [
255
+ {
257
256
  "type": "string"
258
257
  },
259
- "project_id": {
260
- "description": "The id of the project.",
261
- "type": "string"
258
+ {
259
+ "$ref": "#/definitions/Json"
262
260
  }
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"
261
+ ]
348
262
  },
349
- "type": "array"
263
+ "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",
264
+ "default": {}
350
265
  },
351
266
  "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.",
267
+ "type": "object",
355
268
  "properties": {
356
269
  "bindings": {
357
270
  "$ref": "#/definitions/DurableObjectBindings"
@@ -360,417 +273,442 @@
360
273
  "required": [
361
274
  "bindings"
362
275
  ],
363
- "type": "object"
276
+ "additionalProperties": false,
277
+ "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",
278
+ "default": {
279
+ "bindings": []
280
+ }
364
281
  },
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"
282
+ "workflows": {
283
+ "type": "array",
284
+ "items": {
285
+ "$ref": "#/definitions/WorkflowBinding"
286
+ },
287
+ "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.",
288
+ "default": []
368
289
  },
369
- "first_party_worker": {
370
- "description": "Designates this Worker as an internal-only \"first-party\" Worker.",
371
- "type": "boolean"
290
+ "cloudchamber": {
291
+ "$ref": "#/definitions/CloudchamberConfig",
292
+ "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.",
293
+ "default": {}
372
294
  },
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.",
295
+ "containers": {
296
+ "type": "array",
297
+ "items": {
298
+ "$ref": "#/definitions/ContainerApp"
299
+ },
300
+ "description": "Container related configuration",
301
+ "default": []
302
+ },
303
+ "kv_namespaces": {
304
+ "type": "array",
376
305
  "items": {
377
- "additionalProperties": false,
306
+ "type": "object",
378
307
  "properties": {
379
308
  "binding": {
380
- "description": "The binding name used to refer to the project in the Worker.",
381
- "type": "string"
309
+ "type": "string",
310
+ "description": "The binding name used to refer to the KV Namespace"
382
311
  },
383
312
  "id": {
384
- "description": "The id of the database.",
385
- "type": "string"
313
+ "type": "string",
314
+ "description": "The ID of the KV namespace"
386
315
  },
387
- "localConnectionString": {
388
- "description": "The local database connection string for `wrangler dev`",
389
- "type": "string"
316
+ "preview_id": {
317
+ "type": "string",
318
+ "description": "The ID of the KV namespace used during `wrangler dev`"
319
+ },
320
+ "remote": {
321
+ "type": "boolean",
322
+ "description": "Whether the KV namespace should be remote or not (only available under `--x-mixed-mode`)"
390
323
  }
391
324
  },
392
325
  "required": [
393
- "binding",
394
- "id"
326
+ "binding"
395
327
  ],
396
- "type": "object"
328
+ "additionalProperties": false
397
329
  },
398
- "type": "array"
399
- },
400
- "jsx_factory": {
401
- "default": "`\"React.createElement\"`",
402
- "description": "The function to use to replace jsx syntax.",
403
- "type": "string"
330
+ "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",
331
+ "default": []
404
332
  },
405
- "jsx_fragment": {
406
- "default": "`\"React.Fragment\"`",
407
- "description": "The function to use to replace jsx fragment syntax.",
408
- "type": "string"
409
- },
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.",
333
+ "send_email": {
334
+ "type": "array",
413
335
  "items": {
414
- "additionalProperties": false,
336
+ "type": "object",
415
337
  "properties": {
416
- "binding": {
417
- "description": "The binding name used to refer to the KV Namespace",
418
- "type": "string"
338
+ "name": {
339
+ "type": "string",
340
+ "description": "The binding name used to refer to the this binding"
419
341
  },
420
- "id": {
421
- "description": "The ID of the KV namespace",
422
- "type": "string"
342
+ "destination_address": {
343
+ "type": "string",
344
+ "description": "If this binding should be restricted to a specific verified address"
423
345
  },
424
- "preview_id": {
425
- "description": "The ID of the KV namespace used during `wrangler dev`",
426
- "type": "string"
346
+ "allowed_destination_addresses": {
347
+ "type": "array",
348
+ "items": {
349
+ "type": "string"
350
+ },
351
+ "description": "If this binding should be restricted to a set of verified addresses"
427
352
  }
428
353
  },
429
354
  "required": [
430
- "binding",
431
- "id"
355
+ "name"
432
356
  ],
433
- "type": "object"
357
+ "additionalProperties": false
434
358
  },
435
- "type": "array"
436
- },
437
- "limits": {
438
- "$ref": "#/definitions/UserLimits",
439
- "description": "Specify limits for runtime behavior. Only supported for the \"standard\" Usage Model"
359
+ "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",
360
+ "default": []
440
361
  },
441
- "logfwdr": {
442
- "additionalProperties": false,
443
- "default": "`{bindings:[]}`",
444
- "description": "List of bindings that you will send to logfwdr",
362
+ "queues": {
363
+ "type": "object",
445
364
  "properties": {
446
- "bindings": {
365
+ "producers": {
366
+ "type": "array",
447
367
  "items": {
448
- "additionalProperties": false,
368
+ "type": "object",
449
369
  "properties": {
450
- "destination": {
451
- "description": "The destination for this logged message",
452
- "type": "string"
370
+ "binding": {
371
+ "type": "string",
372
+ "description": "The binding name used to refer to the Queue in the Worker."
453
373
  },
454
- "name": {
455
- "description": "The binding name used to refer to logfwdr",
456
- "type": "string"
374
+ "queue": {
375
+ "type": "string",
376
+ "description": "The name of this Queue."
377
+ },
378
+ "delivery_delay": {
379
+ "type": "number",
380
+ "description": "The number of seconds to wait before delivering a message"
381
+ },
382
+ "remote": {
383
+ "type": "boolean",
384
+ "description": "Whether the Queue producer should be remote or not (only available under `--x-mixed-mode`)"
457
385
  }
458
386
  },
459
387
  "required": [
460
- "name",
461
- "destination"
388
+ "binding",
389
+ "queue"
462
390
  ],
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"
391
+ "additionalProperties": false
494
392
  },
495
- "certificate_id": {
496
- "description": "The uuid of the uploaded mTLS certificate",
497
- "type": "string"
498
- }
393
+ "description": "Producer bindings"
499
394
  },
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
395
  "consumers": {
547
- "description": "Consumer configuration",
396
+ "type": "array",
548
397
  "items": {
549
- "additionalProperties": false,
398
+ "type": "object",
550
399
  "properties": {
551
- "dead_letter_queue": {
552
- "description": "The queue to send messages that failed to be consumed.",
553
- "type": "string"
400
+ "queue": {
401
+ "type": "string",
402
+ "description": "The name of the queue from which this consumer should consume."
403
+ },
404
+ "type": {
405
+ "type": "string",
406
+ "description": "The consumer type, e.g., worker, http-pull, r2-bucket, etc. Default is worker."
554
407
  },
555
408
  "max_batch_size": {
556
- "description": "The maximum number of messages per batch",
557
- "type": "number"
409
+ "type": "number",
410
+ "description": "The maximum number of messages per batch"
558
411
  },
559
412
  "max_batch_timeout": {
560
- "description": "The maximum number of seconds to wait to fill a batch with messages.",
561
- "type": "number"
413
+ "type": "number",
414
+ "description": "The maximum number of seconds to wait to fill a batch with messages."
415
+ },
416
+ "max_retries": {
417
+ "type": "number",
418
+ "description": "The maximum number of retries for each message."
419
+ },
420
+ "dead_letter_queue": {
421
+ "type": "string",
422
+ "description": "The queue to send messages that failed to be consumed."
562
423
  },
563
424
  "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
425
  "type": [
566
426
  "number",
567
427
  "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"
428
+ ],
429
+ "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
430
  },
586
431
  "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"
606
- },
607
- "delivery_delay": {
608
- "description": "The number of seconds to wait before delivering a message",
609
- "type": "number"
432
+ "type": "number",
433
+ "description": "The number of milliseconds to wait for pulled messages to become visible again"
610
434
  },
611
- "queue": {
612
- "description": "The name of this Queue.",
613
- "type": "string"
435
+ "retry_delay": {
436
+ "type": "number",
437
+ "description": "The number of seconds to wait before retrying a message"
614
438
  }
615
439
  },
616
440
  "required": [
617
- "binding",
618
441
  "queue"
619
442
  ],
620
- "type": "object"
443
+ "additionalProperties": false
621
444
  },
622
- "type": "array"
445
+ "description": "Consumer configuration"
623
446
  }
624
447
  },
625
- "type": "object"
448
+ "additionalProperties": false,
449
+ "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",
450
+ "default": {
451
+ "consumers": [],
452
+ "producers": []
453
+ }
626
454
  },
627
455
  "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.",
456
+ "type": "array",
630
457
  "items": {
631
- "additionalProperties": false,
458
+ "type": "object",
632
459
  "properties": {
633
460
  "binding": {
634
- "description": "The binding name used to refer to the R2 bucket in the Worker.",
635
- "type": "string"
461
+ "type": "string",
462
+ "description": "The binding name used to refer to the R2 bucket in the Worker."
636
463
  },
637
464
  "bucket_name": {
638
- "description": "The name of this R2 bucket at the edge.",
639
- "type": "string"
465
+ "type": "string",
466
+ "description": "The name of this R2 bucket at the edge."
467
+ },
468
+ "preview_bucket_name": {
469
+ "type": "string",
470
+ "description": "The preview name of this R2 bucket at the edge."
640
471
  },
641
472
  "jurisdiction": {
642
- "description": "The jurisdiction that the bucket exists in. Default if not present.",
643
- "type": "string"
473
+ "type": "string",
474
+ "description": "The jurisdiction that the bucket exists in. Default if not present."
644
475
  },
645
- "preview_bucket_name": {
646
- "description": "The preview name of this R2 bucket at the edge.",
647
- "type": "string"
476
+ "remote": {
477
+ "type": "boolean",
478
+ "description": "Whether the R2 bucket should be remote or not (only available under `--x-mixed-mode`)"
648
479
  }
649
480
  },
650
481
  "required": [
651
- "binding",
652
- "bucket_name"
482
+ "binding"
653
483
  ],
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"
484
+ "additionalProperties": false
666
485
  },
667
- "type": "array"
486
+ "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",
487
+ "default": []
668
488
  },
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.",
671
- "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.",
489
+ "d1_databases": {
490
+ "type": "array",
679
491
  "items": {
680
- "additionalProperties": false,
492
+ "type": "object",
681
493
  "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"
494
+ "binding": {
495
+ "type": "string",
496
+ "description": "The binding name used to refer to the D1 database in the Worker."
688
497
  },
689
- "destination_address": {
690
- "description": "If this binding should be restricted to a specific verified address",
691
- "type": "string"
498
+ "database_name": {
499
+ "type": "string",
500
+ "description": "The name of this D1 database."
692
501
  },
693
- "name": {
694
- "description": "The binding name used to refer to the this binding",
695
- "type": "string"
502
+ "database_id": {
503
+ "type": "string",
504
+ "description": "The UUID of this D1 database (not required)."
505
+ },
506
+ "preview_database_id": {
507
+ "type": "string",
508
+ "description": "The UUID of this D1 database for Wrangler Dev (if specified)."
509
+ },
510
+ "migrations_table": {
511
+ "type": "string",
512
+ "description": "The name of the migrations table for this D1 database (defaults to 'd1_migrations')."
513
+ },
514
+ "migrations_dir": {
515
+ "type": "string",
516
+ "description": "The path to the directory of migrations for this D1 database (defaults to './migrations')."
517
+ },
518
+ "database_internal_env": {
519
+ "type": "string",
520
+ "description": "Internal use only."
521
+ },
522
+ "remote": {
523
+ "type": "boolean",
524
+ "description": "Whether the D1 database should be remote or not (only available under `--x-mixed-mode`)"
696
525
  }
697
526
  },
698
527
  "required": [
699
- "name"
528
+ "binding"
529
+ ],
530
+ "additionalProperties": false
531
+ },
532
+ "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",
533
+ "default": []
534
+ },
535
+ "vectorize": {
536
+ "type": "array",
537
+ "items": {
538
+ "type": "object",
539
+ "properties": {
540
+ "binding": {
541
+ "type": "string",
542
+ "description": "The binding name used to refer to the Vectorize index in the Worker."
543
+ },
544
+ "index_name": {
545
+ "type": "string",
546
+ "description": "The name of the index."
547
+ }
548
+ },
549
+ "required": [
550
+ "binding",
551
+ "index_name"
552
+ ],
553
+ "additionalProperties": false
554
+ },
555
+ "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",
556
+ "default": []
557
+ },
558
+ "hyperdrive": {
559
+ "type": "array",
560
+ "items": {
561
+ "type": "object",
562
+ "properties": {
563
+ "binding": {
564
+ "type": "string",
565
+ "description": "The binding name used to refer to the project in the Worker."
566
+ },
567
+ "id": {
568
+ "type": "string",
569
+ "description": "The id of the database."
570
+ },
571
+ "localConnectionString": {
572
+ "type": "string",
573
+ "description": "The local database connection string for `wrangler dev`"
574
+ }
575
+ },
576
+ "required": [
577
+ "binding",
578
+ "id"
700
579
  ],
701
- "type": "object"
580
+ "additionalProperties": false
702
581
  },
703
- "type": "array"
582
+ "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",
583
+ "default": []
704
584
  },
705
585
  "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.",
586
+ "type": "array",
708
587
  "items": {
709
- "additionalProperties": false,
588
+ "type": "object",
710
589
  "properties": {
711
590
  "binding": {
712
- "description": "The binding name used to refer to the bound service.",
713
- "type": "string"
591
+ "type": "string",
592
+ "description": "The binding name used to refer to the bound service."
714
593
  },
715
- "entrypoint": {
716
- "description": "Optionally, the entrypoint (named export) of the service to bind to.",
717
- "type": "string"
594
+ "service": {
595
+ "type": "string",
596
+ "description": "The name of the service."
718
597
  },
719
598
  "environment": {
720
- "description": "The environment of the service (e.g. production, staging, etc).",
721
- "type": "string"
599
+ "type": "string",
600
+ "description": "The environment of the service (e.g. production, staging, etc)."
722
601
  },
723
- "service": {
724
- "description": "The name of the service.",
725
- "type": "string"
602
+ "entrypoint": {
603
+ "type": "string",
604
+ "description": "Optionally, the entrypoint (named export) of the service to bind to."
605
+ },
606
+ "props": {
607
+ "type": "object",
608
+ "additionalProperties": {},
609
+ "description": "Optional properties that will be made available to the service via ctx.props."
610
+ },
611
+ "remote": {
612
+ "type": "boolean",
613
+ "description": "Whether the service binding should be remote or not (only available under `--x-mixed-mode`)"
726
614
  }
727
615
  },
728
616
  "required": [
729
617
  "binding",
730
618
  "service"
731
619
  ],
732
- "type": "object"
620
+ "additionalProperties": false
733
621
  },
734
- "type": "array"
622
+ "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",
623
+ "default": []
735
624
  },
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.",
625
+ "analytics_engine_datasets": {
626
+ "type": "array",
739
627
  "items": {
740
- "$ref": "#/definitions/TailConsumer"
628
+ "type": "object",
629
+ "properties": {
630
+ "binding": {
631
+ "type": "string",
632
+ "description": "The binding name used to refer to the dataset in the Worker."
633
+ },
634
+ "dataset": {
635
+ "type": "string",
636
+ "description": "The name of this dataset to write to."
637
+ }
638
+ },
639
+ "required": [
640
+ "binding"
641
+ ],
642
+ "additionalProperties": false
741
643
  },
742
- "type": "array"
644
+ "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",
645
+ "default": []
743
646
  },
744
- "triggers": {
647
+ "browser": {
648
+ "type": "object",
649
+ "properties": {
650
+ "binding": {
651
+ "type": "string"
652
+ }
653
+ },
654
+ "required": [
655
+ "binding"
656
+ ],
745
657
  "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",
658
+ "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",
659
+ "default": {}
660
+ },
661
+ "ai": {
662
+ "type": "object",
748
663
  "properties": {
749
- "crons": {
750
- "items": {
751
- "type": "string"
752
- },
753
- "type": "array"
664
+ "binding": {
665
+ "type": "string"
666
+ },
667
+ "staging": {
668
+ "type": "boolean"
754
669
  }
755
670
  },
756
671
  "required": [
757
- "crons"
672
+ "binding"
758
673
  ],
759
- "type": "object"
674
+ "additionalProperties": false,
675
+ "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",
676
+ "default": {}
760
677
  },
761
- "tsconfig": {
762
- "description": "Path to a custom tsconfig",
763
- "type": "string"
678
+ "images": {
679
+ "type": "object",
680
+ "properties": {
681
+ "binding": {
682
+ "type": "string"
683
+ }
684
+ },
685
+ "required": [
686
+ "binding"
687
+ ],
688
+ "additionalProperties": false,
689
+ "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",
690
+ "default": {}
764
691
  },
765
- "unsafe": {
692
+ "version_metadata": {
693
+ "type": "object",
694
+ "properties": {
695
+ "binding": {
696
+ "type": "string"
697
+ }
698
+ },
699
+ "required": [
700
+ "binding"
701
+ ],
766
702
  "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.",
703
+ "description": "Binding to the Worker Version's metadata"
704
+ },
705
+ "unsafe": {
706
+ "type": "object",
769
707
  "properties": {
770
708
  "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.",
709
+ "type": "array",
772
710
  "items": {
773
- "additionalProperties": {},
711
+ "type": "object",
774
712
  "properties": {
775
713
  "name": {
776
714
  "type": "string"
@@ -783,33 +721,38 @@
783
721
  "name",
784
722
  "type"
785
723
  ],
786
- "type": "object"
724
+ "additionalProperties": {}
787
725
  },
788
- "type": "array"
726
+ "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."
727
+ },
728
+ "metadata": {
729
+ "type": "object",
730
+ "additionalProperties": {},
731
+ "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
732
  },
790
733
  "capnp": {
791
734
  "anyOf": [
792
735
  {
793
- "additionalProperties": false,
736
+ "type": "object",
794
737
  "properties": {
795
738
  "base_path": {
796
739
  "type": "string"
797
740
  },
798
741
  "source_schemas": {
742
+ "type": "array",
799
743
  "items": {
800
744
  "type": "string"
801
- },
802
- "type": "array"
745
+ }
803
746
  }
804
747
  },
805
748
  "required": [
806
749
  "base_path",
807
750
  "source_schemas"
808
751
  ],
809
- "type": "object"
752
+ "additionalProperties": false
810
753
  },
811
754
  {
812
- "additionalProperties": false,
755
+ "type": "object",
813
756
  "properties": {
814
757
  "compiled_schema": {
815
758
  "type": "string"
@@ -818,261 +761,328 @@
818
761
  "required": [
819
762
  "compiled_schema"
820
763
  ],
821
- "type": "object"
764
+ "additionalProperties": false
822
765
  }
823
766
  ],
824
767
  "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
768
  }
831
769
  },
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"
770
+ "additionalProperties": false,
771
+ "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.",
772
+ "default": {}
860
773
  },
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.",
774
+ "mtls_certificates": {
775
+ "type": "array",
864
776
  "items": {
865
- "additionalProperties": false,
777
+ "type": "object",
866
778
  "properties": {
867
779
  "binding": {
868
- "description": "The binding name used to refer to the Vectorize index in the Worker.",
869
- "type": "string"
780
+ "type": "string",
781
+ "description": "The binding name used to refer to the certificate in the Worker"
870
782
  },
871
- "index_name": {
872
- "description": "The name of the index.",
873
- "type": "string"
783
+ "certificate_id": {
784
+ "type": "string",
785
+ "description": "The uuid of the uploaded mTLS certificate"
874
786
  }
875
787
  },
876
788
  "required": [
877
789
  "binding",
878
- "index_name"
790
+ "certificate_id"
879
791
  ],
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
- }
891
- },
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"
938
- },
939
- {
940
- "additionalProperties": {
941
- "$ref": "#/definitions/Json"
792
+ "additionalProperties": false
942
793
  },
943
- "type": "object"
794
+ "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",
795
+ "default": []
944
796
  },
945
- {
797
+ "tail_consumers": {
798
+ "type": "array",
946
799
  "items": {
947
- "$ref": "#/definitions/Json"
800
+ "$ref": "#/definitions/TailConsumer"
948
801
  },
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"
802
+ "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.",
803
+ "default": []
965
804
  },
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"
805
+ "dispatch_namespaces": {
806
+ "type": "array",
807
+ "items": {
808
+ "type": "object",
809
+ "properties": {
810
+ "binding": {
811
+ "type": "string",
812
+ "description": "The binding name used to refer to the bound service."
813
+ },
814
+ "namespace": {
815
+ "type": "string",
816
+ "description": "The namespace to bind to."
817
+ },
818
+ "outbound": {
819
+ "$ref": "#/definitions/DispatchNamespaceOutbound",
820
+ "description": "Details about the outbound Worker which will handle outbound requests from your namespace"
821
+ }
973
822
  },
974
- "staging": {
975
- "type": "boolean"
976
- }
823
+ "required": [
824
+ "binding",
825
+ "namespace"
826
+ ],
827
+ "additionalProperties": false
977
828
  },
978
- "required": [
979
- "binding"
980
- ],
981
- "type": "object"
829
+ "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",
830
+ "default": []
982
831
  },
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.",
832
+ "pipelines": {
833
+ "type": "array",
986
834
  "items": {
987
- "additionalProperties": false,
835
+ "type": "object",
988
836
  "properties": {
989
837
  "binding": {
990
- "description": "The binding name used to refer to the dataset in the Worker.",
991
- "type": "string"
838
+ "type": "string",
839
+ "description": "The binding name used to refer to the bound service."
992
840
  },
993
- "dataset": {
994
- "description": "The name of this dataset to write to.",
995
- "type": "string"
841
+ "pipeline": {
842
+ "type": "string",
843
+ "description": "Name of the Pipeline to bind"
996
844
  }
997
845
  },
998
846
  "required": [
999
- "binding"
847
+ "binding",
848
+ "pipeline"
1000
849
  ],
1001
- "type": "object"
850
+ "additionalProperties": false
1002
851
  },
1003
- "type": "array"
852
+ "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.",
853
+ "default": []
1004
854
  },
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.",
1008
- "properties": {
1009
- "browser_TTL": {
1010
- "type": "number"
1011
- },
1012
- "bucket": {
1013
- "type": "string"
1014
- },
1015
- "exclude": {
1016
- "items": {
1017
- "type": "string"
855
+ "secrets_store_secrets": {
856
+ "type": "array",
857
+ "items": {
858
+ "type": "object",
859
+ "properties": {
860
+ "binding": {
861
+ "type": "string",
862
+ "description": "The binding name used to refer to the bound service."
1018
863
  },
1019
- "type": "array"
864
+ "store_id": {
865
+ "type": "string",
866
+ "description": "Id of the secret store"
867
+ },
868
+ "secret_name": {
869
+ "type": "string",
870
+ "description": "Name of the secret"
871
+ }
872
+ },
873
+ "required": [
874
+ "binding",
875
+ "store_id",
876
+ "secret_name"
877
+ ],
878
+ "additionalProperties": false
879
+ },
880
+ "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.",
881
+ "default": []
882
+ },
883
+ "pages_build_output_dir": {
884
+ "type": "string",
885
+ "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."
886
+ },
887
+ "legacy_env": {
888
+ "type": "boolean",
889
+ "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."
890
+ },
891
+ "send_metrics": {
892
+ "type": "boolean",
893
+ "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."
894
+ },
895
+ "dev": {
896
+ "$ref": "#/definitions/RawDevConfig",
897
+ "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"
898
+ },
899
+ "site": {
900
+ "type": "object",
901
+ "properties": {
902
+ "bucket": {
903
+ "type": "string",
904
+ "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."
905
+ },
906
+ "entry-point": {
907
+ "type": "string",
908
+ "description": "The location of your Worker script.",
909
+ "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."
1020
910
  },
1021
911
  "include": {
912
+ "type": "array",
1022
913
  "items": {
1023
914
  "type": "string"
1024
915
  },
1025
- "type": "array"
916
+ "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\"]",
917
+ "default": []
1026
918
  },
1027
- "serve_single_page_app": {
1028
- "type": "boolean"
919
+ "exclude": {
920
+ "type": "array",
921
+ "items": {
922
+ "type": "string"
923
+ },
924
+ "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\"]",
925
+ "default": []
1029
926
  }
1030
927
  },
1031
928
  "required": [
1032
- "bucket",
1033
- "include",
1034
- "exclude",
1035
- "serve_single_page_app"
929
+ "bucket"
1036
930
  ],
1037
- "type": "object"
931
+ "additionalProperties": false,
932
+ "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"
933
+ },
934
+ "wasm_modules": {
935
+ "type": "object",
936
+ "additionalProperties": {
937
+ "type": "string"
938
+ },
939
+ "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."
940
+ },
941
+ "text_blobs": {
942
+ "type": "object",
943
+ "additionalProperties": {
944
+ "type": "string"
945
+ },
946
+ "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."
947
+ },
948
+ "data_blobs": {
949
+ "type": "object",
950
+ "additionalProperties": {
951
+ "type": "string"
952
+ },
953
+ "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."
954
+ },
955
+ "alias": {
956
+ "type": "object",
957
+ "additionalProperties": {
958
+ "type": "string"
959
+ },
960
+ "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"
961
+ },
962
+ "keep_vars": {
963
+ "type": "boolean",
964
+ "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.",
965
+ "default": false
966
+ }
967
+ }
968
+ },
969
+ "RawEnvironment": {
970
+ "type": "object",
971
+ "properties": {
972
+ "name": {
973
+ "type": "string",
974
+ "description": "The name of your Worker. Alphanumeric + dashes only."
975
+ },
976
+ "account_id": {
977
+ "type": "string",
978
+ "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."
979
+ },
980
+ "compatibility_date": {
981
+ "type": "string",
982
+ "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"
983
+ },
984
+ "compatibility_flags": {
985
+ "type": "array",
986
+ "items": {
987
+ "type": "string"
988
+ },
989
+ "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/",
990
+ "default": []
991
+ },
992
+ "main": {
993
+ "type": "string",
994
+ "description": "The entrypoint/path to the JavaScript file that will be executed."
995
+ },
996
+ "find_additional_modules": {
997
+ "type": "boolean",
998
+ "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."
999
+ },
1000
+ "preserve_file_names": {
1001
+ "type": "boolean",
1002
+ "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
1003
  },
1039
1004
  "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"
1005
+ "type": "string",
1006
+ "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
1007
  },
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.",
1008
+ "workers_dev": {
1009
+ "type": "boolean",
1010
+ "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",
1011
+ "default": true
1012
+ },
1013
+ "preview_urls": {
1014
+ "type": "boolean",
1015
+ "description": "Whether we use <version>-<name>.<subdomain>.workers.dev to serve Preview URLs for your Worker.",
1016
+ "default": true
1017
+ },
1018
+ "routes": {
1019
+ "type": "array",
1020
+ "items": {
1021
+ "$ref": "#/definitions/Route"
1022
+ },
1023
+ "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"
1024
+ },
1025
+ "route": {
1026
+ "$ref": "#/definitions/Route",
1027
+ "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"
1028
+ },
1029
+ "tsconfig": {
1030
+ "type": "string",
1031
+ "description": "Path to a custom tsconfig"
1032
+ },
1033
+ "jsx_factory": {
1034
+ "type": "string",
1035
+ "description": "The function to use to replace jsx syntax.",
1036
+ "default": "React.createElement"
1037
+ },
1038
+ "jsx_fragment": {
1039
+ "type": "string",
1040
+ "description": "The function to use to replace jsx fragment syntax.",
1041
+ "default": "React.Fragment"
1042
+ },
1043
+ "migrations": {
1044
+ "type": "array",
1045
+ "items": {
1046
+ "$ref": "#/definitions/DurableObjectMigration"
1047
+ },
1048
+ "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",
1049
+ "default": []
1050
+ },
1051
+ "triggers": {
1052
+ "type": "object",
1047
1053
  "properties": {
1048
- "binding": {
1049
- "type": "string"
1054
+ "crons": {
1055
+ "type": "array",
1056
+ "items": {
1057
+ "type": "string"
1058
+ }
1050
1059
  }
1051
1060
  },
1052
- "required": [
1053
- "binding"
1054
- ],
1055
- "type": "object"
1056
- },
1057
- "build": {
1058
1061
  "additionalProperties": false,
1059
- "default": {
1060
- "watch_dir": "./src"
1062
+ "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",
1063
+ "default": "{crons: undefined}"
1064
+ },
1065
+ "limits": {
1066
+ "$ref": "#/definitions/UserLimits",
1067
+ "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"
1068
+ },
1069
+ "rules": {
1070
+ "type": "array",
1071
+ "items": {
1072
+ "$ref": "#/definitions/Rule"
1061
1073
  },
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.",
1074
+ "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"
1075
+ },
1076
+ "build": {
1077
+ "type": "object",
1063
1078
  "properties": {
1064
1079
  "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"
1080
+ "type": "string",
1081
+ "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
1082
  },
1068
1083
  "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."
1084
+ "type": "string",
1085
+ "description": "The directory in which the command is executed."
1076
1086
  },
1077
1087
  "watch_dir": {
1078
1088
  "anyOf": [
@@ -1080,154 +1090,133 @@
1080
1090
  "type": "string"
1081
1091
  },
1082
1092
  {
1093
+ "type": "array",
1083
1094
  "items": {
1084
1095
  "type": "string"
1085
- },
1086
- "type": "array"
1096
+ }
1087
1097
  }
1088
1098
  ],
1089
1099
  "description": "The directory to watch for changes while using wrangler dev, defaults to the current working directory"
1090
1100
  }
1091
1101
  },
1092
- "type": "object"
1102
+ "additionalProperties": false,
1103
+ "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",
1104
+ "default": {
1105
+ "watch_dir": "./src"
1106
+ }
1093
1107
  },
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."
1108
+ "no_bundle": {
1109
+ "type": "boolean",
1110
+ "description": "Skip internal build steps and directly deploy script"
1098
1111
  },
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"
1112
+ "minify": {
1113
+ "type": "boolean",
1114
+ "description": "Minify the script before uploading."
1102
1115
  },
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"
1116
+ "keep_names": {
1117
+ "type": "boolean",
1118
+ "description": "Keep function names after javascript transpilations.",
1119
+ "default": "{true}"
1110
1120
  },
1111
- "configPath": {
1112
- "type": "string"
1121
+ "first_party_worker": {
1122
+ "type": "boolean",
1123
+ "description": "Designates this Worker as an internal-only \"first-party\" Worker."
1113
1124
  },
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"
1125
+ "logfwdr": {
1126
+ "type": "object",
1127
+ "properties": {
1128
+ "bindings": {
1129
+ "type": "array",
1130
+ "items": {
1131
+ "type": "object",
1132
+ "properties": {
1133
+ "name": {
1134
+ "type": "string",
1135
+ "description": "The binding name used to refer to logfwdr"
1136
+ },
1137
+ "destination": {
1138
+ "type": "string",
1139
+ "description": "The destination for this logged message"
1140
+ }
1141
+ },
1142
+ "required": [
1143
+ "name",
1144
+ "destination"
1145
+ ],
1146
+ "additionalProperties": false
1127
1147
  }
1128
- },
1129
- "required": [
1130
- "binding",
1131
- "project_id"
1132
- ],
1133
- "type": "object"
1148
+ }
1134
1149
  },
1135
- "type": "array"
1150
+ "required": [
1151
+ "bindings"
1152
+ ],
1153
+ "additionalProperties": false,
1154
+ "description": "List of bindings that you will send to logfwdr",
1155
+ "default": {
1156
+ "bindings": []
1157
+ }
1136
1158
  },
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
- }
1159
+ "logpush": {
1160
+ "type": "boolean",
1161
+ "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/"
1162
+ },
1163
+ "upload_source_maps": {
1164
+ "type": "boolean",
1165
+ "description": "Include source maps when uploading this worker.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#source-maps"
1166
+ },
1167
+ "placement": {
1168
+ "type": "object",
1169
+ "properties": {
1170
+ "mode": {
1171
+ "type": "string",
1172
+ "enum": [
1173
+ "off",
1174
+ "smart"
1175
+ ]
1171
1176
  },
1172
- "required": [
1173
- "binding",
1174
- "database_name",
1175
- "database_id"
1176
- ],
1177
- "type": "object"
1177
+ "hint": {
1178
+ "type": "string"
1179
+ }
1178
1180
  },
1179
- "type": "array"
1181
+ "required": [
1182
+ "mode"
1183
+ ],
1184
+ "additionalProperties": false,
1185
+ "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
1186
  },
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"
1187
+ "assets": {
1188
+ "$ref": "#/definitions/Assets",
1189
+ "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"
1190
+ },
1191
+ "observability": {
1192
+ "$ref": "#/definitions/Observability",
1193
+ "description": "Specify the observability behavior of the Worker.\n\nFor reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#observability"
1187
1194
  },
1188
1195
  "define": {
1196
+ "type": "object",
1189
1197
  "additionalProperties": {
1190
1198
  "type": "string"
1191
1199
  },
1192
- "default": "`{}`",
1193
1200
  "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"
1201
+ "default": {}
1195
1202
  },
1196
- "dev": {
1197
- "$ref": "#/definitions/RawDevConfig",
1198
- "description": "Options to configure the development server that your worker will use."
1199
- },
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.",
1203
+ "vars": {
1204
+ "type": "object",
1205
+ "additionalProperties": {
1206
+ "anyOf": [
1207
+ {
1212
1208
  "type": "string"
1213
1209
  },
1214
- "outbound": {
1215
- "$ref": "#/definitions/DispatchNamespaceOutbound",
1216
- "description": "Details about the outbound Worker which will handle outbound requests from your namespace"
1210
+ {
1211
+ "$ref": "#/definitions/Json"
1217
1212
  }
1218
- },
1219
- "required": [
1220
- "binding",
1221
- "namespace"
1222
- ],
1223
- "type": "object"
1213
+ ]
1224
1214
  },
1225
- "type": "array"
1215
+ "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",
1216
+ "default": {}
1226
1217
  },
1227
1218
  "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.",
1219
+ "type": "object",
1231
1220
  "properties": {
1232
1221
  "bindings": {
1233
1222
  "$ref": "#/definitions/DurableObjectBindings"
@@ -1236,584 +1225,442 @@
1236
1225
  "required": [
1237
1226
  "bindings"
1238
1227
  ],
1239
- "type": "object"
1228
+ "additionalProperties": false,
1229
+ "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",
1230
+ "default": {
1231
+ "bindings": []
1232
+ }
1240
1233
  },
1241
- "env": {
1242
- "additionalProperties": {
1243
- "$ref": "#/definitions/RawEnvironment"
1244
- },
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"
1248
- },
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.",
1234
+ "workflows": {
1235
+ "type": "array",
1253
1236
  "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"
1237
+ "$ref": "#/definitions/WorkflowBinding"
1275
1238
  },
1276
- "type": "array"
1239
+ "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.",
1240
+ "default": []
1277
1241
  },
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"
1281
- },
1282
- "first_party_worker": {
1283
- "description": "Designates this Worker as an internal-only \"first-party\" Worker.",
1284
- "type": "boolean"
1242
+ "cloudchamber": {
1243
+ "$ref": "#/definitions/CloudchamberConfig",
1244
+ "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.",
1245
+ "default": {}
1285
1246
  },
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.",
1247
+ "containers": {
1248
+ "type": "array",
1289
1249
  "items": {
1290
- "additionalProperties": false,
1291
- "properties": {
1292
- "binding": {
1293
- "description": "The binding name used to refer to the project in the Worker.",
1294
- "type": "string"
1295
- },
1296
- "id": {
1297
- "description": "The id of the database.",
1298
- "type": "string"
1299
- },
1300
- "localConnectionString": {
1301
- "description": "The local database connection string for `wrangler dev`",
1302
- "type": "string"
1303
- }
1304
- },
1305
- "required": [
1306
- "binding",
1307
- "id"
1308
- ],
1309
- "type": "object"
1250
+ "$ref": "#/definitions/ContainerApp"
1310
1251
  },
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"
1252
+ "description": "Container related configuration",
1253
+ "default": []
1332
1254
  },
1333
1255
  "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.",
1256
+ "type": "array",
1336
1257
  "items": {
1337
- "additionalProperties": false,
1258
+ "type": "object",
1338
1259
  "properties": {
1339
1260
  "binding": {
1340
- "description": "The binding name used to refer to the KV Namespace",
1341
- "type": "string"
1261
+ "type": "string",
1262
+ "description": "The binding name used to refer to the KV Namespace"
1342
1263
  },
1343
1264
  "id": {
1344
- "description": "The ID of the KV namespace",
1345
- "type": "string"
1265
+ "type": "string",
1266
+ "description": "The ID of the KV namespace"
1346
1267
  },
1347
1268
  "preview_id": {
1348
- "description": "The ID of the KV namespace used during `wrangler dev`",
1349
- "type": "string"
1269
+ "type": "string",
1270
+ "description": "The ID of the KV namespace used during `wrangler dev`"
1271
+ },
1272
+ "remote": {
1273
+ "type": "boolean",
1274
+ "description": "Whether the KV namespace should be remote or not (only available under `--x-mixed-mode`)"
1350
1275
  }
1351
1276
  },
1352
1277
  "required": [
1353
- "binding",
1354
- "id"
1278
+ "binding"
1355
1279
  ],
1356
- "type": "object"
1357
- },
1358
- "type": "array"
1359
- },
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",
1372
- "properties": {
1373
- "bindings": {
1374
- "items": {
1375
- "additionalProperties": false,
1376
- "properties": {
1377
- "destination": {
1378
- "description": "The destination for this logged message",
1379
- "type": "string"
1380
- },
1381
- "name": {
1382
- "description": "The binding name used to refer to logfwdr",
1383
- "type": "string"
1384
- }
1385
- },
1386
- "required": [
1387
- "name",
1388
- "destination"
1389
- ],
1390
- "type": "object"
1391
- },
1392
- "type": "array"
1393
- }
1280
+ "additionalProperties": false
1394
1281
  },
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"
1282
+ "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",
1283
+ "default": []
1407
1284
  },
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",
1285
+ "send_email": {
1286
+ "type": "array",
1411
1287
  "items": {
1412
- "additionalProperties": false,
1288
+ "type": "object",
1413
1289
  "properties": {
1414
- "deleted_classes": {
1415
- "description": "The Durable Objects being removed.",
1416
- "items": {
1417
- "type": "string"
1418
- },
1419
- "type": "array"
1290
+ "name": {
1291
+ "type": "string",
1292
+ "description": "The binding name used to refer to the this binding"
1420
1293
  },
1421
- "new_classes": {
1422
- "description": "The new Durable Objects being defined.",
1423
- "items": {
1424
- "type": "string"
1425
- },
1426
- "type": "array"
1294
+ "destination_address": {
1295
+ "type": "string",
1296
+ "description": "If this binding should be restricted to a specific verified address"
1427
1297
  },
1428
- "renamed_classes": {
1429
- "description": "The Durable Objects being renamed.",
1298
+ "allowed_destination_addresses": {
1299
+ "type": "array",
1430
1300
  "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"
1301
+ "type": "string"
1445
1302
  },
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"
1477
- },
1478
- "certificate_id": {
1479
- "description": "The uuid of the uploaded mTLS certificate",
1480
- "type": "string"
1303
+ "description": "If this binding should be restricted to a set of verified addresses"
1481
1304
  }
1482
1305
  },
1483
1306
  "required": [
1484
- "binding",
1485
- "certificate_id"
1307
+ "name"
1486
1308
  ],
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
- }
1309
+ "additionalProperties": false
1518
1310
  },
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"
1311
+ "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",
1312
+ "default": []
1527
1313
  },
1528
1314
  "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.",
1315
+ "type": "object",
1532
1316
  "properties": {
1533
- "consumers": {
1534
- "description": "Consumer configuration",
1317
+ "producers": {
1318
+ "type": "array",
1535
1319
  "items": {
1536
- "additionalProperties": false,
1320
+ "type": "object",
1537
1321
  "properties": {
1538
- "dead_letter_queue": {
1539
- "description": "The queue to send messages that failed to be consumed.",
1540
- "type": "string"
1541
- },
1542
- "max_batch_size": {
1543
- "description": "The maximum number of messages per batch",
1544
- "type": "number"
1545
- },
1546
- "max_batch_timeout": {
1547
- "description": "The maximum number of seconds to wait to fill a batch with messages.",
1548
- "type": "number"
1549
- },
1550
- "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
- "type": [
1553
- "number",
1554
- "null"
1555
- ]
1556
- },
1557
- "max_retries": {
1558
- "description": "The maximum number of retries for each message.",
1559
- "type": "number"
1322
+ "binding": {
1323
+ "type": "string",
1324
+ "description": "The binding name used to refer to the Queue in the Worker."
1560
1325
  },
1561
1326
  "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"
1327
+ "type": "string",
1328
+ "description": "The name of this Queue."
1568
1329
  },
1569
- "type": {
1570
- "description": "The consumer type, e.g., worker, http-pull, r2-bucket, etc. Default is worker.",
1571
- "type": "string"
1330
+ "delivery_delay": {
1331
+ "type": "number",
1332
+ "description": "The number of seconds to wait before delivering a message"
1572
1333
  },
1573
- "visibility_timeout_ms": {
1574
- "description": "The number of milliseconds to wait for pulled messages to become visible again",
1575
- "type": "number"
1334
+ "remote": {
1335
+ "type": "boolean",
1336
+ "description": "Whether the Queue producer should be remote or not (only available under `--x-mixed-mode`)"
1576
1337
  }
1577
1338
  },
1578
1339
  "required": [
1340
+ "binding",
1579
1341
  "queue"
1580
1342
  ],
1581
- "type": "object"
1343
+ "additionalProperties": false
1582
1344
  },
1583
- "type": "array"
1345
+ "description": "Producer bindings"
1584
1346
  },
1585
- "producers": {
1586
- "description": "Producer bindings",
1347
+ "consumers": {
1348
+ "type": "array",
1587
1349
  "items": {
1588
- "additionalProperties": false,
1350
+ "type": "object",
1589
1351
  "properties": {
1590
- "binding": {
1591
- "description": "The binding name used to refer to the Queue in the Worker.",
1592
- "type": "string"
1352
+ "queue": {
1353
+ "type": "string",
1354
+ "description": "The name of the queue from which this consumer should consume."
1593
1355
  },
1594
- "delivery_delay": {
1595
- "description": "The number of seconds to wait before delivering a message",
1596
- "type": "number"
1356
+ "type": {
1357
+ "type": "string",
1358
+ "description": "The consumer type, e.g., worker, http-pull, r2-bucket, etc. Default is worker."
1597
1359
  },
1598
- "queue": {
1599
- "description": "The name of this Queue.",
1600
- "type": "string"
1360
+ "max_batch_size": {
1361
+ "type": "number",
1362
+ "description": "The maximum number of messages per batch"
1363
+ },
1364
+ "max_batch_timeout": {
1365
+ "type": "number",
1366
+ "description": "The maximum number of seconds to wait to fill a batch with messages."
1367
+ },
1368
+ "max_retries": {
1369
+ "type": "number",
1370
+ "description": "The maximum number of retries for each message."
1371
+ },
1372
+ "dead_letter_queue": {
1373
+ "type": "string",
1374
+ "description": "The queue to send messages that failed to be consumed."
1375
+ },
1376
+ "max_concurrency": {
1377
+ "type": [
1378
+ "number",
1379
+ "null"
1380
+ ],
1381
+ "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."
1382
+ },
1383
+ "visibility_timeout_ms": {
1384
+ "type": "number",
1385
+ "description": "The number of milliseconds to wait for pulled messages to become visible again"
1386
+ },
1387
+ "retry_delay": {
1388
+ "type": "number",
1389
+ "description": "The number of seconds to wait before retrying a message"
1601
1390
  }
1602
1391
  },
1603
1392
  "required": [
1604
- "binding",
1605
1393
  "queue"
1606
1394
  ],
1607
- "type": "object"
1395
+ "additionalProperties": false
1608
1396
  },
1609
- "type": "array"
1397
+ "description": "Consumer configuration"
1610
1398
  }
1611
1399
  },
1612
- "type": "object"
1400
+ "additionalProperties": false,
1401
+ "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",
1402
+ "default": {
1403
+ "consumers": [],
1404
+ "producers": []
1405
+ }
1613
1406
  },
1614
1407
  "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.",
1408
+ "type": "array",
1617
1409
  "items": {
1618
- "additionalProperties": false,
1410
+ "type": "object",
1619
1411
  "properties": {
1620
1412
  "binding": {
1621
- "description": "The binding name used to refer to the R2 bucket in the Worker.",
1622
- "type": "string"
1413
+ "type": "string",
1414
+ "description": "The binding name used to refer to the R2 bucket in the Worker."
1623
1415
  },
1624
1416
  "bucket_name": {
1625
- "description": "The name of this R2 bucket at the edge.",
1626
- "type": "string"
1417
+ "type": "string",
1418
+ "description": "The name of this R2 bucket at the edge."
1419
+ },
1420
+ "preview_bucket_name": {
1421
+ "type": "string",
1422
+ "description": "The preview name of this R2 bucket at the edge."
1627
1423
  },
1628
1424
  "jurisdiction": {
1629
- "description": "The jurisdiction that the bucket exists in. Default if not present.",
1630
- "type": "string"
1425
+ "type": "string",
1426
+ "description": "The jurisdiction that the bucket exists in. Default if not present."
1631
1427
  },
1632
- "preview_bucket_name": {
1633
- "description": "The preview name of this R2 bucket at the edge.",
1634
- "type": "string"
1428
+ "remote": {
1429
+ "type": "boolean",
1430
+ "description": "Whether the R2 bucket should be remote or not (only available under `--x-mixed-mode`)"
1635
1431
  }
1636
1432
  },
1637
1433
  "required": [
1638
- "binding",
1639
- "bucket_name"
1434
+ "binding"
1640
1435
  ],
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"
1653
- },
1654
- "type": "array"
1655
- },
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"
1436
+ "additionalProperties": false
1660
1437
  },
1661
- "type": "array"
1438
+ "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",
1439
+ "default": []
1662
1440
  },
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.",
1441
+ "d1_databases": {
1442
+ "type": "array",
1666
1443
  "items": {
1667
- "additionalProperties": false,
1444
+ "type": "object",
1668
1445
  "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"
1446
+ "binding": {
1447
+ "type": "string",
1448
+ "description": "The binding name used to refer to the D1 database in the Worker."
1675
1449
  },
1676
- "destination_address": {
1677
- "description": "If this binding should be restricted to a specific verified address",
1678
- "type": "string"
1450
+ "database_name": {
1451
+ "type": "string",
1452
+ "description": "The name of this D1 database."
1679
1453
  },
1680
- "name": {
1681
- "description": "The binding name used to refer to the this binding",
1682
- "type": "string"
1454
+ "database_id": {
1455
+ "type": "string",
1456
+ "description": "The UUID of this D1 database (not required)."
1457
+ },
1458
+ "preview_database_id": {
1459
+ "type": "string",
1460
+ "description": "The UUID of this D1 database for Wrangler Dev (if specified)."
1461
+ },
1462
+ "migrations_table": {
1463
+ "type": "string",
1464
+ "description": "The name of the migrations table for this D1 database (defaults to 'd1_migrations')."
1465
+ },
1466
+ "migrations_dir": {
1467
+ "type": "string",
1468
+ "description": "The path to the directory of migrations for this D1 database (defaults to './migrations')."
1469
+ },
1470
+ "database_internal_env": {
1471
+ "type": "string",
1472
+ "description": "Internal use only."
1473
+ },
1474
+ "remote": {
1475
+ "type": "boolean",
1476
+ "description": "Whether the D1 database should be remote or not (only available under `--x-mixed-mode`)"
1683
1477
  }
1684
1478
  },
1685
1479
  "required": [
1686
- "name"
1480
+ "binding"
1687
1481
  ],
1688
- "type": "object"
1482
+ "additionalProperties": false
1689
1483
  },
1690
- "type": "array"
1484
+ "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",
1485
+ "default": []
1691
1486
  },
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"
1487
+ "vectorize": {
1488
+ "type": "array",
1489
+ "items": {
1490
+ "type": "object",
1491
+ "properties": {
1492
+ "binding": {
1493
+ "type": "string",
1494
+ "description": "The binding name used to refer to the Vectorize index in the Worker."
1495
+ },
1496
+ "index_name": {
1497
+ "type": "string",
1498
+ "description": "The name of the index."
1499
+ }
1500
+ },
1501
+ "required": [
1502
+ "binding",
1503
+ "index_name"
1504
+ ],
1505
+ "additionalProperties": false
1506
+ },
1507
+ "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",
1508
+ "default": []
1509
+ },
1510
+ "hyperdrive": {
1511
+ "type": "array",
1512
+ "items": {
1513
+ "type": "object",
1514
+ "properties": {
1515
+ "binding": {
1516
+ "type": "string",
1517
+ "description": "The binding name used to refer to the project in the Worker."
1518
+ },
1519
+ "id": {
1520
+ "type": "string",
1521
+ "description": "The id of the database."
1522
+ },
1523
+ "localConnectionString": {
1524
+ "type": "string",
1525
+ "description": "The local database connection string for `wrangler dev`"
1526
+ }
1527
+ },
1528
+ "required": [
1529
+ "binding",
1530
+ "id"
1531
+ ],
1532
+ "additionalProperties": false
1533
+ },
1534
+ "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",
1535
+ "default": []
1695
1536
  },
1696
1537
  "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.",
1538
+ "type": "array",
1699
1539
  "items": {
1700
- "additionalProperties": false,
1540
+ "type": "object",
1701
1541
  "properties": {
1702
1542
  "binding": {
1703
- "description": "The binding name used to refer to the bound service.",
1704
- "type": "string"
1543
+ "type": "string",
1544
+ "description": "The binding name used to refer to the bound service."
1705
1545
  },
1706
- "entrypoint": {
1707
- "description": "Optionally, the entrypoint (named export) of the service to bind to.",
1708
- "type": "string"
1546
+ "service": {
1547
+ "type": "string",
1548
+ "description": "The name of the service."
1709
1549
  },
1710
1550
  "environment": {
1711
- "description": "The environment of the service (e.g. production, staging, etc).",
1712
- "type": "string"
1551
+ "type": "string",
1552
+ "description": "The environment of the service (e.g. production, staging, etc)."
1713
1553
  },
1714
- "service": {
1715
- "description": "The name of the service.",
1716
- "type": "string"
1554
+ "entrypoint": {
1555
+ "type": "string",
1556
+ "description": "Optionally, the entrypoint (named export) of the service to bind to."
1557
+ },
1558
+ "props": {
1559
+ "type": "object",
1560
+ "additionalProperties": {},
1561
+ "description": "Optional properties that will be made available to the service via ctx.props."
1562
+ },
1563
+ "remote": {
1564
+ "type": "boolean",
1565
+ "description": "Whether the service binding should be remote or not (only available under `--x-mixed-mode`)"
1717
1566
  }
1718
1567
  },
1719
1568
  "required": [
1720
1569
  "binding",
1721
1570
  "service"
1722
1571
  ],
1723
- "type": "object"
1572
+ "additionalProperties": false
1724
1573
  },
1725
- "type": "array"
1574
+ "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",
1575
+ "default": []
1726
1576
  },
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",
1730
- "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.",
1733
- "type": "string"
1734
- },
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.",
1738
- "type": "string"
1739
- },
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"
1577
+ "analytics_engine_datasets": {
1578
+ "type": "array",
1579
+ "items": {
1580
+ "type": "object",
1581
+ "properties": {
1582
+ "binding": {
1583
+ "type": "string",
1584
+ "description": "The binding name used to refer to the dataset in the Worker."
1745
1585
  },
1746
- "type": "array"
1586
+ "dataset": {
1587
+ "type": "string",
1588
+ "description": "The name of this dataset to write to."
1589
+ }
1747
1590
  },
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"
1591
+ "required": [
1592
+ "binding"
1593
+ ],
1594
+ "additionalProperties": false
1595
+ },
1596
+ "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",
1597
+ "default": []
1598
+ },
1599
+ "browser": {
1600
+ "type": "object",
1601
+ "properties": {
1602
+ "binding": {
1603
+ "type": "string"
1755
1604
  }
1756
1605
  },
1757
1606
  "required": [
1758
- "bucket"
1607
+ "binding"
1759
1608
  ],
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"
1609
+ "additionalProperties": false,
1610
+ "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",
1611
+ "default": {}
1769
1612
  },
1770
- "text_blobs": {
1771
- "additionalProperties": {
1772
- "type": "string"
1613
+ "ai": {
1614
+ "type": "object",
1615
+ "properties": {
1616
+ "binding": {
1617
+ "type": "string"
1618
+ },
1619
+ "staging": {
1620
+ "type": "boolean"
1621
+ }
1773
1622
  },
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": {
1623
+ "required": [
1624
+ "binding"
1625
+ ],
1778
1626
  "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",
1627
+ "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",
1628
+ "default": {}
1629
+ },
1630
+ "images": {
1631
+ "type": "object",
1781
1632
  "properties": {
1782
- "crons": {
1783
- "items": {
1784
- "type": "string"
1785
- },
1786
- "type": "array"
1633
+ "binding": {
1634
+ "type": "string"
1787
1635
  }
1788
1636
  },
1789
1637
  "required": [
1790
- "crons"
1638
+ "binding"
1791
1639
  ],
1792
- "type": "object"
1793
- },
1794
- "tsconfig": {
1795
- "description": "Path to a custom tsconfig",
1796
- "type": "string"
1640
+ "additionalProperties": false,
1641
+ "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",
1642
+ "default": {}
1797
1643
  },
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"
1644
+ "version_metadata": {
1645
+ "type": "object",
1646
+ "properties": {
1647
+ "binding": {
1648
+ "type": "string"
1649
+ }
1650
+ },
1651
+ "required": [
1652
+ "binding"
1805
1653
  ],
1806
- "type": "string"
1654
+ "additionalProperties": false,
1655
+ "description": "Binding to the Worker Version's metadata"
1807
1656
  },
1808
1657
  "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.",
1658
+ "type": "object",
1812
1659
  "properties": {
1813
1660
  "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.",
1661
+ "type": "array",
1815
1662
  "items": {
1816
- "additionalProperties": {},
1663
+ "type": "object",
1817
1664
  "properties": {
1818
1665
  "name": {
1819
1666
  "type": "string"
@@ -1826,33 +1673,38 @@
1826
1673
  "name",
1827
1674
  "type"
1828
1675
  ],
1829
- "type": "object"
1676
+ "additionalProperties": {}
1830
1677
  },
1831
- "type": "array"
1678
+ "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."
1679
+ },
1680
+ "metadata": {
1681
+ "type": "object",
1682
+ "additionalProperties": {},
1683
+ "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
1684
  },
1833
1685
  "capnp": {
1834
1686
  "anyOf": [
1835
1687
  {
1836
- "additionalProperties": false,
1688
+ "type": "object",
1837
1689
  "properties": {
1838
1690
  "base_path": {
1839
1691
  "type": "string"
1840
1692
  },
1841
1693
  "source_schemas": {
1694
+ "type": "array",
1842
1695
  "items": {
1843
1696
  "type": "string"
1844
- },
1845
- "type": "array"
1697
+ }
1846
1698
  }
1847
1699
  },
1848
1700
  "required": [
1849
1701
  "base_path",
1850
1702
  "source_schemas"
1851
1703
  ],
1852
- "type": "object"
1704
+ "additionalProperties": false
1853
1705
  },
1854
1706
  {
1855
- "additionalProperties": false,
1707
+ "type": "object",
1856
1708
  "properties": {
1857
1709
  "compiled_schema": {
1858
1710
  "type": "string"
@@ -1861,1079 +1713,719 @@
1861
1713
  "required": [
1862
1714
  "compiled_schema"
1863
1715
  ],
1864
- "type": "object"
1716
+ "additionalProperties": false
1865
1717
  }
1866
1718
  ],
1867
1719
  "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
1720
  }
1874
1721
  },
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"
1722
+ "additionalProperties": false,
1723
+ "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.",
1724
+ "default": {}
1888
1725
  },
1889
- "vars": {
1890
- "additionalProperties": {
1891
- "anyOf": [
1892
- {
1893
- "type": "string"
1726
+ "mtls_certificates": {
1727
+ "type": "array",
1728
+ "items": {
1729
+ "type": "object",
1730
+ "properties": {
1731
+ "binding": {
1732
+ "type": "string",
1733
+ "description": "The binding name used to refer to the certificate in the Worker"
1894
1734
  },
1895
- {
1896
- "$ref": "#/definitions/Json"
1735
+ "certificate_id": {
1736
+ "type": "string",
1737
+ "description": "The uuid of the uploaded mTLS certificate"
1897
1738
  }
1898
- ]
1739
+ },
1740
+ "required": [
1741
+ "binding",
1742
+ "certificate_id"
1743
+ ],
1744
+ "additionalProperties": false
1899
1745
  },
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"
1746
+ "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",
1747
+ "default": []
1903
1748
  },
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.",
1749
+ "tail_consumers": {
1750
+ "type": "array",
1751
+ "items": {
1752
+ "$ref": "#/definitions/TailConsumer"
1753
+ },
1754
+ "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.",
1755
+ "default": []
1756
+ },
1757
+ "dispatch_namespaces": {
1758
+ "type": "array",
1907
1759
  "items": {
1908
- "additionalProperties": false,
1760
+ "type": "object",
1909
1761
  "properties": {
1910
1762
  "binding": {
1911
- "description": "The binding name used to refer to the Vectorize index in the Worker.",
1912
- "type": "string"
1763
+ "type": "string",
1764
+ "description": "The binding name used to refer to the bound service."
1913
1765
  },
1914
- "index_name": {
1915
- "description": "The name of the index.",
1916
- "type": "string"
1766
+ "namespace": {
1767
+ "type": "string",
1768
+ "description": "The namespace to bind to."
1769
+ },
1770
+ "outbound": {
1771
+ "$ref": "#/definitions/DispatchNamespaceOutbound",
1772
+ "description": "Details about the outbound Worker which will handle outbound requests from your namespace"
1917
1773
  }
1918
1774
  },
1919
1775
  "required": [
1920
1776
  "binding",
1921
- "index_name"
1777
+ "namespace"
1922
1778
  ],
1923
- "type": "object"
1779
+ "additionalProperties": false
1924
1780
  },
1925
- "type": "array"
1781
+ "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",
1782
+ "default": []
1926
1783
  },
1927
- "version_metadata": {
1928
- "additionalProperties": false,
1929
- "description": "Binding to the Worker Version's metadata",
1930
- "properties": {
1931
- "binding": {
1932
- "type": "string"
1933
- }
1784
+ "pipelines": {
1785
+ "type": "array",
1786
+ "items": {
1787
+ "type": "object",
1788
+ "properties": {
1789
+ "binding": {
1790
+ "type": "string",
1791
+ "description": "The binding name used to refer to the bound service."
1792
+ },
1793
+ "pipeline": {
1794
+ "type": "string",
1795
+ "description": "Name of the Pipeline to bind"
1796
+ }
1797
+ },
1798
+ "required": [
1799
+ "binding",
1800
+ "pipeline"
1801
+ ],
1802
+ "additionalProperties": false
1934
1803
  },
1935
- "required": [
1936
- "binding"
1937
- ],
1938
- "type": "object"
1804
+ "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.",
1805
+ "default": []
1939
1806
  },
1940
- "wasm_modules": {
1941
- "additionalProperties": {
1942
- "type": "string"
1807
+ "secrets_store_secrets": {
1808
+ "type": "array",
1809
+ "items": {
1810
+ "type": "object",
1811
+ "properties": {
1812
+ "binding": {
1813
+ "type": "string",
1814
+ "description": "The binding name used to refer to the bound service."
1815
+ },
1816
+ "store_id": {
1817
+ "type": "string",
1818
+ "description": "Id of the secret store"
1819
+ },
1820
+ "secret_name": {
1821
+ "type": "string",
1822
+ "description": "Name of the secret"
1823
+ }
1824
+ },
1825
+ "required": [
1826
+ "binding",
1827
+ "store_id",
1828
+ "secret_name"
1829
+ ],
1830
+ "additionalProperties": false
1943
1831
  },
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\"`.",
1832
+ "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.",
1833
+ "default": []
1834
+ }
1835
+ },
1836
+ "additionalProperties": false,
1837
+ "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."
1838
+ },
1839
+ "Route": {
1840
+ "anyOf": [
1841
+ {
1950
1842
  "type": "string"
1951
1843
  },
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"
1844
+ {
1845
+ "$ref": "#/definitions/ZoneIdRoute"
1956
1846
  },
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"
1847
+ {
1848
+ "$ref": "#/definitions/ZoneNameRoute"
1849
+ },
1850
+ {
1851
+ "$ref": "#/definitions/CustomDomainRoute"
1960
1852
  }
1961
- },
1962
- "type": "object"
1853
+ ]
1963
1854
  },
1964
- "RawDevConfig": {
1965
- "additionalProperties": false,
1855
+ "ZoneIdRoute": {
1856
+ "type": "object",
1966
1857
  "properties": {
1967
- "host": {
1968
- "description": "Host to forward requests to, defaults to the host of the first route of project",
1858
+ "pattern": {
1969
1859
  "type": "string"
1970
1860
  },
1971
- "inspector_port": {
1972
- "default": 9229,
1973
- "description": "Port for the local dev server's inspector to listen on",
1974
- "type": "number"
1861
+ "zone_id": {
1862
+ "type": "string"
1975
1863
  },
1976
- "ip": {
1977
- "default": "localhost",
1978
- "description": "IP address for the local dev server to listen on,",
1864
+ "custom_domain": {
1865
+ "type": "boolean"
1866
+ }
1867
+ },
1868
+ "required": [
1869
+ "pattern",
1870
+ "zone_id"
1871
+ ],
1872
+ "additionalProperties": false
1873
+ },
1874
+ "ZoneNameRoute": {
1875
+ "type": "object",
1876
+ "properties": {
1877
+ "pattern": {
1979
1878
  "type": "string"
1980
1879
  },
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
- ],
1880
+ "zone_name": {
1988
1881
  "type": "string"
1989
1882
  },
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"
1883
+ "custom_domain": {
1884
+ "type": "boolean"
2003
1885
  }
2004
1886
  },
2005
- "type": "object"
1887
+ "required": [
1888
+ "pattern",
1889
+ "zone_name"
1890
+ ],
1891
+ "additionalProperties": false
2006
1892
  },
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.",
1893
+ "CustomDomainRoute": {
1894
+ "type": "object",
2010
1895
  "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.",
1896
+ "pattern": {
2013
1897
  "type": "string"
2014
1898
  },
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"
1899
+ "custom_domain": {
1900
+ "type": "boolean"
1901
+ }
1902
+ },
1903
+ "required": [
1904
+ "pattern",
1905
+ "custom_domain"
1906
+ ],
1907
+ "additionalProperties": false
1908
+ },
1909
+ "DurableObjectMigration": {
1910
+ "type": "object",
1911
+ "properties": {
1912
+ "tag": {
1913
+ "type": "string",
1914
+ "description": "A unique identifier for this migration."
2031
1915
  },
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.",
1916
+ "new_classes": {
1917
+ "type": "array",
2035
1918
  "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
- }
1919
+ "type": "string"
2106
1920
  },
2107
- "type": "object"
1921
+ "description": "The new Durable Objects being defined."
2108
1922
  },
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",
1923
+ "new_sqlite_classes": {
1924
+ "type": "array",
2121
1925
  "items": {
2122
1926
  "type": "string"
2123
1927
  },
2124
- "type": "array"
1928
+ "description": "The new SQLite Durable Objects being defined."
2125
1929
  },
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.",
1930
+ "renamed_classes": {
1931
+ "type": "array",
2129
1932
  "items": {
2130
- "additionalProperties": false,
1933
+ "type": "object",
2131
1934
  "properties": {
2132
- "binding": {
2133
- "description": "The binding name used to refer to the project in the Worker.",
1935
+ "from": {
2134
1936
  "type": "string"
2135
1937
  },
2136
- "project_id": {
2137
- "description": "The id of the project.",
1938
+ "to": {
2138
1939
  "type": "string"
2139
1940
  }
2140
1941
  },
2141
1942
  "required": [
2142
- "binding",
2143
- "project_id"
1943
+ "from",
1944
+ "to"
2144
1945
  ],
2145
- "type": "object"
1946
+ "additionalProperties": false
2146
1947
  },
2147
- "type": "array"
1948
+ "description": "The Durable Objects being renamed."
2148
1949
  },
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.",
1950
+ "deleted_classes": {
1951
+ "type": "array",
2152
1952
  "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
1953
  "type": "string"
2196
1954
  },
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"
1955
+ "description": "The Durable Objects being removed."
1956
+ }
1957
+ },
1958
+ "required": [
1959
+ "tag"
1960
+ ],
1961
+ "additionalProperties": false,
1962
+ "description": "Configuration in wrangler for Durable Object Migrations"
1963
+ },
1964
+ "UserLimits": {
1965
+ "type": "object",
1966
+ "properties": {
1967
+ "cpu_ms": {
1968
+ "type": "number",
1969
+ "description": "Maximum allowed CPU time for a Worker's invocation in milliseconds"
1970
+ }
1971
+ },
1972
+ "required": [
1973
+ "cpu_ms"
1974
+ ],
1975
+ "additionalProperties": false
1976
+ },
1977
+ "Rule": {
1978
+ "type": "object",
1979
+ "properties": {
1980
+ "type": {
1981
+ "$ref": "#/definitions/ConfigModuleRuleType"
2200
1982
  },
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.",
1983
+ "globs": {
1984
+ "type": "array",
2204
1985
  "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"
1986
+ "type": "string"
1987
+ }
2227
1988
  },
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"
1989
+ "fallthrough": {
1990
+ "type": "boolean"
1991
+ }
1992
+ },
1993
+ "required": [
1994
+ "type",
1995
+ "globs"
1996
+ ],
1997
+ "additionalProperties": false,
1998
+ "description": "A bundling resolver rule, defining the modules type for paths that match the specified globs."
1999
+ },
2000
+ "ConfigModuleRuleType": {
2001
+ "type": "string",
2002
+ "enum": [
2003
+ "ESModule",
2004
+ "CommonJS",
2005
+ "CompiledWasm",
2006
+ "Text",
2007
+ "Data",
2008
+ "PythonModule",
2009
+ "PythonRequirement"
2010
+ ],
2011
+ "description": "The possible types for a `Rule`."
2012
+ },
2013
+ "Assets": {
2014
+ "type": "object",
2015
+ "properties": {
2016
+ "directory": {
2017
+ "type": "string",
2018
+ "description": "Absolute path to assets directory"
2241
2019
  },
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"
2020
+ "binding": {
2021
+ "type": "string",
2022
+ "description": "Name of `env` binding property in the User Worker."
2270
2023
  },
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"
2024
+ "html_handling": {
2025
+ "type": "string",
2026
+ "enum": [
2027
+ "auto-trailing-slash",
2028
+ "force-trailing-slash",
2029
+ "drop-trailing-slash",
2030
+ "none"
2031
+ ],
2032
+ "description": "How to handle HTML requests."
2274
2033
  },
2275
- "first_party_worker": {
2276
- "description": "Designates this Worker as an internal-only \"first-party\" Worker.",
2277
- "type": "boolean"
2034
+ "not_found_handling": {
2035
+ "type": "string",
2036
+ "enum": [
2037
+ "single-page-application",
2038
+ "404-page",
2039
+ "none"
2040
+ ],
2041
+ "description": "How to handle requests that do not match an asset."
2278
2042
  },
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"
2043
+ "run_worker_first": {
2044
+ "type": "boolean",
2045
+ "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."
2046
+ }
2047
+ },
2048
+ "additionalProperties": false
2049
+ },
2050
+ "Observability": {
2051
+ "type": "object",
2052
+ "properties": {
2053
+ "enabled": {
2054
+ "type": "boolean",
2055
+ "description": "If observability is enabled for this Worker"
2347
2056
  },
2348
- "limits": {
2349
- "$ref": "#/definitions/UserLimits",
2350
- "description": "Specify limits for runtime behavior. Only supported for the \"standard\" Usage Model"
2057
+ "head_sampling_rate": {
2058
+ "type": "number",
2059
+ "description": "The sampling rate"
2351
2060
  },
2352
- "logfwdr": {
2353
- "additionalProperties": false,
2354
- "default": "`{bindings:[]}`",
2355
- "description": "List of bindings that you will send to logfwdr",
2061
+ "logs": {
2062
+ "type": "object",
2356
2063
  "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"
2064
+ "enabled": {
2065
+ "type": "boolean"
2066
+ },
2067
+ "head_sampling_rate": {
2068
+ "type": "number",
2069
+ "description": "The sampling rate"
2070
+ },
2071
+ "invocation_logs": {
2072
+ "type": "boolean",
2073
+ "description": "Set to false to disable invocation logs"
2377
2074
  }
2378
2075
  },
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"
2076
+ "additionalProperties": false
2077
+ }
2078
+ },
2079
+ "additionalProperties": false
2080
+ },
2081
+ "Json": {
2082
+ "anyOf": [
2083
+ {
2084
+ "$ref": "#/definitions/Literal"
2391
2085
  },
2392
- "minify": {
2393
- "description": "Minify the script before uploading.",
2394
- "type": "boolean"
2086
+ {
2087
+ "type": "object",
2088
+ "additionalProperties": {
2089
+ "$ref": "#/definitions/Json"
2090
+ }
2395
2091
  },
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.",
2092
+ {
2093
+ "type": "array",
2399
2094
  "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"
2095
+ "$ref": "#/definitions/Json"
2096
+ }
2097
+ }
2098
+ ]
2099
+ },
2100
+ "Literal": {
2101
+ "$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"
2102
+ },
2103
+ "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]>>": {
2104
+ "type": [
2105
+ "string",
2106
+ "number",
2107
+ "boolean",
2108
+ "null"
2109
+ ]
2110
+ },
2111
+ "DurableObjectBindings": {
2112
+ "type": "array",
2113
+ "items": {
2114
+ "type": "object",
2115
+ "properties": {
2116
+ "name": {
2117
+ "type": "string",
2118
+ "description": "The name of the binding used to refer to the Durable Object"
2416
2119
  },
2417
- "type": "array"
2418
- },
2419
- "name": {
2420
- "description": "The name of your Worker. Alphanumeric + dashes only.",
2421
- "type": "string"
2120
+ "class_name": {
2121
+ "type": "string",
2122
+ "description": "The exported class name of the Durable Object"
2123
+ },
2124
+ "script_name": {
2125
+ "type": "string",
2126
+ "description": "The script where the Durable Object is defined (if it's external to this Worker)"
2127
+ },
2128
+ "environment": {
2129
+ "type": "string",
2130
+ "description": "The service environment of the script_name to bind to"
2131
+ }
2422
2132
  },
2423
- "no_bundle": {
2424
- "description": "Skip internal build steps and directly deploy script",
2425
- "type": "boolean"
2133
+ "required": [
2134
+ "name",
2135
+ "class_name"
2136
+ ],
2137
+ "additionalProperties": false
2138
+ }
2139
+ },
2140
+ "WorkflowBinding": {
2141
+ "type": "object",
2142
+ "properties": {
2143
+ "binding": {
2144
+ "type": "string",
2145
+ "description": "The name of the binding used to refer to the Workflow"
2426
2146
  },
2427
- "node_compat": {
2428
- "description": "Add polyfills for node builtin modules and globals",
2429
- "type": "boolean"
2147
+ "name": {
2148
+ "type": "string",
2149
+ "description": "The name of the Workflow"
2430
2150
  },
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"
2151
+ "class_name": {
2152
+ "type": "string",
2153
+ "description": "The exported class name of the Workflow"
2447
2154
  },
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"
2155
+ "script_name": {
2156
+ "type": "string",
2157
+ "description": "The script where the Workflow is defined (if it's external to this Worker)"
2451
2158
  },
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"
2159
+ "remote": {
2160
+ "type": "boolean",
2161
+ "description": "Whether the Workflow should be remote or not (only available under `--x-mixed-mode`)"
2162
+ }
2163
+ },
2164
+ "required": [
2165
+ "binding",
2166
+ "name",
2167
+ "class_name"
2168
+ ],
2169
+ "additionalProperties": false
2170
+ },
2171
+ "CloudchamberConfig": {
2172
+ "type": "object",
2173
+ "properties": {
2174
+ "image": {
2175
+ "type": "string"
2537
2176
  },
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"
2177
+ "location": {
2178
+ "type": "string"
2568
2179
  },
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"
2180
+ "vcpu": {
2181
+ "type": "number"
2572
2182
  },
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"
2183
+ "memory": {
2184
+ "type": "string"
2579
2185
  },
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"
2186
+ "ipv4": {
2187
+ "type": "boolean"
2188
+ }
2189
+ },
2190
+ "additionalProperties": false,
2191
+ "description": "Configuration in wrangler for Cloudchamber"
2192
+ },
2193
+ "ContainerApp": {
2194
+ "type": "object",
2195
+ "properties": {
2196
+ "name": {
2197
+ "type": "string",
2198
+ "description": "Name of the application"
2586
2199
  },
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"
2200
+ "instances": {
2201
+ "type": "number",
2202
+ "description": "Number of application instances"
2615
2203
  },
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"
2204
+ "max_instances": {
2205
+ "type": "number",
2206
+ "description": "Number of maximum application instances. Only applicable to Durable Object container applications"
2646
2207
  },
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"
2208
+ "image": {
2209
+ "type": "string",
2210
+ "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
2211
  },
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
- }
2212
+ "image_build_context": {
2213
+ "type": "string",
2214
+ "description": "Build context of the application. By default it is the directory of `image`."
2215
+ },
2216
+ "image_vars": {
2217
+ "type": "object",
2218
+ "additionalProperties": {
2219
+ "type": "string"
2666
2220
  },
2667
- "required": [
2668
- "crons"
2669
- ],
2670
- "type": "object"
2221
+ "description": "Image variables to be passed along the image"
2671
2222
  },
2672
- "tsconfig": {
2673
- "description": "Path to a custom tsconfig",
2223
+ "class_name": {
2674
2224
  "type": "string"
2675
2225
  },
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.",
2226
+ "scheduling_policy": {
2227
+ "type": "string",
2228
+ "enum": [
2229
+ "regional",
2230
+ "moon"
2231
+ ],
2232
+ "description": "The scheduling policy of the application, default is regional"
2233
+ },
2234
+ "configuration": {
2235
+ "type": "object",
2680
2236
  "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.",
2237
+ "image": {
2238
+ "type": "string"
2239
+ },
2240
+ "labels": {
2241
+ "type": "array",
2683
2242
  "items": {
2684
- "additionalProperties": {},
2243
+ "type": "object",
2685
2244
  "properties": {
2686
2245
  "name": {
2687
2246
  "type": "string"
2688
2247
  },
2689
- "type": {
2248
+ "value": {
2690
2249
  "type": "string"
2691
2250
  }
2692
2251
  },
2693
2252
  "required": [
2694
2253
  "name",
2695
- "type"
2254
+ "value"
2696
2255
  ],
2697
- "type": "object"
2698
- },
2699
- "type": "array"
2256
+ "additionalProperties": false
2257
+ }
2700
2258
  },
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
- }
2259
+ "secrets": {
2260
+ "type": "array",
2261
+ "items": {
2262
+ "type": "object",
2263
+ "properties": {
2264
+ "name": {
2265
+ "type": "string"
2715
2266
  },
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
- }
2267
+ "type": {
2268
+ "type": "string",
2269
+ "const": "env"
2728
2270
  },
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"
2271
+ "secret": {
2272
+ "type": "string"
2273
+ }
2274
+ },
2275
+ "required": [
2276
+ "name",
2277
+ "type",
2278
+ "secret"
2279
+ ],
2280
+ "additionalProperties": false
2281
+ }
2741
2282
  }
2742
2283
  },
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"
2284
+ "required": [
2285
+ "image"
2754
2286
  ],
2755
- "type": "string"
2287
+ "additionalProperties": false
2756
2288
  },
2757
- "vars": {
2758
- "additionalProperties": {
2759
- "anyOf": [
2760
- {
2289
+ "constraints": {
2290
+ "type": "object",
2291
+ "properties": {
2292
+ "regions": {
2293
+ "type": "array",
2294
+ "items": {
2761
2295
  "type": "string"
2762
- },
2763
- {
2764
- "$ref": "#/definitions/Json"
2765
2296
  }
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.",
2297
+ },
2298
+ "cities": {
2299
+ "type": "array",
2300
+ "items": {
2784
2301
  "type": "string"
2785
2302
  }
2786
2303
  },
2787
- "required": [
2788
- "binding",
2789
- "index_name"
2790
- ],
2791
- "type": "object"
2304
+ "tier": {
2305
+ "type": "number"
2306
+ }
2792
2307
  },
2793
- "type": "array"
2794
- },
2795
- "version_metadata": {
2796
2308
  "additionalProperties": false,
2797
- "description": "Binding to the Worker Version's metadata",
2309
+ "description": "Scheduling constraints"
2310
+ },
2311
+ "durable_objects": {
2312
+ "type": "object",
2798
2313
  "properties": {
2799
- "binding": {
2314
+ "namespace_id": {
2800
2315
  "type": "string"
2801
2316
  }
2802
2317
  },
2803
2318
  "required": [
2804
- "binding"
2319
+ "namespace_id"
2805
2320
  ],
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"
2321
+ "additionalProperties": false
2842
2322
  },
2843
- "globs": {
2844
- "items": {
2845
- "type": "string"
2846
- },
2847
- "type": "array"
2323
+ "rollout_step_percentage": {
2324
+ "type": "number",
2325
+ "description": "How a rollout should be done, defining the size of it"
2848
2326
  },
2849
- "type": {
2850
- "$ref": "#/definitions/ConfigModuleRuleType"
2327
+ "rollout_kind": {
2328
+ "type": "string",
2329
+ "enum": [
2330
+ "full_auto",
2331
+ "none",
2332
+ "full_manual"
2333
+ ],
2334
+ "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
2335
  }
2852
2336
  },
2853
2337
  "required": [
2854
- "type",
2855
- "globs"
2338
+ "name",
2339
+ "class_name",
2340
+ "configuration"
2856
2341
  ],
2857
- "type": "object"
2858
- },
2859
- "SimpleRoute": {
2860
- "type": "string"
2342
+ "additionalProperties": false,
2343
+ "description": "Configuration for a container application"
2861
2344
  },
2862
2345
  "TailConsumer": {
2863
- "additionalProperties": false,
2346
+ "type": "object",
2864
2347
  "properties": {
2865
- "environment": {
2866
- "description": "(Optional) The environt of the service.",
2867
- "type": "string"
2868
- },
2869
2348
  "service": {
2870
- "description": "The name of the service tail events will be forwarded to.",
2871
- "type": "string"
2349
+ "type": "string",
2350
+ "description": "The name of the service tail events will be forwarded to."
2351
+ },
2352
+ "environment": {
2353
+ "type": "string",
2354
+ "description": "(Optional) The environment of the service."
2872
2355
  }
2873
2356
  },
2874
2357
  "required": [
2875
2358
  "service"
2876
2359
  ],
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"
2360
+ "additionalProperties": false
2899
2361
  },
2900
- "ZoneIdRoute": {
2901
- "additionalProperties": false,
2362
+ "DispatchNamespaceOutbound": {
2363
+ "type": "object",
2902
2364
  "properties": {
2903
- "custom_domain": {
2904
- "type": "boolean"
2365
+ "service": {
2366
+ "type": "string",
2367
+ "description": "Name of the service handling the outbound requests"
2905
2368
  },
2906
- "pattern": {
2907
- "type": "string"
2369
+ "environment": {
2370
+ "type": "string",
2371
+ "description": "(Optional) Name of the environment handling the outbound requests."
2908
2372
  },
2909
- "zone_id": {
2910
- "type": "string"
2373
+ "parameters": {
2374
+ "type": "array",
2375
+ "items": {
2376
+ "type": "string"
2377
+ },
2378
+ "description": "(Optional) List of parameter names, for sending context from your dispatch Worker to the outbound handler"
2911
2379
  }
2912
2380
  },
2913
2381
  "required": [
2914
- "pattern",
2915
- "zone_id"
2382
+ "service"
2916
2383
  ],
2917
- "type": "object"
2384
+ "additionalProperties": false
2918
2385
  },
2919
- "ZoneNameRoute": {
2920
- "additionalProperties": false,
2386
+ "RawDevConfig": {
2387
+ "type": "object",
2921
2388
  "properties": {
2922
- "custom_domain": {
2923
- "type": "boolean"
2389
+ "ip": {
2390
+ "type": "string",
2391
+ "description": "IP address for the local dev server to listen on,",
2392
+ "default": "localhost"
2924
2393
  },
2925
- "pattern": {
2926
- "type": "string"
2394
+ "port": {
2395
+ "type": "number",
2396
+ "description": "Port for the local dev server to listen on",
2397
+ "default": 8787
2927
2398
  },
2928
- "zone_name": {
2929
- "type": "string"
2399
+ "inspector_port": {
2400
+ "type": "number",
2401
+ "description": "Port for the local dev server's inspector to listen on",
2402
+ "default": 9229
2403
+ },
2404
+ "local_protocol": {
2405
+ "type": "string",
2406
+ "enum": [
2407
+ "http",
2408
+ "https"
2409
+ ],
2410
+ "description": "Protocol that local wrangler dev server listens to requests on.",
2411
+ "default": "http"
2412
+ },
2413
+ "upstream_protocol": {
2414
+ "type": "string",
2415
+ "enum": [
2416
+ "https",
2417
+ "http"
2418
+ ],
2419
+ "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",
2420
+ "default": "https"
2421
+ },
2422
+ "host": {
2423
+ "type": "string",
2424
+ "description": "Host to forward requests to, defaults to the host of the first route of project"
2930
2425
  }
2931
2426
  },
2932
- "required": [
2933
- "pattern",
2934
- "zone_name"
2935
- ],
2936
- "type": "object"
2427
+ "additionalProperties": false
2937
2428
  }
2938
- }
2429
+ },
2430
+ "allowTrailingCommas": true
2939
2431
  }