このページには SourceGraph で GitLab のプライベートプロジェクトへの接続設定について書いてあります。
この設定は SourceGraph 3.38.0 で確認しています。 また、SourceGraph のインスタンスは立ち上がっており、SourceGraph の Site Admin であることを前提として進めます。
主な設定内容は次の2つです。
- GitLab のアクセストークンを取得
- SourceGraph で GitLab を設定
GitLab のアクセストークンを取得 #
SourceGraph が GitLab のプライベートプロジェクトにアクセスするためには、アクセストークンが必要です。 取得するトークンは、 project access token でもよいですし、個人的に SourceGraph を使用している場合には personal access token でもよいです。
なお、GitLab.com では project access token は使いないことに注意が必要です。
アクセストークンを作成する際、scope は “api” にしておけば、基本的に SourceGraph を使う分には十分です。scope についての詳細な理由が必要な scope は こちらに記載されています。
SourceGraph で GitLab を設定 #
ここからの作業は公式のドキュメントの こちらのページに記載されています。
Site Admin のサイトを開き、Manage code hosts ⇒ GitLab (GitLab Self-Managed) を選択します
接続設定を編集します
- デフォルトでは
"projectQuery": ["projects?membership=true&archived=no"]
となっておりますが、これはトークンのユーザー(あるいはプロジェクト)がメンバーとなっているすべてのリポジトリーを SourceGraph が読み込みます - 単一プロジェクトだけを追加する場合には次のように設定します
{ "url": "https://gitlab.com", "token": "<access token>", "projectQuery": ["none"], "projects": [ {"name": "<group>/<name>"}, {"name": "<group>/<name>"}, ] }
- デフォルトでは
“Add repositories” を押す
以上で設定完了です。正しく設定されていれば Repository status の画面から設定したレポジトリーが見えるはずです。