Hejdaの見る夢

一人前のエンジニアを目指して頑張ったこととかをつらつら書くブログ

Cloud Build Trigger が指定した時間に実行( Run on schedule )出来るようになったので試してみる

概要

Cloud Build の Trigger を指定した時間に実行する機能が追加実装されました。

その機能をさっそく使ってみようと思います :)

なお、 2021 年 2 月の時点では Preview となっています。

Cloud Build とは

GCP のフルマネージドの CI/CD 基盤であり、昨今の DevOps には欠かせない機能の一つです。

Cloud Build

今回の追加機能について

今までは Cloud Build を実行するトリガーは、連携している Repository に対してのイベントをフックするか、 API 的に外部から実行するしかありませんでした。

新しい追加機能は Cloud Build から Cloud Scheduler を直接設定することが出来るようになりました。

つまり…

今まで、 Cloud Build を定期実行させたい場合は自分で以下の構成をする必要がありました。

  • Cloud Scheduler -> Cloud Pub/Sub -> Cloud Functions -> Cloud Build

f:id:nari_kyu:20210215231314p:plain

今回の追加機能では以下のよう(※ ユーザが実装する部分という意味で)になります。

  • Cloud Scheduler -> Cloud Build

f:id:nari_kyu:20210215231317p:plain

意識して管理するコンポーネントが減るので運用負荷が減り、サービス開発においても出来ることが増えるので、早めに習得しておきましょう :)

公式ドキュメント

Creating manual triggers | Scheduling your build

実際にやってみる

Cloud Build Trigger を作成

GCP コンソールより、 Cloud Build をクリック

f:id:nari_kyu:20210215231319p:plain

Cloud Build の API を有効化する(初回のみ)

f:id:nari_kyu:20210215231323p:plain

Cloud Build の画面( History )

f:id:nari_kyu:20210215231326p:plain

Cloud Build の画面( Triggers ) に移動し、 CREATE TRIGGER をクリック

f:id:nari_kyu:20210215231329p:plain

テスト的に Trigger を作成する

他の設定はデフォルトのままで。

設定を入れたら CREATE をクリック

f:id:nari_kyu:20210215231333p:plain

Cloud Build Trigger の作成が完了したので RUN をクリック

f:id:nari_kyu:20210215231337p:plain

main ブランチを選択し、 Trigger を実行

f:id:nari_kyu:20210215231341p:plain

History をクリックし、実際の実行結果を確認するために実行中の Build をクリック

f:id:nari_kyu:20210215231344p:plain

Build の内容を確認し、正常に実行出来ているかを確認する

f:id:nari_kyu:20210215231346p:plain

作成した Cloud Build Trigger を定期実行するように設定する

Cloud Scheduler の API を有効化する

下記の URL を別タブで開き、 Cloud Scheduler の API を有効化する

https://console.cloud.google.com/marketplace/product/google/cloudscheduler.googleapis.com

f:id:nari_kyu:20210215231350p:plain

作成した Trigger のケバブメニュー(縦に3つの点があるボタン)をクリック

f:id:nari_kyu:20210215231353p:plain

Run on schedule をクリック

f:id:nari_kyu:20210215231355p:plain

Cloud Scheduler で使用する Service Account を選択し、 CONTINUE をクリック

デフォルトで選択されているものを使用する

f:id:nari_kyu:20210215231359p:plain

Cloud Scheduler を実行するリージョンを選択するために、 SET REGION をクリック

f:id:nari_kyu:20210215231403p:plain

Cloud Scheduler を実行するリージョンを選択する

asia-northeast1 を選択

f:id:nari_kyu:20210215231406p:plain

Cloud Scheduler の設定をする

  • Name : Cloud Scheduler の Job 名
  • Frequency: 繰り返しの設定
  • TimeZone: 繰り返しの設定のタイムゾーン

今回は 5 分毎に実行するように設定する

f:id:nari_kyu:20210215231409p:plain

作成完了

f:id:nari_kyu:20210215231413p:plain

History をクリックし、定期実行されるのを待つ

f:id:nari_kyu:20210215231416p:plain

1 時間くらい待った結果、ちゃんと 5 分毎に実行されているのが分かる

f:id:nari_kyu:20210215231419p:plain

まとめ

今回は Cloud Build の追加機能を試してみました。

サービス開発がより効率的に出来るようになるので、 GA (General Availability) が楽しみですね!!

なお繰り返しになりますが、この記事を書いている時点ではこの追加機能は Preview なので、ご利用は自己責任かつ計画的にお願いします。

Have fun !! :)