Cloud Build
ビルド構成
https://cloud.google.com/cloud-build/docs/build-config
- docker build -> Dockerfile
- その他の処理 -> ビルド構成ファイル(YAML or JSON)
ビルド構成ファイル
https://cloud.google.com/cloud-build/docs/build-config?hl=ja#structure_of_a_build_config_file
ビルドステップ
https://cloud.google.com/cloud-build/docs/build-config?hl=ja#build_steps
- name … クラウドビルダーを指定する
- args … 引数リスト
- entrypoint … ビルダーのデフォルトのエントリーポイント(実行コマンド)を上書き可能
ビルドトリガーによるビルドの自動化
ドキュメント:
- ビルドトリガーを使用したビルドの自動化 | Cloud Build のドキュメント | Google Cloud
- Creating and managing build triggers | Cloud Build Documentation
MEMO:
- GCSR, GitHub or Bitbucketにソースコードが必要
- Bitbucketの場合GCSRにミラーリングするか、コンソールからリポジトリ登録時に認証を行う
トリガー設定
項目 | 必須? | 説明 |
---|---|---|
Source | Yes | リポジトリとブランチ/タグを選ぶ |
Included files | No | 設定されていると、ビルドをトリガーするには最低でもここに含まれるいずれかのファイルの変更が必要 |
Ignored files | No | 設定されたファイルリストのみの変更はビルドをトリガーしない |
Included files / Ignored filesについて:
- あるファイルを両方に指定したら、そのファイルへの変更はビルドをトリガーしない
- 新規ブランチをpushした場合、全ファイルが変更されたとみなされる
ビルド通知の送信
https://cloud.google.com/cloud-build/docs/send-build-notifications
Cloud Buildでは、ビルドの作成時・動作状態への移行時・完了時などビルド状態の変化時にCloud Pub/Subトピック cloud-builds
にメッセージを公開する。
他のツール:
権限管理
サービスアカウントで設定する。
ドキュメント:
How-to
ビルド通知をSlackに送信
ドキュメント:
上のようにCloud Functionを書けばよい。
参考:
最終更新 2021-03-17: [gcp,terraform] Add some notes (b1b104bee)