建物を建てるように、アプリをビルドしよう!
buildspec.yamlは、 建物を建てる時の詳細な作業手順書 のようなものです。建設現場では、まず土台を作り、骨組みを組み立て、壁を作り、最後に仕上げをしますよね。CodeBuildも同じように、アプリケーションを段階的に「建設」していきます。
buildspec.yamlは、AWS CodeBuildに「どのようにアプリケーションをビルド(構築)するか」を指示するファイルです。このファイルがないと、CodeBuildはあなたのコードをどう処理していいか分からなくなってしまいます。
必要な道具や材料を準備する段階。Node.jsやPythonなどのランタイムをインストールします。
本格的な作業の前準備。依存関係のインストールやテスト環境の設定を行います。
メインの建設作業。アプリのコンパイル、テスト実行、Docker イメージの作成などを行います。
仕上げ作業。成果物の最終チェックや、デプロイ先への配置準備を行います。
Webアプリのビルドは 料理 にも似ています。材料(ソースコード)を準備し、調理器具(ビルドツール)を用意し、レシピ通り(buildspec.yaml)に調理して、最終的に美味しい料理(動くアプリ)を完成させます。
建設現場で言う「作業環境の設定」です。どの環境で作業するか(本番環境?テスト環境?)を指定します。
建設完了後の「完成した建物」に相当します。ビルドで作成されたファイルのうち、どれを保存・配布するかを指定します。
現在は
version: 0.2
を使用します。これは「作業手順書のフォーマットバージョン」のようなものです。
pre_build: Docker ログイン
build: イメージ作成
post_build: レジストリにプッシュ
pre_build: npm install
build: npm run build
post_build: S3にアップロード
pre_build: 依存関係インストール
build: テスト実行
post_build: デプロイ
buildspec.yamlは、あなたのアプリケーションを自動で「建設」するための 設計図 です。 一度作成すれば、CodeBuildが毎回同じ手順で確実にビルドしてくれます。
実際にbuildspec.yamlを作成して、AWS CodeBuildでビルドを試してみましょう!
Created by SSuzuki1063
AWS SAP Learning Resources