Orbitのインデックス作成対象
- プラン: Premium、Ultimate
- 提供形態: GitLab.com
- ステータス: ベータ
この機能の利用可否は機能フラグによって制御されています。 詳細については、履歴を参照してください。 この機能はテスト目的で利用可能ですが、本番環境での使用には対応していません。
スコープ
Orbitはトップレベルグループのみをインデックス作成します。トップレベルグループでOrbitを有効にすると、そのサブグループとプロジェクトがすべて自動的にインデックス作成されます。サブグループや個別のプロジェクトでOrbitを有効にすることはできません。
SDLCデータ
Orbitは以下のGitLabオブジェクトとその関係をインデックス作成します。
| ドメイン | インデックス作成されるオブジェクト |
|---|---|
| コア | グループ、プロジェクト、ユーザー、ノート(コメント) |
| コードレビュー | マージリクエスト、マージリクエストの差分、変更ファイル |
| CI/CD | パイプライン、ステージ、ジョブ |
| プランニング | 作業アイテム(イシュー、エピック、タスク、インシデント)、マイルストーン、ラベル |
| セキュリティ | 脆弱性、セキュリティ検出結果、セキュリティスキャン、スキャナー、CVE/CWE識別子 |
SDLCデータは変更データキャプチャによって継続的に更新されます。GitLabインスタンスでの変更は数分以内にOrbitに反映されます。
ソースコード
Orbitはリポジトリからソースコードをインデックス作成し、その上にコードグラフを構築します。
インデックス作成される内容:
- ファイルおよびディレクトリ
- 関数、クラス、モジュールの定義(開始・終了行とソースコード全体を含む)
- ファイル間のインポートおよびクロスファイル参照の関係
コードはデフォルトブランチのみからインデックス作成されます。デフォルトブランチが変更されると、Orbitは自動的に再インデックス作成を行います。
サポートされている言語
| 言語 | 定義 | クロスファイル参照 |
|---|---|---|
| Ruby | あり | あり |
| Java | あり | あり |
| Kotlin | あり | あり |
| Python | あり | あり |
| TypeScript | あり | あり |
| JavaScript | あり | あり |
| Rust | あり | あり |
| Go | あり | あり |
| C# | あり | あり |
| C | あり | あり |
| C++ | あり | あり |
| PHP | あり | あり |
| Bash/Shell | あり | なし |
現在インデックス作成されていない言語: Swift、COBOL、Terraform、YAML。
インデックス作成されないもの
- デフォルトブランチ以外のブランチ
- バイナリファイル
- アーカイブ済みプロジェクト内のファイル(アーカイブ済みプロジェクトのSDLCメタデータは引き続きインデックス作成されます)
- リクエストユーザーがアクセス権を持たないプライベートコンテンツ(認可はクエリ時に適用されます)
認可
Orbitはクエリ時にGitLabのアクセス制御を適用します。クエリはGitLabでリクエストユーザーがアクセスできるエンティティのみを返します。Orbit独自の権限モデルはありません。
Orbitを有効にしたグループのオーナーは、他のユーザーにGitLabで既に持っている以上のアクセス権を付与することはありません。