

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

# チュートリアル: コンピューティングを使用してコマンドを実行するパイプラインを作成する (V2 タイプ)
<a name="tutorials-commands"></a>

このチュートリアルでは、ビルドステージでコマンドアクションを使用して、指定したビルドコマンドを継続的に実行するパイプラインを設定します。コマンドアクションの詳細については、「[コマンドアクションリファレンス](action-reference-Commands.md)」を参照してください。

**重要**  
パイプライン作成の一環として、CodePipeline は、ユーザーが指定した S3 アーティファクトバケットをアーティファクトとして使用します (これは S3 ソースアクションで使用するバケットとは異なります)。S3 アーティファクトバケットがパイプラインのアカウントとは異なるアカウントにある場合は、S3 アーティファクトバケットが によって所有 AWS アカウント されており、安全で信頼できることを確認してください。

## 前提条件
<a name="tutorials-commands-prereq"></a>

以下のものを用意しておく必要があります。
+ GitHub リポジトリ。「[チュートリアル: CodeCommit パイプラインソースで完全なクローンを使用する](tutorials-github-gitclone.md)」で作成した GitHub リポジトリを使用できます。

## ステップ 1: ソースファイルを作成して GitHub リポジトリにプッシュする
<a name="tutorials-commands-push"></a>

このセクションでは、サンプルのソースファイルを作成して、パイプラインがソースステージで使用するリポジトリにプッシュします。この例では、以下を作成してプッシュします。
+ `README.txt` ファイル。

**ソースファイルを作成するには**

1. 次のテキストを含むファイルを作成します。

   ```
   Sample readme file
   ```

1. `README.txt` という名前でファイルを保存します。

**ファイルを GitHub リポジトリにプッシュするには**

1. ファイルを リポジトリにプッシュまたはアップロードします。これらのファイルは、 AWS CodePipelineでのデプロイアクションのために **パイプライン作成** ウィザードによって作成されたソースアーティファクトです。ファイルは、ローカルディレクトリに次のように表示されます。

   ```
   README.txt
   ```

1. ローカルコンピュータで複製されたリポジトリから Git コマンドラインを使用するには:

   1. 以下のコマンドを実行して、すべてのファイルを一度にステージングします。

      ```
      git add -A
      ```

   1. 以下のコマンドを実行して、コミットメッセージによりファイルをコミットします。

      ```
      git commit -m "Added source files"
      ```

   1. 以下のコマンドを実行して、ローカルリポジトリから リポジトリにファイルをプッシュします。

      ```
      git push
      ```

## ステップ 2: パイプラインを作成する
<a name="tutorials-commands-pipeline"></a>

このセクションでは、次のアクションを使用してパイプラインを作成します。
+ ソースファイルが保存されているリポジトリの GitHub (GitHub アプリ経由) アクションを含むソースステージ。
+ コマンドアクションを含むビルドステージ。

**ウィザードを使用してパイプラインを作成するには**

1. にサインイン AWS マネジメントコンソール し、[http://console.aws.amazon.com/codesuite/codepipeline/home](https://console.aws.amazon.com/codesuite/codepipeline/home) で CodePipeline コンソールを開きます。

1. [**ようこそ**] ページ、[**開始方法**] ページ、または [**パイプライン**] ページで、[**パイプラインの作成**] を選択します。

1. **[ステップ 1: 作成オプションを選択する]** ページの **[作成オプション]** で、**[カスタムパイプラインを構築する]** オプションを選択します。**[次へ]** を選択します。

1. **[ステップ 2: パイプラインの設定を選択する]** で、**[パイプライン名]** に「**MyCommandsPipeline**」と入力します。

1. CodePipeline は、特徴と料金が異なる V1 タイプと V2 タイプのパイプラインを提供しています。V2 タイプは、コンソールで選択できる唯一のタイプです。詳細については、「[パイプラインタイプ](https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types-planning.html?icmpid=docs_acp_help_panel)」を参照してください。CodePipeline の料金については、[料金](https://aws.amazon.com/codepipeline/pricing/)を参照してください。

1. [**サービスロール**] で、[**新しいサービスロール**] を選択し、CodePipeline に IAM でのサービスロールの作成を許可します。
**注記**  
既存のサービスロールを使用している場合、コマンドアクションを使用するには、サービスロールに以下のアクセス許可を追加する必要があります。サービスロールポリシーステートメントでリソースベースのアクセス許可を使用して、アクセス許可の範囲をパイプラインリソースレベルに絞り込みます。詳細については、「[サービスロールのポリシーのアクセス許可](action-reference-Commands.md#action-reference-Commands-policy)」のポリシー例を参照してください。  
logs:CreateLogGroup
logs:CreateLogStream
logs:PutLogEvents

1. [**詳細設定**] をデフォルト設定のままにし、[**次へ**] を選択します。

1. **[ステップ 3: ソースステージの追加]** ページで、ソースステージを追加します。

   1. **[ソースプロバイダー]** で、**[GitHub (GitHub アプリ経由)]** を選択します。

   1. **接続** で、既存の接続を選択するか、新規の接続を作成します。GitHub ソースアクション用の接続を作成または管理するには、「[GitHub コネクション](connections-github.md)」を参照してください。

   1. **[リポジトリ名]** で、GitHub.com リポジトリの名前を選択します。

   1. [**デフォルトブランチ**] で、パイプラインを手動で開始する場合、または Git タグではないソースイベントで開始する場合に指定するブランチを選択します。変更元がトリガーでない場合やパイプラインの実行が手動で開始された場合は、デフォルトブランチの HEAD コミットが変更として使用されます。必要に応じて、フィルタリング (トリガー) を使用してウェブフックを指定することもできます。詳細については、「[トリガーとフィルタリングを使用してパイプラインを自動的に開始する](pipelines-triggers.md)」を参照してください。

   **[Next]** (次へ) を選択します。

1. **[ステップ 4: ビルドステージ を追加する]** で、**[コマンド]** を選択します。
**注記**  
コマンドアクションを実行すると、 AWS CodeBuildで別途料金が発生します。

   以下のコマンドを入力します。

   ```
   ls
   echo hello world
   cat README.txt
   echo pipeline Execution Id is #{codepipeline.PipelineExecutionId}
   ```

   [**次へ**] を選択します。  
![\[コマンドアクションを使用した新しいパイプラインの [ステップ 4: ビルドステージの追加] ページ\]](http://docs.aws.amazon.com/ja_jp/codepipeline/latest/userguide/images/commands-wizard-screen.png)

1. **[ステップ 5: テストステージの追加]** で、**[テストステージをスキップ]** を選択し、もう一度 **[スキップ]** を選択して警告メッセージを受け入れます。

   [**次へ**] を選択します。

1. **[ステップ 6: デプロイステージの追加]** ステージで、**[デプロイステージをスキップ]** を選択し、もう一度 **[スキップ]** を選択して警告メッセージを受け入れます。

   [**次へ**] を選択します。

1. **ステップ 7: **情報を確認してから、**パイプラインの作成**を選択します。

1. アクションを作成するための最後のステップとして、アクションの出力変数となる環境変数をアクションに追加します。コマンドアクションで、**[編集]** を選択します。**[編集]** 画面で、**[変数の名前空間]** フィールドに「`compute`」と入力して、アクションの変数の名前空間を指定します。

   CodeBuild 出力変数 `AWS_Default_Region` を追加し、**[変数を追加]** を選択します。  
![\[コマンドアクションの [編集] ページ\]](http://docs.aws.amazon.com/ja_jp/codepipeline/latest/userguide/images/commands-output-edit-var.png)

## ステップ 3: パイプラインを実行してビルドコマンドを検証する
<a name="tutorials-commands-update"></a>

変更をリリースして、パイプラインを実行します。実行履歴、ビルドログ、出力変数を表示して、ビルドコマンドが実行したことを確認します。

**アクションのログと出力変数を表示するには**

1. パイプラインが正常に実行したら、アクションのログと出力を表示できます。

1. アクションの出力変数を表示するには、**[履歴]**し、**[タイムライン]** の順に選択します。

   アクションに追加した出力変数を表示します。コマンドアクションの出力に、アクション Region に解決された出力変数が表示されます。  
![\[アクション Region に解決された出力変数を示すコマンドアクションの出力\]](http://docs.aws.amazon.com/ja_jp/codepipeline/latest/userguide/images/commands-output-variable.png)

1. アクションのログを表示するには、成功したコマンドアクションの **[詳細を表示]** を選択します。コマンドアクションのログを表示します。  
![\[コマンドアクションのログ例\]](http://docs.aws.amazon.com/ja_jp/codepipeline/latest/userguide/images/commands-output-logs.png)