

Amazon CodeCatalyst は新規のお客様には提供されなくなりました。既存のお客様は、通常どおりサービスを引き続き使用できます。詳細については、「[CodeCatalyst から移行する方法](migration.md)」を参照してください。

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

# 3 層のモダンウェブアプリケーションのブループリントワークフローの **OnPullRequest** が Amazon CodeGuru のアクセス許可エラーで失敗する
<a name="projects-troubleshooting-onpullrequest"></a>

**問題:** プロジェクトのワークフローを実行しようとすると、ワークフローは実行に失敗し、次のメッセージが表示されます。

```
Failed at codeguru_codereview: The action failed during runtime. View the action's logs for more details.
```

``

**解決策:** このアクションの失敗の考えられる原因の 1 つは、IAM ロールポリシーのアクセス許可がないことが原因である可能性があります。接続されている で CodeCatalyst が使用するサービスロールのバージョン AWS アカウント に、**codeguru\$1codereview** アクションが正常に実行されるために必要なアクセス許可がありません。この問題を修正するには、サービスロールを必要なアクセス許可で更新するか、ワークフローに使用されるサービスロールを Amazon CodeGuru および Amazon CodeGuru Reviewer に必要なアクセス許可を持つサービスロールに変更する必要があります。次のステップを使用して、ロールを検索し、ロールポリシーのアクセス許可を更新して、ワークフローが正常に実行されるようにします。

**注記**  
これらのステップは、CodeCatalyst の以下のワークフローに適用されます。  
CodeCatalyst の 3 層モダンウェブアプリケーションのブループリントで作成されたプロジェクトの **OnPullRequest** ワークフロー。
Amazon CodeGuru または Amazon CodeGuru Reviewer にアクセスするアクションを使用して CodeCatalyst のプロジェクトに追加されたワークフロー。

各プロジェクトには、CodeCatalyst のプロジェクト AWS アカウント に接続された によって提供されるロールと環境を使用するアクションを含むワークフローが含まれています。アクションとその指定されたポリシーを含むワークフローは、/.codecatalyst/workflows ディレクトリのソースリポジトリに保存されます。既存のワークフローに新しいロール ID を追加しない限り、ワークフロー YAML の変更は必要ありません。YAML テンプレートの要素とフォーマットの詳細については、「[ワークフロー YAML 定義](workflow-reference.md)」を参照してください。

これらは、ロールポリシーを編集し、ワークフロー YAML を検証するためのステップの概要です。

**ワークフロー YAML でロール名を参照し、ポリシーを更新するには**

1. [https://codecatalyst.aws/](https://codecatalyst.aws/) で CodeCatalyst コンソールを開きます。

1. CodeCatalyst スペースに移動します。プロジェクトに移動します。

1. **[CI/CD]** を選択し、**[ワークフロー]** を選択します。

1. **[OnPullRequest]** というタイトルのワークフローを選択します。**[Definition]** (定義) タブを選択します。

1. ワークフロー YAML の **codeguru\$1codereview** アクションの `Role:` フィールドで、ロール名を書き留めます。これは、IAM で変更するポリシーのロールです。以下の例は、ロール名を示しています。  
![\[ワークフロー YAML で IAM ロール名を表示する\]](http://docs.aws.amazon.com/ja_jp/codecatalyst/latest/userguide/images/projects/ts-workflow-role.png)

1. 次のいずれかを行います。
   + (推奨) Amazon CodeGuru および Amazon CodeGuru Reviewer に必要なアクセス許可を使用して、プロジェクトに接続されたサービスロールを更新します。ロールには、一意の識別子が付加された `CodeCatalystWorkflowDevelopmentRole-spaceName` という名前が付けられます。ロールとロールポリシーの詳細については、「[**CodeCatalystWorkflowDevelopmentRole-*spaceName*** サービスロールについて](ipa-iam-roles.md#ipa-iam-roles-service-role)」を参照してください。次のステップに進み、IAM でポリシーを更新します。
**注記**  
ロールとポリシー AWS アカウント を持つ への AWS 管理者アクセス権が必要です。
   + ワークフローに使用されるサービスロールを、Amazon CodeGuru および Amazon CodeGuru Reviewer に必要なアクセス許可を持つサービスロールに変更するか、必要なアクセス許可を持つ新しいロールを作成します。

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

   IAM コンソールで、ステップ 5 のロール (`CodeCatalystPreviewDevelopmentRole` など) を見つけます。

1. ステップ 5 のロールで、アクセス許可ポリシーを変更して `codeguru-reviewer:*` および `codeguru:*` のアクセス許可を含めます。これらのアクセス許可を追加した後、アクセス許可ポリシーは次のようになります。

1. ポリシーを修正したら、CodeCatalyst に戻り、ワークフローの実行を再度開始します。