Cloud Build
https://gyazo.com/e35cdc4dcec578b7ad3a72e40357463b
概要
イメージのビルドとGCRへの登録の2stepを一気に行える Docker コンテナや Java アーカイブなどのアーティファクトを生成できる
Cloud Buildは、アプリケーションのビルド以外にアプリケーションのデプロイなどもできるため、CI/CDの実行エージェントとして使われる
Cloud BuildをTerraformの実行エージェントとして使うケースもあったり
プール
デフォルトプール
プライベートプール
VPCネットワーク経由でのGoogle Cloudのリソースへのアクセス
ビルドのVPC Service Contolsの境界による保護
実行環境からのパブリックIPの削除
コマンド
イメージのビルドとgcrへの登録
gcloud builds submit --tag gcr.io/ohnohiroki/ammonite
substitutions(変数の置換)
gcloud builds submit .... --substitutions=TAG_NAME="test"
設定ファイルの変数(substitutions)を置き換える
code:sh
gcloud builds submit --config=cloudbuild.yaml \
--substitutions=_NODE_VERSION_1="v6.9.4",_NODE_VERSION_2="v6.9.5" .
こんな感じで複数の変数置換指定もできる
beta
gcloud beta buildsじゃないとsubmitした時とかにログが標準出力されてくれない
ネットワーク
Cloud Buildのステップ内部でDockerコンテナを使い、コンテナからApplication Default Credentialも使いたい場合は--network=cloudbuildを指定する
/icons/hr.icon