This project is not covered by Drupal’s security advisory policy.

Manage Cloudflare Queues from Drupal as configuration, and run Drupal's queue system on them with no code changes. Register a queue that already exists in your Cloudflare account, or provision a new managed one; the module records its name, its Cloudflare-generated id, and the credential set it uses, so the rest of the suite can consume it.

Cloudflare Queues is a managed message queue. This module is the control layer that provisions and tracks queues as Drupal configuration, so you do not have to create or wire up the queue by hand. Its companion, the Cloudflare Queue module, provides a Drupal queue backend (for cron queues, the Batch API, and custom queue workers) that runs on a provisioned queue.

Features

  • A cloudflare_queue configuration entity: each queue is stored as configuration (its name, its Cloudflare-generated id, and the credential set it uses). No secret is stored in configuration.
  • A queue provisioning primitive (provider, catalog, and asset kind) that the Cloudflare-for-Drupal provisioning engine uses to create, reconcile, and register queues.
  • An administration UI at Configuration > Web services > Cloudflare Queues to add, edit, and delete queues, with a detail page for each queue.
  • A queue's HTTP pull consumer (its retry limit and dead-letter queue) managed as desired state on the queue asset, reconciled whenever the asset is saved or imported; a status report row and the queue's detail page show the outcome and any drift.
  • Read-only-token safe: listing and status checks degrade gracefully when the API token cannot write.

Post-Installation

  1. Add a credential set (a Cloudflare account ID and an API token with Queues permission) as described by the Cloudflare SDK module. The token lives in settings.php, never in configuration.
  2. Register a queue that already exists in your account: go to Configuration > Web services > Cloudflare Queues, or straight to /admin/config/services/cloudflare/queues/add. To create a new queue, provision it in code through the Cloudflare SDK's reconciler, as the Cloudflare Queue module's capability does.
  3. To run a Drupal queue on Cloudflare Queues, install the Cloudflare Queue module and opt a queue onto it in settings.php.

Additional Requirements

Requires Drupal 11.2 or later, the Cloudflare API (cloudflare_api) and Cloudflare SDK (cloudflare_sdk) modules, and a Cloudflare API token with Queues permission. While the suite is in alpha, install it together with its alpha dependencies:

composer require drupal/cloudflare_compute:^1.0@alpha drupal/cloudflare_sdk:^1.0@alpha drupal/cloudflare_api:^1.0@alpha

Composer applies a stability flag such as @alpha only to packages the root composer.json requires, so on a site with minimum-stability: stable, requiring this module alone fails. Alternatively, allow alpha releases site-wide with minimum-stability: alpha and prefer-stable: true.

  • Cloudflare Queue (cloudflare_queue): a Drupal queue backend (ReliableQueueInterface) that runs on a queue provisioned by this module.

Similar projects

Other Drupal queue backends, such as the core database queue or the RabbitMQ and AWS SQS modules, provide a queue implementation but leave you to stand up and wire the broker yourself. Here the queue is provisioned and tracked for you as a configuration entity, and the data plane runs over the Cloudflare Queues HTTP API with no worker or extra service to operate.

Supporting this Module

Issue reports, patches and feedback are welcome in the project's issue queue.

Community Documentation

Supporting organizations: 
Development & Maintenance

Project information

Releases