

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

# GitHub の接続
<a name="connecting-to-cicd-pipelines-connecting-github"></a>

GitHub 統合により、 AWS DevOps Agent はコードリポジトリにアクセスし、インシデント調査中にデプロイイベントを受信できます。この統合は、GitHub のアカウントレベルの登録と、特定のリポジトリを個々のエージェントスペースに接続するという 2 つのステップのプロセスに従います。

AWS DevOps Agent は、GitHub.com (SaaS) インスタンスと GitHub Enterprise Server (セルフホスト) インスタンスの両方をサポートしています。

## 前提条件
<a name="prerequisites"></a>

GitHub を接続する前に、以下を確認してください。
+  AWS DevOps エージェント管理コンソールへのアクセス
+ 管理者権限を持つ GitHub ユーザーアカウントまたは組織
+ アカウントまたは組織に GitHub アプリをインストールする認可

GitHub Enterprise Server の場合、以下も必要です。
+ HTTPS 経由でアクセス可能な GitHub Enterprise Server インスタンス (バージョン 3.x 以降)
+ GitHub Enterprise Server インスタンスの HTTPS URL (例: `https://github.example.com`)
+ (オプション) GitHub Enterprise Server インスタンスがパブリックにアクセスできない場合のプライベート接続

## GitHub の登録 (アカウントレベル)
<a name="registering-github-account-level"></a>

GitHub は AWS アカウントレベルで登録され、そのアカウントのすべてのエージェントスペース間で共有されます。 AWS アカウントごとに 1 回だけ GitHub を登録する必要があります。

### ステップ 1: パイプラインプロバイダーに移動する
<a name="step-1-navigate-to-pipeline-providers"></a>

1.  AWS マネジメントコンソールにサインインする

1.  AWS DevOps エージェントコンソールに移動する

1. **機能**タブに移動する

1. **パイプライン**セクションで、**追加** をクリックします。

1. 利用可能なプロバイダーのリストから **GitHub** を選択する

GitHub がまだ登録されていない場合は、最初に登録するように求められます。

### ステップ 2: 接続タイプを選択する
<a name="step-2-choose-connection-type"></a>

GitHub アカウント/組織を登録する」画面で、ユーザーまたは組織として接続するかどうかを選択します。
+ **ユーザー** – ユーザーネームとプロファイルを持つ個人 GitHub アカウント
+ **組織** – 複数のユーザーが一度に複数のプロジェクトでコラボレーションできる共有 GitHub アカウント

GitHub Enterprise Server インスタンスに接続する場合は、**GitHub Enterprise Server の使用**チェックボックスをオンにし、インスタンスの HTTPS URL (例: ) を入力します`https://github.example.com`。

GitHub Enterprise Server インスタンスがパブリックにアクセスできない場合は、オプションでプライベート接続を設定して、 AWS DevOps Agent がインスタンスに安全に到達できるようにします。詳細については、「[プライベートにホストされたツールへの接続](configuring-capabilities-for-aws-devops-agent-connecting-to-privately-hosted-tools.md)」を参照してください。

**注記**  
** URL に `/api/v3`または末尾のパスを含めないでください。基本 URL のみを入力します。

### ステップ 3: GitHub アプリを設定する
<a name="step-3-set-up-the-github-app"></a>

**送信**をクリックして、アプリのセットアッププロセスを開始します。次のステップは、GitHub.com と GitHub Enterprise Server のどちらに接続するかによって異なります。

#### GitHub.com の場合
<a name="for-githubcom"></a>

1. GitHub にリダイレクトされ、 AWS DevOps Agent GitHub アプリがインストールされます。

1. アプリをインストールするアカウントまたは組織を選択します。

1. アプリを使用すると、 AWS DevOps Agent は、デプロイイベントなど、接続されたリポジトリからイベントを受信できます。

#### GitHub Enterprise Server の場合
<a name="for-github-enterprise-server"></a>

GitHub Enterprise Server は GitHub App Manifest フローを使用します。これにより、インスタンスに新しい GitHub App が自動的に設定されます。これには、GitHub Enterprise Server インスタンスへの 2 つのリダイレクトが含まれます。

1. ブラウザが GitHub Enterprise Server インスタンスのGitHub アプリの作成」ページにリダイレクトされます。

1. アプリ名が事前に入力されています。必要に応じて名前を自由に変更できます。**GitHub アプリの作成**をクリックします。

1.  AWS DevOps エージェントにリダイレクトされ、マニフェストコードをアプリケーションの認証情報と交換します。

### ステップ 4: リポジトリを選択してインストールを完了する
<a name="step-4-select-repositories-and-complete-installation"></a>

1. GitHub アプリ**のインストールと認可**ページが表示されます。

1. アプリがアクセスできるようにするリポジトリを選択します。
   + **すべてのリポジトリ** – 現在および将来のすべてのリポジトリへのアクセスを許可します。
   + **リポジトリのみを選択する** – アカウントまたは組織から特定のリポジトリを選択する

1. **Install & Authorize** をクリックします。

1.  AWS DevOps エージェントコンソールにリダイレクトされ、GitHub がアカウントレベルで登録済みとして表示されます。

## エージェントスペースへのリポジトリの接続
<a name="connecting-repositories-to-an-agent-space"></a>

アカウントレベルで GitHub を登録したら、特定のリポジトリを個々のエージェントスペースに接続できます。

1.  AWS DevOps エージェントコンソールで、エージェントスペースを選択します。

1. **機能**タブに移動する

1. **パイプライン**セクションで、**追加** をクリックします。

1. 利用可能なプロバイダーのリストから **GitHub** を選択する

1. このエージェントスペースに関連するリポジトリのサブセットを選択する

1. **追加**をクリックして接続を完了します

組織のニーズに応じて、異なるリポジトリのセットを異なるエージェントスペースに接続できます。

## GitHub アプリについて
<a name="understanding-the-github-app"></a>

 AWS DevOps エージェント GitHub アプリ:
+ リポジトリへのアクセスをリクエストする — GitHub アプリのインストール中に特定のアクセス許可を確認できます
+ デプロイイベントおよびその他のリポジトリイベントを受信します
+  AWS DevOps エージェントによるコード変更と運用インシデントの関連付けを許可する
+ GitHub 設定を使用していつでもアンインストールできます

GitHub Enterprise Server の場合、GitHub アプリは登録時にインスタンスに自動的に作成されます。アプリのリポジトリアクセスを管理したり、**設定 > アプリケーション > インストールされた GitHub Apps** を使用してアンインストールしたりできます。アプリ定義を完全に削除するには、**設定 > デベロッパー設定 > GitHub Apps** に移動します。

## GitHub アプリのアクセス許可の更新
<a name="github-app-permission-updates"></a>

AWS DevOps Agent は、新機能をサポートするために GitHub アプリをインストールした後にアクセス許可の更新をリクエストすることがあります。この場合:

1. アクセス許可の更新リクエストに関する通知が GitHub から届きます。

1. 更新の詳細を確認して、リクエストされている新しいアクセス許可を理解します。

1. リクエストを受け入れて、更新されたアクセス許可を付与します。

サービスやアプリケーションに変更を加える必要はありません。更新されたアクセス許可を受け入れると、 AWS DevOps Agent が GitHub にリクエストする次のインストールアクセストークンに、新しいアクセス許可が自動的に含まれます。

**注記**  
** アクセス許可の更新を受け入れるまで、 AWS DevOps Agent は以前に付与されたアクセス許可で引き続き動作します。更新されたアクセス許可に依存する新機能は、リクエストを承認するまで使用できません。

## GitHub 接続の管理
<a name="managing-github-connections"></a>
+ **リポジトリアクセスの更新** – GitHub アプリがアクセスできるリポジトリを変更するには、GitHub アカウントまたは組織設定 (または GitHub Enterprise Server インスタンス設定) に移動し、インストールされている GitHub アプリに移動して、 AWS DevOps Agent アプリ設定を変更します。
+ **接続されたリポジトリの表示** – AWS DevOps エージェントコンソールで、エージェントスペースを選択し、機能タブに移動して、パイプラインセクションの接続されたリポジトリを表示します。
+ **GitHub 接続の削除** – GitHub をエージェントスペースから切断するには、パイプラインセクションで接続を選択し、**削除**をクリックします。GitHub アプリを完全にアンインストールするには、GitHub アカウントまたは組織設定からアンインストールします。GitHub Enterprise Server の場合、GitHub アプリは登録時にインスタンスに直接作成されるため、オプションで以下の両方を実行してアプリ全体をクリーンアップできます。
  + **アプリをアンインストール**する – **設定 > アプリケーション > インストールされた GitHub Apps** に移動し、アプリで**設定**をクリックしてアンインストールします。
  + **アプリの削除** – **設定 > デベロッパー設定 > GitHub **アプリに移動し、アプリを選択し、**詳細**タブに移動し、**GitHub アプリの削除**を選択します。**警告:** GitHub アプリの削除は永続的であり、元に戻すことはできません。削除した場合は、 AWS DevOps エージェントコンソールの最初から GitHub Enterprise Server を再登録して、新しいアプリケーションを作成する必要があります。