ひとことで言うと
ソースコードのコンパイル・単体テストの実行・デプロイ可能な成果物の作成を、ビルドサーバーの用意も管理もせずに行うフルマネージドサービスです。
要するに、時間貸しの工作室です。Java/Python/Node.js 向けの道具(ビルド環境)はあらかじめ揃っていて、使った分だけ課金されます。工作機械(ビルドサーバー)を自分で買って並べる必要がありません。
何に使うか
| 用途 | 使い方 |
|---|---|
| GenAIアプリのコードのビルド | buildspec に手順を書き、事前構築済みのランタイム環境か独自イメージで実行する |
| テストの自動実行 | CodePipeline のテストアクションとして、単体テストや検証スクリプトを走らせる |
| 需要変動への対応 | ビルドリクエストに応じて自動スケールし、サーバーの増減作業が不要になる |
試験でどう問われるか
主役では出ません。出るとすれば、CodePipeline のビルド/テストステージに配置するアクションの選択肢としてです。
| 問われ方 | 正解に寄る条件 |
|---|---|
| 「パイプラインでコードのビルドとテストを自動化したい」 | CodeBuild をビルド/テストアクションとして選ぶ |
取り違えやすいもの
| 迷う相手 | 切り分けの一言 |
|---|---|
| CodePipeline | CodePipeline はソース→ビルド→デプロイの工程全体を編成する側。CodeBuild はその中の「ビルド」を実行する部品 |
| CodeDeploy | CodeBuild は成果物を作る、CodeDeploy はそれを配る。工程上の前後関係が逆 |
想起チェック
Q1. CodeBuild が CodePipeline の中で担う工程は?
ビルド/テストステージです。ソースのコンパイルや単体テストの実行、デプロイ可能な成果物の作成を担当し、デプロイ自体は行いません。