-
Notifications
You must be signed in to change notification settings - Fork 64
creating pull queues
Pull Queues is not supported for this runtime.
This page describes how to create a pull queue. You must create the queue before you can add tasks to it. The page also describes how to pause or delete a queue.
You can define pull queues using the queue.yaml file for your application. The
process is the same as creating named push
queues, with a specialized directive, mode: pull, added to the file.
queue:
- name: my-queue-name
mode: pull
You use the gcloud CLI gcloud command to upload the file.
gcloud app deploy `queue.yaml`
Note: If you are using a service account to manage authentication for deploying
your queue configuration file, it needs to have the serviceusage.services.list
permission. This permission can be added either using the
serviceusage.serviceUsageViewer
role or by creating a custom
role with that
permission.
Caution: Queue creation for the Task Queue service can also be managed using
Queue Management methods available directly through the Cloud Tasks API, but
mixing the queue.yaml upload method with Queue Management methods can
produce unexpected results and is not recommended. For more information, see
Overview of Queue Management and
queue.yaml. Also note that
uploading a queue.yaml file via the gcloud CLI below version 332.0.0 uses a
deprecated interface to the service. Starting on 2022-09-20, attempts to use
the upload method can fail with server errors. To resolve this, make sure the
Cloud Tasks API is enabled in your project and your gcloud CLI is updated to at
least version 332.0.0.
You can disable, or pause, a queue by removing its definition from your queue configuration file and then uploading the updated file.
Once the updated file is uploaded, the queue is set to "disabled" and its rate is set to 0. Any tasks that are in the queue or new tasks that are added to the queue will not be processed. You can re-enable the disabled queue by uploading a new queue file with the queue defined.
You can also pause a queue from within the Cloud Tasks page in the Google Cloud console.
To delete a queue you must first disable it:
-
Remove the queue definition from your queue configuration file.
-
Upload the changed file.
gcloud app deploy `queue.yaml`
Once the queue is disabled, use the Google Cloud console to delete it.
-
In the Google Cloud console, select the queue.
-
Click Delete queue.
If you delete a queue from the Google Cloud console, you must wait 7 days before recreating with the same name.
Important: The local development server (dev_appserver) does not support pull
queues. To test your pull queues and make sure you have the details of your
configuration correct, you'll need to push your queue configuration file to an
App Engine staging environment.
Learn how to create tasks.