Google cloud scheduler で Functionsを定期実行する
はじめに
最初にSchedulerに実行させる Functionsを作成
※ 定期実行させるFunctionsの作成、デプロイはこちらの投稿を参照
ポイント
- Functionsは以下コマンドでデプロイを行うとPub/Subトピックが自動的に作成される
- Pub/Subを実行すると対象のFunctionsが実行される
- Schedulerから指定した時間でPub/Subを実行しFunctionsを実行する
ポイントは--trigger-topic
でこれを指定するとPub/Subで実行するFunctionsが作成される
gcloud functions deploy favorite --timeout=300 --entry-point=favorite --source=./functions/favorite --runtime python37 --trigger-topic favorite_action --allow-unauthenticated
下記は私が作ったFunctions
Pub/Subも作られる
スケジューラー設定
頻度はcrontabの設定と同じ
ターゲットはPub/Sub、HTTPが指定できる
今回はPub/Sub
トピックに対象のPub/Subを指定する
このSchedulerの場合、毎日10〜22時ちょうどにFunctionsが実行される