自己ホスト型 GitHub アプリの作成方法
Bencher Cloud を使用している場合、単に サインアップ または ログインして、
GitHub ボタンを使用することができます。
Bencher Self-Hostedを利用するには、ベンチャー プラス エンタープライズ プランを持ち、ご自身のGitHubアプリを作成し、コンソール設定とAPIサーバー設定を更新する必要があります。
GitHub アプリの作成
- GitHub アプリを作成します
- GitHub アプリ名
- ユニークな名前を選びます (例:
My Enterprise のための Bencher)
- ユニークな名前を選びます (例:
- ホームページのURL
- これをBencher 自己ホスト型コンソールの URLに設定します (例:
https://bencher.example.com)
- これをBencher 自己ホスト型コンソールの URLに設定します (例:
- ユーザの識別と認証
- コールバック URL
- このコールバック URL を Bencher 自己ホスト型コンソールの URL に設定し、パスは
/auth/githubにします (例:https://bencher.example.com/auth/github)
- このコールバック URL を Bencher 自己ホスト型コンソールの URL に設定し、パスは
- ✅ユーザー承認トークンの期限切れ
- ✅インストール時にユーザー認証(OAuth)をリクエスト
- ✅デバイスフローを有効化
- コールバック URL
- Webhook
- ❌アクティブ - このボックスのチェックを外します
- 権限設定
- アカウント権限
- Eメールアドレス:
読み取り専用
- Eメールアドレス:
- アカウント権限
- この GitHub アプリはどこにインストールできますか?
- 🔘任意のアカウント
Create GitHub Appをクリックします- これで新たに作成したアプリの
Generalの下に Client IDを注意しておきます (例:Iv1.12864abcd1232048)- クライアントの秘密鍵
Generate a new client secretをクリックします- この⽂字列をメモしておきます (例:
00000abcd12345wxyz123456789abcdefgh0000)
- 表示情報の下にBencher の logo PNG を追加します
- プライベートキー
Generate a private keyをクリックします
GitHub アプリの設定
コンソール UI
bencher-console Docker イメージを実行するときに、環境変数 GITHUB_CLIENT_ID を設定します (例:GITHUB_CLIENT_ID=Iv1.12864abcd1232048)。クライアント ID が存在しない場合、UI では GitHub ボタンが表示されません。
API サーバー
サーバー設定の plus.github セクション に client_id と client_secret を追加します。GitHub セクションが存在しない場合、サーバーは GitHub の認証リクエストすべてに対して失敗します。
リンクされたリポジトリ
これらの設定を変更する前に、Bencher 自己ホスト型 API サーバーとコンソールを v0.6.16 以降にアップグレードします。
プロジェクトがデタッチした実行のためにGitHubリポジトリをリンクできるようにするには、GitHub アプリに次の設定も行います。
- ユーザの識別と認証
- コールバック URL
- 最初のコールバック URL を Bencher 自己ホスト型コンソールの URL に設定し、パスは
/console/githubにします (例:https://bencher.example.com/console/github)。 GitHub は、アプリをインストールしたユーザーを最初のコールバック URL に送ります。 - その後ろに、サインイン用のパス
/auth/githubのコールバック URL を残します (例:https://bencher.example.com/auth/github)。 GitHub は、コールバック URL が一覧にないサインインを拒否します。
- 最初のコールバック URL を Bencher 自己ホスト型コンソールの URL に設定し、パスは
- ✅インストール時にユーザー認証(OAuth)をリクエスト
- コールバック URL
- Webhook
- ✅アクティブ - このボックスにチェックを入れます
- Webhook URL
- Bencher 自己ホスト型 API サーバーの URL に設定し、パスは
/v0/github/webhookにします (例:https://api.bencher.example.com/v0/github/webhook)
- Bencher 自己ホスト型 API サーバーの URL に設定し、パスは
- Webhook シークレット
- ランダムなシークレットを入力し、メモしておきます (例:
0123456789abcdef0123456789abcdef)
- ランダムなシークレットを入力し、メモしておきます (例:
- 権限設定
- リポジトリの権限
- コンテンツ:
読み取りと書き込み
- コンテンツ:
- イベントのサブスクライブ
- すべてのイベントのチェックを外したままにします
- リポジトリの権限
- アプリのスラッグ(公開ページの URL の最後の部分)をメモしておきます (例:
https://github.com/apps/my-bencher-appのmy-bencher-app)
スラッグ、プライベートキー、Webhook シークレットを、サーバー設定の plus.github セクション に app として追加します。
🐰 おめでとうございます! GitHub アプリの設定方法を学びました! 🎉