概要
本記事が投稿されている頃、レコチョクでは、GitHub Enterprise Server(以後GHES)からGitHub Enterprise Cloud(以後GHEC)への移行が順次行われています。 これに伴って、SSOでの認証が必要となりました。
AWS CodeBuildを用いたビルドを行なっていた場合、ソースの取得元をGHEC上のリポジトリへ変更する必要が出てきた訳ですが、それ以上に必要な事柄があり苦労しました。 本記事ではその内容を説明していきます。
前提
GHES上のソースをAWS CodeBuildによってビルドしたことのある方向けに書きます。 経験のない方はAWS公式や任意の記事をご覧になってください。
アクセストークンについてOrganizationからの承認を受ける
CodeBuildにGitHubよりソースを取得させる場合、アクセストークンを発行します。 GHESの場合とは異なり、アクセストークン発行後に、アクセス先のOrganizationからの認証を受ける必要があります(くわしくはこちら)。
トークン発行後の画面やトークンの一覧画面から
Configure SSOが行えるので、クリックし、
目当てのソースが格納されているOrganizationを選択します。

ソースの取得元の設定
CodeBuildのビルドプロジェクトの設定を変更することで、ソースの取得先を指定することが可能です。 GHESの場合とは異なり、下記のように設定を行う必要があります。
- ソースプロバイダ → GitHubを選択
- GitHub Enterpriseではない
- リポジトリ → GitHubアカウントのリポジトリを選択
- GitHubリポジトリ → 表示される一覧から選択
- ここでリポジトリの一覧が表示されない場合は、アクセストークンの発行が正しく行えていない可能性あり

小河大輝