GLQL 데이터 소스
GitLab v19.2GLQL은 다음 데이터 소스를 쿼리할 수 있습니다: 각 데이터 소스는 필터링, 표시, 정렬에 사용할 수 있는 고유한 지원 필드를 가지고 있습니다. 쿼리에서 type 필드를 사용하여 데이터 소스를 지정합니다. 각 데이터 소스는 데이터를 쿼리할 위치를 정의하는 범위(scope)가 필요합니다.
GLQL은 다음 데이터 소스를 쿼리할 수 있습니다:
| 데이터 소스 | 표준 모드 | 분석 모드 | type 값 | 설명 |
|---|---|---|---|---|
| Work items | check-sm | No | Issue, Incident, TestCase, Requirement, Task, Ticket, Objective, KeyResult, Epic | 이슈, 에픽, 기타 work item 유형. type을 생략하면 기본값으로 사용됩니다. |
| Merge requests | check-sm | No | MergeRequest | 코드 리뷰 및 머지 워크플로. |
| Pipelines | check-sm | check-sm | Pipeline | CI/CD 파이프라인. |
| Jobs | check-sm | No | Job | 파이프라인 내 CI/CD job. |
| Projects | check-sm | No | Project | 네임스페이스 내 프로젝트. |
| Code suggestions | No | check-sm | CodeSuggestion | GitLab Duo Code Suggestions 집계 분석. |
각 데이터 소스는 필터링, 표시, 정렬에 사용할 수 있는 고유한 지원 필드를 가지고 있습니다.
쿼리에서 type 필드를 사용하여 데이터 소스를 지정합니다.
예를 들어, type = Issue 또는 type = MergeRequest와 같이 사용합니다.
여러 type을 지원하는 데이터 소스의 경우 in 연산자를 사용하여 여러 type에 걸쳐 쿼리할 수 있습니다.
예를 들어, type in (Issue, Task)와 같이 사용합니다.
범위#
각 데이터 소스는 데이터를 쿼리할 위치를 정의하는 범위(scope)가 필요합니다. 허용되는 범위는 데이터 소스마다 다르며, 각 데이터 소스 페이지에 문서화되어 있습니다.
쿼리에서 범위를 정의합니다. 예를 들어:
query: type = issue and project = "gitlab-org/gitlab"
범위를 지정하지 않으면 GLQL은 쿼리가 삽입된 위치를 기반으로 범위를 추론합니다:
-
프로젝트 컨텍스트(예: 이슈 또는 머지 리퀘스트 설명)에서는 현재 프로젝트를 사용합니다.
-
그룹 컨텍스트(예: 에픽 설명)에서는 현재 그룹을 사용합니다.