Skip to content

Configure Cloud Connector using Terraform

You can create Cloud Connector rules using the Terraform Cloudflare provider.

To get started with Terraform for Cloudflare configuration, refer to Terraform: Get started.

Example configuration

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"
}
}
}

More resources

Refer to the Terraform Cloudflare provider documentation for more information on the cloudflare_cloud_connector_rules resource.