皆さんTQつかってますか。
ちゃんと使うとめちゃくちゃ便利なTQ(Cloud Tasks)ですが、コマンドでサクッと作ったり消したりしたい(特に消したい)というのがあったので記事にしました。
TQを作成する
以下のようなコマンドでTQを作成します。
gcloud --project ${PROJECT_ID} beta tasks queues create hoge-test
--project ${PROJECT_ID}
は gcloud コマンドに対して事前に gcloud config set project ${PROJECT_ID}
などを実施している方は抜いても実行可能です。
TQを操作するAPIが有効化されていないプロジェクトでは初回以下のような表示が出ますので y
と押してエンター押し有効化しましょう。
API [cloudtasks.googleapis.com] not enabled on project [000000000000]. Would you like to enable and retry (this will take a few minutes)? (y/N)?
(有効化していない場合には有効化完了のログが出力された後に)
Queue作成が Created queue [QUEUE_NAME].
のようなログとともに完了します。
UIからQueueの作成を確認
Cloud Tasks のWebUIから作成したTQが確認できます。
コマンドからTQの作成を確認
以下のようなコマンドを実行します
gcloud --project ${PROJECT_ID} beta tasks queues list
結果は以下のように表示されます
QUEUE_NAME STATE MAX_NUM_OF_TASKS MAX_RATE (/sec) MAX_ATTEMPTS hoge-test RUNNING 1000 500.0 100
TQを削除する
TQの削除もコマンドから実行できます。
GAEの queue.yaml で管理していると削除したTQが残りがちなのでそういう場合にはコマンドで消してしまいましょう。
以下のようなコマンドを実行します。
gcloud --project ${PROJECT_ID} beta tasks queues delete hoge-test
削除の際には y/n を入力する必要があります
--quiet
オプションを gcloud コマンドのオプションとしてつけることで y/n 入力を省くことができます。
create-app-engine-queue コマンドってなんやねん
createの他に create-app-engine-queue
というオプションもあります。
作成したものは見かけ上(WebUI/commandともに)違いがなさそうですが、appengine用のTQを作成する際にはこちらのコマンドを使ったほうが良いのかな [要出典]
まとめ
TQを作成する際のオプションはいろいろ細かくあるんですが、
今回はひとまずシンプルなものを作成して、削除することがコマンドでできるよ、という記事でした。
ではでは。