Browse documentation
On this page

Peren documentation

Binding mapping

Map Wrangler binding tables to Peren type strings, notices, and operator-required fields.

Wrangler resource kind is not the Peren binding type. Migration reads Wrangler tables and emits Peren bindings under [services.bindings.NAME] with a type discriminant. Fields that cannot identify a Peren resource become notices or operator-input requirements. Unmapped Wrangler tables become field-not-translated notices.

Configure native Peren bindings from Bindings overview. Import procedure: Migrate from Cloudflare Workers.

Wrangler tables that produce bindings

Wrangler source Peren type Preserved Transformed Notice or refusal
[[kv_namespaces]] kv binding → binding name; used as namespace Generated unique_key; default native backend id is not translated
[[d1_databases]] d1_database binding, database_name Generated unique_key; default native backend database_id is not translated
[[r2_buckets]] r2_bucket binding, bucket_name → bucket Placeholder endpoint and credential_scope Needs operator input for real endpoint and credential scope; migrate refuses deploy until resolved
[[queues.producers]] queue binding, queue → queue_name — —
[[durable_objects.bindings]] durable_object_namespace name → binding name; class_name Generated unique_key script_name is not translated
[[mtls_certificates]] mtls_certificate binding Placeholder cert_pem_env and key_pem_env from certificate_id Needs operator input for PEM environment variable names

Queue consumers map to consumes_queues on the service, not to a producer binding.

Peren types with no Wrangler migrate path

These type values exist in Peren fleet config. The Wrangler importer does not emit them:

Peren type How you get it
outbound Declare under [services.bindings.NAME] with allowed_hosts. See Outbound fetch.
aws_sigv4 Declare under [services.bindings.NAME] with region, service, hosts, and credential source. See AWS SigV4.

Other Wrangler bindings the importer handles

These are outside the short list above. They still appear in migrate output when present:

Wrangler source Peren type Operator consequence
[ai] ai Needs endpoint and credential scope
[[vectorize]] vectorize Needs endpoint and credential scope
[[hyperdrive]] hyperdrive Needs PgCat endpoint and credential scope
[[workflows]] workflow script_name and schedules become notices
[[analytics_engine_datasets]] analytics_engine Needs credential scope
[[secrets_store_secrets]] secrets_store_secret Missing secret_name skips the entry with a notice; store_id is not translated
[[worker_loaders]] loader Unknown nested fields become notices
[[dispatch_namespaces]] dispatcher Unknown nested fields become notices
[[containers]] container Requires a matching Durable Object binding name; needs default_port; several Cloudflare fields become notices
[assets] optional binding assets html_handling and not_found_handling are not translated

Refused Wrangler directives

Import fails for send_email, browser, and images. Unsupported compatibility_flags fail import. See Compatibility dates and flags and Migration overview.