

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AWS CodeBuild で AWS CodePipeline を使用してコードをテストし、ビルドを実行する
<a name="how-to-create-pipeline"></a>

 AWS CodePipeline を使用してコードをテストし、 でビルドを実行することで、リリースプロセスを自動化できます AWS CodeBuild。

次の表に示しているのは、タスクとその実行に使用できるメソッドです。これらのタスクを AWS SDK で達成する方法については、このトピックの対象外です。


****  

| タスク | 使用可能なアプローチ | このトピックで説明するアプローチ | 
| --- | --- | --- | 
| CodeBuild でビルドを自動化する CodePipeline を使用して、継続的な配信 (CD) パイプラインを作成する |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/codebuild/latest/userguide/how-to-create-pipeline.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/codebuild/latest/userguide/how-to-create-pipeline.html)  | 
| 既存の CodePipeline のパイプラインに CodeBuild でのテストおよびビルドの自動化を追加する |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/codebuild/latest/userguide/how-to-create-pipeline.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/codebuild/latest/userguide/how-to-create-pipeline.html)  | 

**Topics**
+ [前提条件](#how-to-create-pipeline-prerequisites)
+ [CodeBuild を使用するパイプラインを作成する (CodePipeline コンソール)](how-to-create-pipeline-console.md)
+ [CodeBuild を使用するパイプラインの作成 (AWS CLI)](how-to-create-pipeline-cli.md)
+ [CodeBuild ビルドアクションをパイプラインに追加する (CodePipeline コンソール)](how-to-create-pipeline-add.md)
+ [CodeBuild テストアクションをパイプラインに追加する (CodePipeline コンソール)](how-to-create-pipeline-add-test.md)

## 前提条件
<a name="how-to-create-pipeline-prerequisites"></a>

1. [ビルドを計画する](planning.md) の質問に答えます。

1.  AWS ルートアカウントまたは管理者ユーザーの代わりに ユーザーを使用して CodePipeline にアクセスする場合は、 という名前の管理ポリシー`AWSCodePipelineFullAccess`をユーザー (またはユーザーが属する IAM グループ) にアタッチします。 AWS ルートアカウントの使用はお勧めしません。このポリシーは、CodePipeline でパイプラインを作成するためのアクセス許可をユーザーに付与します。詳細については、*ユーザーガイド*の「[管理ポリシーをアタッチする](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-using.html#attach-managed-policy-console)」を参照してください。
**注記**  
ポリシーをユーザー (またはユーザーが属する IAM グループ) にアタッチする IAM エンティティは、ポリシーをアタッチするために IAM でのアクセス許可を持っている必要があります。詳細については、*ユーザーガイド*の「[IAM ユーザー、グループ、および認証情報を管理するためのアクセス許可の委任](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_delegate-permissions.html)」を参照してください。

1.  AWS アカウントに CodePipeline のサービスロールがまだない場合は、作成します。CodePipeline はこのサービスロールを使用して、 AWS CodeBuildユーザーに代わって を含む他の AWS サービスとやり取りします。たとえば、 を使用して CodePipeline サービスロール AWS CLI を作成するには、IAM `create-role` コマンドを実行します。

   Linux、macOS、Unix の場合:

   ```
   aws iam create-role --role-name AWS-CodePipeline-CodeBuild-Service-Role --assume-role-policy-document '{"Version": "2012-10-17",		 	 	 "Statement":{"Effect":"Allow","Principal":{"Service":"codepipeline.amazonaws.com"},"Action":"sts:AssumeRole"}}'
   ```

   Windows の場合:

   ```
   aws iam create-role --role-name AWS-CodePipeline-CodeBuild-Service-Role --assume-role-policy-document "{\"Version\":\"2012-10-17\",		 	 	 \"Statement\":{\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"codepipeline.amazonaws.com\"},\"Action\":\"sts:AssumeRole\"}}"
   ```
**注記**  
この CodePipeline のサービスロールを作成する IAM エンティティは、サービスロールを作成するために IAM のアクセス許可を持っている必要があります。

1. CodePipeline サービスロールを作成した後、または既存のサービスロールを識別した後、*AWS CodePipeline ユーザーガイド*の[デフォルトの CodePipeline サービスロールポリシーを確認する](https://docs.aws.amazon.com/codepipeline/latest/userguide/iam-identity-based-access-control.html#how-to-custom-role)で説明されているように、デフォルトの CodePipeline サービスロールポリシーをサービスロールに追加する必要があります (ロールのポリシーの一部になっていない場合)。
**注記**  
この CodePipeline サービスロールのポリシーを追加する IAM エンティティは、サービスロールポリシーをサービスロールに追加するために IAM のアクセス許可を持っている必要があります。

1. CodeCommit、Amazon S3、Bitbucket、GitHub など、CodeBuild と CodePipeline でサポートされているリポジトリタイプにソースコードを作成してアップロードします。ソースコードには buildspec ファイルが含まれている必要がありますが、このトピックの後半でビルドプロジェクトを定義するときにそのファイルを宣言できます。詳細については、「[ビルド仕様 (buildspec) に関するリファレンス](build-spec-ref.md)」を参照してください。
**重要**  
パイプラインを使用してビルド済みのソースコードをデプロイする場合、ビルド出力アーティファクトには、使用するデプロイシステムとの互換性が必要です。  
については OpsWorks、*OpsWorks 「 ユーザーガイド*」の[「アプリケーションソース](https://docs.aws.amazon.com/opsworks/latest/userguide/workingapps-creating.html#workingapps-creating-source)」と「 [での CodePipeline の使用 OpsWorks](https://docs.aws.amazon.com/opsworks/latest/userguide/other-services-cp.html)」を参照してください。