You can create Cloud Connector rules using the Terraform Cloudflare provider ↗.
To get started with Terraform for Cloudflare configuration, refer to Get started.
The API token used by Terraform must have at least the following permission:
- Zone > Cloud Connector > Write
The following example Terraform configuration creates Cloud Connector rules for various supported providers to route traffic between them based on URI paths:
resource "cloudflare_cloud_connector_rules" "cloud_connector_rules" {
zone_id = "<ZONE_ID>"
rules {
description = "Route /data to GCP bucket"
enabled = true
expression = "(http.request.uri.path wildcard \"*/data/*\")"
provider = "gcp_storage"
parameters {
host = "mystorage.storage.googleapis.com"
}
}
rules {
description = "Route /resources to AWS bucket"
enabled = true
expression = "(http.request.uri.path wildcard \"*/resources/*\")"
provider = "aws_s3"
parameters {
host = "mystorage.s3.ams.amazonaws.com"
}
}
rules {
description = "Route /files to Azure bucket"
enabled = true
expression = "(http.request.uri.path wildcard \"*/files/*\")"
provider = "azure_storage"
parameters {
host = "mystorage.blob.core.windows.net"
}
}
rules {
description = "Route /images to R2 bucket"
enabled = true
expression = "(http.request.uri.path wildcard \"*/images/*\")"
provider = "cloudflare_r2"
parameters {
host = "mybucketcustomdomain.example.com"
}
}
}Refer to the Terraform Cloudflare provider documentation ↗ for more information on the cloudflare_cloud_connector_rules resource.